--- title: "Tolerance - Проставить обозначение допуска формы" type: guide api: [api7] tags: [guide, api7, tolerance] sources: - tolerance.html --- *API экспортных функций > Функции работы с графическим документом  > Размеры и технологические обозначения  > Функции построения размеров /обозначений * ## Tolerance - Проставить обозначение допуска формы Пример... Аналог данной функции при использовании Automation - метод ksDocument2D::ksTolerance. Синтаксис: ``` int Tolerance (ToleranceParam *par); Выходной параметр: par - указатель на структуру параметров обозначения допуска формы ToleranceParam. Возвращаемое значение: указатель на допуск формы - в случае удачного завершения, 0 - в случае неудачи. ``` Примечание: 1. Допуск формы является составным объектом, состоящим из таблицы (в общем случае 10х10) и двух опор. Каждая ячейка таблицы имеет свой номер. Нумерация идет слева направо и сверху вниз. 2. Номер ячейки задается функцией ColumnNumber, а текст ячейки определяется функцией TextLine (первые два параметра - SPECIAL_SYMBOL и SPECIAL); ## Tolerance - пример использования void Tolerance_Example (void) { ToleranceParam par; memset(&par, 0, sizeof(ToleranceParam)); MathPointParam parPoint; reference p; par.branch1.pMathPoint = CreateArray(POINT_ARR, 0); parPoint.x = 40; parPoint.y = 10; AddArrayItem(par.branch1.pMathPoint, -1, &parPoint , sizeof(parPoint)); par.branch1.arrowType = 2; par.branch1.tCorner = 1; par.branch2.pMathPoint = CreateArray(POINT_ARR, 0); parPoint.x = 100; parPoint.y = 50; AddArrayItem(par.branch2.pMathPoint, -1, &parPoint , sizeof(parPoint)); parPoint.x = 100; parPoint.y = 10; AddArrayItem(par.branch2.pMathPoint, -1, &parPoint , sizeof(parPoint)); par.branch2.arrowType = 1; par.branch2.tCorner = 5; par.x = 40 ; par.y = 40; par.type = 0; if (Tolerance(&par)) { ColumnNumber(1); int tip = 26; //значек допуск соосности TextLine (SPECIAL_SYMBOL ,SPECIAL, &tip ,); ColumnNumber(2); tip = 2; //значек диаметр TextLine (SPECIAL_SYMBOL ,SPECIAL, &tip ,); TextLine (NEW_LINE ,0,0 ,0,004); tip=30; //зависимый допуск TextLine (SPECIAL_SYMBOL ,SPECIAL, &tip ,); ColumnNumber(3); TextLine (NEW_LINE ,0,0 ,A); p = EndObj(); } DeleteArray(par.branch2.pMathPoint); DeleteArray(par.branch1.pMathPoint); }; /* Tolerance_Example */