diff --git a/Common/CONVERTLIBINTERFACES.dll b/Common/CONVERTLIBINTERFACES.dll
new file mode 100644
index 0000000..8a4686b
Binary files /dev/null and b/Common/CONVERTLIBINTERFACES.dll differ
diff --git a/Common/KAPITypes.dll b/Common/KAPITypes.dll
new file mode 100644
index 0000000..d242e6d
Binary files /dev/null and b/Common/KAPITypes.dll differ
diff --git a/Common/KAPITypes/KAPITypes.csproj b/Common/KAPITypes/KAPITypes.csproj
new file mode 100644
index 0000000..a15ed13
--- /dev/null
+++ b/Common/KAPITypes/KAPITypes.csproj
@@ -0,0 +1,130 @@
+п»ї
+
+
+ Local
+ 8.0.50727
+ 2.0
+ {3B02F815-F2E7-45A2-B828-8AA4DA54D54F}
+ Debug
+ AnyCPU
+
+
+
+
+ KAPITypes
+
+
+ JScript
+ Grid
+ IE50
+ false
+ Library
+ KAPITypes
+ OnBuildSuccess
+
+
+
+
+
+
+ v4.8
+ 2.0
+
+
+
+
+ ..\
+ false
+ 285212672
+ false
+
+
+ DEBUG;TRACE
+
+
+ true
+ 4096
+ false
+
+
+ false
+ false
+ false
+ false
+ 4
+ full
+ prompt
+ AnyCPU
+ false
+
+
+ bin\Release\
+ false
+ 285212672
+ false
+
+
+ TRACE
+
+
+ false
+ 4096
+ false
+
+
+ true
+ false
+ false
+ false
+ 4
+ none
+ prompt
+ false
+
+
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE
+ 285212672
+ 4096
+ full
+ x64
+ prompt
+ MinimumRecommendedRules.ruleset
+ false
+
+
+ bin\x64\Release\
+ TRACE
+ 285212672
+ true
+ 4096
+ x64
+ prompt
+ MinimumRecommendedRules.ruleset
+ false
+
+
+
+ System
+
+
+ System.Data
+
+
+ System.XML
+
+
+
+
+ Code
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Common/KAPITypes/ldefin2d.cs b/Common/KAPITypes/ldefin2d.cs
new file mode 100644
index 0000000..f7cdb67
--- /dev/null
+++ b/Common/KAPITypes/ldefin2d.cs
@@ -0,0 +1,868 @@
+using System;
+
+namespace KAPITypes
+{
+
+ ///
+ /// типы документов
+ ///
+ public enum DocType
+ {
+ ///
+ /// 0- нет активного документа
+ ///
+ lt_DocUnknown = 0,
+ ///
+ /// 1- чертеж стандартный
+ ///
+ lt_DocSheetStandart = 1,
+ ///
+ /// 2- чертеж нестандартный
+ ///
+ lt_DocSheetUser,
+ ///
+ /// 3- фрагмент
+ ///
+ lt_DocFragment,
+ ///
+ /// 4- спецификация
+ ///
+ lt_DocSpc,
+ ///
+ /// 5- 3d-документ модель
+ ///
+ lt_DocPart3D,
+ ///
+ /// 6- 3d-документ сборка
+ ///
+ lt_DocAssemble3D,
+ ///
+ /// 7- текстовый документ стандартный
+ ///
+ lt_DocTxtStandart,
+ ///
+ /// 8- текстовый документ нестандартный
+ ///
+ lt_DocTxtUser,
+ ///
+ /// 9- спецификация нестандартный формат
+ ///
+ lt_DocSpcUser,
+ ///
+ /// 10- 3d-документ технологическая сборка
+ ///
+ lt_DocTechnologyAssemble3D,
+ }
+
+
+ ///
+ /// система квалитета
+ ///
+ public enum LtQualSystem
+ {
+ ///
+ /// 1 - вала
+ ///
+ lt_qsShaft = 1,
+ ///
+ /// 2 - отверстия
+ ///
+ lt_qsHole = 2,
+ }
+
+
+ ///
+ /// квалитеты
+ ///
+ public enum LtQualDir
+ {
+ ///
+ /// 1 - предпочтительные
+ ///
+ lt_qdPreferable = 1,
+ ///
+ /// 2 - основные
+ ///
+ lt_qdBasic,
+ ///
+ /// 3 - дополнительные
+ ///
+ lt_qdAdditional,
+ }
+
+
+ ///
+ /// типы данных для LtVariant
+ ///
+ public enum LtVariantType
+ {
+ ///
+ /// 1 - символ
+ ///
+ ltv_Char = 1,
+ ///
+ /// 2 - байт
+ ///
+ ltv_UChar,
+ ///
+ /// 3 - целое
+ ///
+ ltv_Int,
+ ///
+ /// 4 - беззнаковое целое
+ ///
+ ltv_UInt,
+ ///
+ /// 5 - длинное целое
+ ///
+ ltv_Long,
+ ///
+ /// 6 - вешественное
+ ///
+ ltv_Float,
+ ///
+ /// 7 - двойное вешественное
+ ///
+ ltv_Double,
+ ///
+ /// 8 - строка 255 символов
+ ///
+ ltv_Str,
+ ///
+ /// 9 - пока не используется
+ ///
+ ltv_NoUsed,
+ ///
+ /// 10 - короткое целое
+ ///
+ ltv_Short,
+ ///
+ /// 11 - строка 255 символов Unicode
+ ///
+ ltv_WStr,
+ }
+
+
+ ///
+ /// типы точек привязки текста
+ ///
+ public enum TextAlign
+ {
+ ///
+ /// точка привязки слева
+ ///
+ txta_Left = 0,
+ ///
+ /// точка привязки вцентре
+ ///
+ txta_Center,
+ ///
+ /// точка привязки справа
+ ///
+ txta_Right
+ }
+
+
+
+ ///
+ /// перечисление возможных типов узла дерева библиотеки документов
+ ///
+ public enum LtNodeType
+ {
+ ///
+ /// корень дерева
+ ///
+ tn_root,
+ ///
+ /// папка (директория)
+ ///
+ tn_dir,
+ ///
+ /// документ (файл)
+ ///
+ tn_file
+ }
+
+
+
+ ///
+ /// типы значка объекта "Выносной элемент"
+ ///
+ public enum LtRemoteElmSignType
+ {
+ ///
+ /// 0 - окружность
+ ///
+ re_Circle,
+ ///
+ /// 1 - прямоугольник
+ ///
+ re_Rectangle,
+ ///
+ /// 2 - скругленный прямоугольник
+ ///
+ re_Ballon
+ }
+
+
+ ///
+ /// Тип изменения порядка объектов
+ ///
+ public enum ChangeOrderType
+ {
+ ///
+ /// Выше всех
+ ///
+ co_Top = 1,
+ ///
+ /// Ниже всех
+ ///
+ co_Bottom,
+ ///
+ /// Перед объектом
+ ///
+ co_BeforeObject,
+ ///
+ /// За объектом
+ ///
+ co_AfterObject,
+ ///
+ /// На уровень вперед
+ ///
+ co_UpLevel,
+ ///
+ /// На уровень назад
+ ///
+ co_DownLevel,
+ ///
+ /// Перед объектом (расположить объекты группы в порядке их добавления в группу)
+ ///
+ co_BeforeObjectByGroupOrder,
+ ///
+ /// За объектом (расположить объекты группы в порядке их добавления в группу)
+ ///
+ co_AfterObjectByGroupOrder
+
+ }
+
+
+ public class ldefin2d
+ {
+ public const int TEXT_LENGTH = 128;
+ public const int MAX_TEXT_LENGTH = 255;
+
+ public const int ODBC_DB = 0;
+ public const int TXT_DB = 1;
+
+ public const int TXT_CHAR = 1;
+ public const int TXT_USHORT = 2;
+ public const int TXT_SSHORT = 3;
+ public const int TXT_SLONG = 4;
+ public const int TXT_ULONG = 5;
+ public const int TXT_LONG = 6;
+ public const int TXT_FLOAT = 7;
+ public const int TXT_DOUBLE = 8;
+ public const int TXT_INT = 9;
+ public const int TXT_ALL = 0;
+// public const string TXT_INDEX "Index1000"
+
+ public const int stACTIVE = 0; //состояние для вида, слоя, документа
+ public const int stREADONLY = 1; //состояние для вида, слоя
+ public const int stINVISIBLE = 2; //состояние для вида, слоя
+ public const int stCURRENT = 3; //состояние для вида, слоя
+ public const int stPASSIVE = 1; //состояние для документа
+
+ // Определения для функции ksSystemPath
+ public const int sptSYSTEM_FILES = 0; // Выдать путь на каталог системных файлов
+ public const int sptLIBS_FILES = 1; // Выдать путь на каталог файлов библиотек
+ public const int sptAPPS_FILES = 1; // Выдать путь на каталог файлов приложений
+ public const int sptTEMP_FILES = 2; // Выдать путь на каталог сохранения временных файлов
+ public const int sptCONFIG_FILES = 3; // Выдать путь на каталог сохранения конфигурации системы
+ public const int sptINI_FILE = 4; // Выдать полное имя INI-файла системы
+ public const int sptBIN_FILE = 5; // Выдать путь на каталог исполняемых файлов системы
+ public const int sptPROJECT_FILES = 6; // Выдать путь на каталог сохранения kompas.prj
+ public const int sptDESKTOP_FILES = 7; // Выдать путь на каталог сохранения kompas.dsk
+ public const int sptTEMPLATES_FILES = 8; // Выдать путь на каталог шаблонов Компас-документов
+ public const int sptPROFILES_FILES = 9; // Выдать путь на каталог сохранения профилей пользователя
+ public const int sptWORK_FILES = 10; // Выдать путь на каталог "Мои документы"
+ public const int sptSHEETMETAL_FILES = 11; // Выдать путь на каталог таблиц сгибов
+ public const int sptPARTLIB_FILES = 12; // Выдать путь на каталог PartLib
+ public const int sptMULTILINE_FILES = 13; // Выдать путь к каталогу шаблонов мультилинии
+ public const int sptPRINTDEVICE_FILES = 14; // Выдать путь к каталогу конфигураций плоттеров/принтеров
+ public const int sptCURR_WORK_FILES = 15; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptCURR_LIBS_FILES = 16; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptCURR_APPS_FILES = 16; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptCURR_SYSTEM_FILES = 17; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptCURR_PROFILES_FILES = 18; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptCURR_SHEETMETAL_FILES = 19; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptMULTY_APPS_FILES = 20; // Выдать список каталогов файлов приложений
+ public const int sptDOC_LIBS_FILES = 21; // Выдать путь на каталог файлов библиотек документов
+ public const int sptMULTY_DOC_LIBS_FILES = 22; // Выдать список каталогов файлов библиотек документов
+ public const int sptCUR_DOC_LIBS_FILES = 23; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptUTILS_FILES = 24; // Выдать путь на каталог утилит
+ public const int sptMULTY_UTILS_FILES = 25; // Выдать список каталогов утилит
+ public const int sptCURR_UTILS_FILES = 26; // запоминание последних директориев, с которых выполнилось открытие/сохранение файла в диалоге Open|Save
+ public const int sptPROGRAMDATA_FILES = 27; // Выдать путь на каталог данных приложения ( C:\ProgramData\ASCON\KOMPAS-3D\18 )
+
+
+ // Определения для результата функции SystemControlStart
+ public const int scsSTOPPED_FOR_MENU_COMMAND = ( 1); // Выполнена команда меню "Остановить работу библиотеки"
+ public const int scsSTOPPED_FOR_SYSTEM_STOP = ( 0); // Идет закрытие задачи
+ public const int scsSTOPPED_FOR_ITSELF = (-1); // Вызов функции SystemControlStop из-под библиотеки
+ public const int scsSTOPPED_FOR_START_THIS_LIB = (-2); // Принудительный останов при запуске той же библиотеки
+ public const int scsSTOPPED_FOR_START_ANOTHER_LIB = (-3); // Принудительный останов при запуске другой библиотеки
+
+ // Определения для функций GetObjParam и SetObjParam
+ // '+' отмечены объекты, для которых реализованы GetObjParam и SetObjParam
+ public const int ALLPARAM = -1; // все параметры объекта в СК объекта владельца
+ public const int SHEET_ALLPARAM = -2; // тоже что и ALLPARAM но параметры объекта в СК листа
+ public const int NURBS_CLAMPED_ALLPARAM = -5; // параметры нурбса, преобразовать узловой вектор в зажатый
+ public const int NURBS_CLAMPED_SHEET_ALLPARAM= -6; // параметры нурбса в СК листа, преобразовать узловой вектор в зажатый
+ public const int VIEW_ALLPARAM = -7; // все параметры объекта в СК вида
+
+ public const int ANGLE_ARC_PARAM = 0; // параметры дуги по углам ( для дуги и эллиптической дуги ) в СК объекта владельца
+ public const int POINT_ARC_PARAM = 1; // параметры дуги по точкам ( для дуги и эллиптической дуги ) в СК объекта владельца
+ public const int ANGLE_ARC_SHEET_PARAM = 2; // параметры дуги по углам ( для дуги и эллиптической дуги ) в СК листа
+ public const int POINT_ARC_SHEET_PARAM = 3; // параметры дуги по точкам ( для дуги и эллиптической дуги ) в СК листа
+ public const int ANGLE_ARC_VIEW_PARAM = 4; // параметры дуги по углам ( для дуги и эллиптической дуги ) в СК вида
+ public const int POINT_ARC_VIEW_PARAM = 5; // параметры дуги по точкам ( для дуги и эллиптической дуги ) в СК вида
+
+ public const int VIEW_LAYER_STATE = 1; // состояние слоя ,вида
+ public const int DOCUMENT_STATE = 1; // состояние документа
+ public const int DOCUMENT_SIZE = 0; // размер листа
+ public const int DIM_TEXT_PARAM = 0; // параметры текста для размеров
+ public const int DIM_SOURSE_PARAM = 1; // параметры привязки размера
+ public const int DIM_DRAW_PARAM = 2; // параметры отрисовки размера
+ public const int DIM_VALUE = 3; // значение размера - double
+ public const int DIM_PARTS = 4; // составляющие части для размеров struct DimensionPartsParam
+ public const int SHEET_DIM_PARTS = 5; // составляющие части для размеров struct DimensionPartsParam в СК листа
+ public const int TECHNICAL_DEMAND_PAR = -1; // параметры технических требований -
+ public const int TT_FIRST_STR = 1000;// начало отсчета для получения или замены текста ТТ по строкам
+ public const int CONIC_PARAM = 2; // параметры для построения конического сечения ( для эллипса и эллтптической дуги )
+ public const int SPC_TUNING_PARAM = 0; // параметры настроек для стиля СП
+ public const int HATCH_PARAM_EX = 0; // параметры штриховки расширенные
+ public const int ASSOCIATION_VIEW_PARAM = 0; // параметры ассоциативного вида
+ public const int DIM_SOURSE_VIEWPARAM = 7; // параметры привязки размера в ситеме координат вида
+ public const int DIM_DRAW_VIEWPARAM = 8; // параметры отрисовки размера в ситеме координат вида
+ public const int DIM_SOURSE_SHEETPARAM = 9; // параметры привязки размера в ситеме координат листа
+ public const int DIM_DRAW_SHEETPARAM = 10; // параметры отрисовки размера в ситеме координат листа
+
+ public const int ALL_OBJ = 0; // все объекты,кроме вспомогательных, которые могут входить в вид -
+ public const int LINESEG_OBJ = 1; // отрезок +
+ public const int CIRCLE_OBJ = 2; // окружность +
+ public const int ARC_OBJ = 3; // дуга +
+ public const int TEXT_OBJ = 4; // текст +
+ public const int POINT_OBJ = 5; // точка +
+ public const int HATCH_OBJ = 7; // штриховка +
+ public const int BEZIER_OBJ = 8; // bezier сплайн +
+ public const int LDIMENSION_OBJ = 9; // линейный размер +
+ public const int ADIMENSION_OBJ = 10; // угловой размер +
+ public const int DDIMENSION_OBJ = 13; // диаметральный размер +
+ public const int RDIMENSION_OBJ = 14; // радиальный размер +
+ public const int RBREAKDIMENSION_OBJ = 15; // радиальный размер с изломом +
+ public const int ROUGH_OBJ = 16; // шероховатость +
+ public const int BASE_OBJ = 17; // база +
+ public const int WPOINTER_OBJ = 18; // стрелка вида +
+ public const int CUT_OBJ = 19; // линия разреза +
+ public const int LEADER_OBJ = 20; // простая линия выноски +
+ public const int POSLEADER_OBJ = 21; // линия выноски для обозначения позиции +
+ public const int BRANDLEADER_OBJ = 22; // линия выноски для обозначения клеймения +
+ public const int MARKERLEADER_OBJ = 23; // линия выноски для обозначения маркирования +
+ public const int TOLERANCE_OBJ = 24; // допуск формы +
+ public const int TABLE_OBJ = 25; // таблица - //тексты
+ public const int CONTOUR_OBJ = 26; // контур + //стиль
+ public const int MACRO_OBJ = 27; // нетипизированный макроэлемент -
+ public const int LINE_OBJ = 28; // линия +
+ public const int LAYER_OBJ = 29; // слой +
+ public const int FRAGMENT_OBJ = 30; // вставной фрагмент +
+ public const int POLYLINE_OBJ = 31; // полилиния +
+ public const int ELLIPSE_OBJ = 32; // эллипс +
+ public const int NURBS_OBJ = 33; // nurbs сплайн +
+ public const int ELLIPSE_ARC_OBJ = 34; // дуга эллипса +
+ public const int RECTANGLE_OBJ = 35; // прямоугольник +
+ public const int REGULARPOLYGON_OBJ = 36; // многоугольник +
+ public const int EQUID_OBJ = 37; // эквидистанта +
+ public const int LBREAKDIMENSION_OBJ = 38; // линейный размер с обрывом +
+ public const int ABREAKDIMENSION_OBJ = 39; // угловой размер с обрывом +
+ public const int ORDINATEDIMENSION_OBJ = 40; // размер высоты
+ public const int COLORFILL_OBJ = 41; // фоновая заливка цветом +
+ public const int CENTREMARKER_OBJ = 42; // обозначение центра +
+ public const int ARCDIMENSION_OBJ = 43; // размер длины дуги
+ public const int SPC_OBJ = 44; // объект спецификации +
+ public const int RASTER_OBJ = 45; // растровый объект +
+ public const int CHANGE_LEADER_OBJ = 46; // Обозначение изменения -
+ public const int REMOTE_ELEMENT_OBJ = 47; // выносной элемент +
+ public const int AXISLINE_OBJ = 48; // Осевая линия +
+ public const int OLEOBJECT_OBJ = 49; // вставка ole объекта -
+ public const int KNOTNUMBER_OBJ = 50; // объект номер узла -
+ public const int BRACE_OBJ = 51; // объект фигурная скобка -
+ public const int POSNUM_OBJ = 52; // марка/позиционное обозначение с линией-выноской -
+ public const int MARKONLDR_OBJ = 53; // марка/позиционное обозначение на линии -
+ public const int MARKWOLDR_OBJ = 54; // марка/позиционное обозначение без линии-выноски -
+ public const int WAVELINE_OBJ = 55; // волнистая линия -
+ public const int DIRAXIS_OBJ = 56; // прямая ось -
+ public const int BROKENLINE_OBJ = 57; // линия обрыва с изломами -
+ public const int CIRCLEAXIS_OBJ = 58; // круговая ось -
+ public const int ARCAXIS_OBJ = 59; // дуговая ось -
+ public const int CUTUNITMARKING = 60; // Обозначение узла в сечении -
+ public const int UNITMARKING = 61; // Обозначение узла -
+ public const int MULTITEXTLEADER = 62; // Выносная надпись к многослойным конструкциям. -
+ public const int EXTERNALVIEW_OBJ = 63; // Вставка внешнего вида -
+ public const int ANNLINESEG_OBJ = 64; // Аннотационный отрезок +- Для GetObjParam используется структура LineSegParam
+ public const int ANNCIRCLE_OBJ = 65; // Аннотационная окружность +- Для GetObjParam используется структура CircleParam
+ public const int ANNELLIPSE_OBJ = 66; // Аннотационный эллипс +- Для GetObjParam используется структура EllipseParam
+ public const int ANNARC_OBJ = 67; // Аннотационная дуга +- Для GetObjParam используется структура ArcParam
+ public const int ANNELLIPSE_ARC_OBJ = 68; // Аннотационная дуга эллипса +- Для GetObjParam используется структура EllipseArcParam
+ public const int ANNPOLYLINE_OBJ = 69; // Аннотационная полилиния +- Для GetObjParam используется структура PolylineParam
+ public const int ANNPOINT_OBJ = 70; // Аннотационная точка +- Для GetObjParam используется структура PointParam
+ public const int ANNTEXT_OBJ = 71; // Текст с аннотационной точкой привязки +- Для GetObjParam используется структура TextParam
+ public const int MULTILINE_OBJ = 72; // Мультилиния -
+ public const int BUILDINGCUTLINE_OBJ = 73; // Линия разреза/сечения для СПДС + используется структура CutLineParam
+ public const int ATTACHED_LEADER_OBJ = 74; // Присоединенная линия выноски ( не имеет текстов ) +
+ public const int CONDITIONCROSSING_OBJ = 75; // Условное пересечение -
+ public const int REPORTTABLE_OBJ = 76; // ассоциативная таблица отчета
+ public const int EMBODIMENTSTABLE_OBJ = 77; // таблица исполнений
+ public const int SPECIALCURVE_OBJ = 78; // Кривая общего вида
+ public const int ARRAYPARAMTABLE_OBJ = 79; // Таблица параметров массива
+ public const int NURBS_BY_POINTS_OBJ = 80; // NURBS-кривая по точкам +- Для GetObjParam используется структура NurbsParam
+ public const int CONIC_CURVE_OBJ = 81; // Коническая кривая +- Для GetObjParam используется структура NurbsParam
+ public const int CONIC_CURVE_4POINT_OBJ = 82; // Коническая кривая по 4 точками и направлению +- Для GetObjParam используется структура NurbsParam
+ public const int CONIC_CURVE_5POINT_OBJ = 83; // Коническая кривая по 5 точками +- Для GetObjParam используется структура NurbsParam
+ public const int CIRCULAR_CENTRES_OBJ = 84; // Круговая сетка центров
+ public const int LINEAR_CENTRES_OBJ = 85; // Линейная сетка центров
+
+ public const int MAX_VIEWTIP_SEARCH = 85; // верхняя граница типов поиска для объектов вида -
+
+ public const int SPECIFICATION_OBJ = 121; // спецификация на листе
+ public const int SPECROUGH_OBJ = 122; // неуказанная шероховатость +
+ public const int VIEW_OBJ = 123; // вид +
+ public const int DOCUMENT_OBJ = 124; // документ графический + (лист или фрагмент)
+ public const int TECHNICALDEMAND_OBJ = 125; // технические требования +
+ public const int STAMP_OBJ = 126; // штамп - //тексты
+ public const int SELECT_GROUP_OBJ = 127; // группа селектирования -
+ public const int NAME_GROUP_OBJ = 128; // именная группа -
+ public const int WORK_GROUP_OBJ = 129; // рабочая группа -
+ public const int SPC_DOCUMENT_OBJ = 130; // документ спецификация +
+ public const int D3_DOCUMENT_OBJ = 131; // 3d документ модели или сборки +
+ public const int CHANGE_LIST_OBJ = 132; // таблица изменений -
+ public const int TXT_DOCUMENT_OBJ = 133; // текстовый документ
+ public const int ALL_DOCUMENTS = 134; // документы всех типов
+
+ public const int MAX_TIP_SEARCH = 134; // верхняя граница типов поиска -
+ public const int ALL_OBJ_SHOW_ORDER = -1000; // все объекты которые могут входить в вид в порядке отрисовки
+
+
+ // Поле тип линии имеет значения( системные стили ) см ksCurveStyleEnum:
+ // 1 - основная,
+ // 2 - тонкая,
+ // 3 - осевая,
+ // 4 - штриховая,
+ // 5 - волнистая линия
+ // 6 - вспомогательная,
+ // 7 - утолщенная,
+ // 8 - штрих-пунктир с 2 точками,
+ // 9 - штриховая толстая
+ // 10 -осевая толстая
+ // 11 -тонкая, включаемая в штриховку
+ // 12 - ISO штриховая линия
+ // 13 - ISO штриховая линия (дл. пробел)
+ // 14 - ISO штрихпунктирная линия (дл. штрих)
+ // 15 - ISO штрихпунктирная линия (дл. штрих 2 пунктира)
+ // 16 - ISO штрихпунктирная линия (дл. штрих 3 пунктира)
+ // 17 - ISO пунктирная линия
+ // 18 - ISO штрихпунктирная линия (дл. и кор. штрихи)
+ // 19 - ISO штрихпунктирная линия (дл. и 2 кор. штриха)
+ // 20 - ISO штрихпунктирная линия
+ // 21 - ISO штрихпунктирная линия (2 штриха)
+ // 22 - ISO штрихпунктирная линия (2 пунктира)
+ // 23 - ISO штрихпунктирная линия (3пунктира)
+ // 24 - ISO штрихпунктирная линия (2 штриха 2 пунктира)
+ // 25 - ISO штрихпунктирная линия (2 штриха 3 пунктира)
+
+ // Поле тип точки для точки( системные стили ) :
+ //0 - точка
+ //1 - крестик
+ //2 - х-точка
+ //3 - квадрат
+ //4 - треугольник
+ //5 - окружность
+ //6 - звезда
+ //7 - перечеркнутый квадрат
+ //8 - утолщенный плюс
+
+ // Поле тип штриховки для штриховки( системные стили ) см ksHatchStyleEnum:
+ // 0 - металл
+ // 1 - неметалл
+ // 2 - дерево
+ // 3 - камень естественный
+ // 4 - керамика
+ // 5 - бетон
+ // 6 - стекло
+ // 7 - жидкость
+ // 8 - естественный грунт
+ // 9 - насыпной грунт
+ // 10 - камень искусственный
+ // 11 - железобетон
+ // 12 - напряженный железобетон
+ // 13 - дерево в продольном сечении
+ // 14 - песок
+
+ // Определения флагов для текста
+ public const int INVARIABLE = 0; //не менять флаги текста
+
+ public const int NUMERATOR = 0x1; //числитель
+ public const int DENOMINATOR = 0x2; //знаменатель
+ public const int END_FRACTION = 0x3; //конец дроби
+ public const int UPPER_DEVIAT = 0x4; //верхнее отклонение
+ public const int LOWER_DEVIAT = 0x5; //нижнее отклонение
+ public const int END_DEVIAT = 0x6; //конец отклонений
+ public const int S_BASE = 0x7; //основание выражения типа суммы
+ public const int S_UPPER_INDEX = 0x8; //верхний индекс выражения типа суммы
+ public const int S_LOWER_INDEX = 0x9; //нижний индекс выражения типа суммы
+ public const int S_END = 0x10; //конец выражения типа суммы
+ public const int SPECIAL_SYMBOL = 0x11; //спецзнак
+ public const int SPECIAL_SYMBOL_END = 0x12; //для спецзнаков с текстом
+ public const int RETURN_BEGIN = 0x13; //начало для ввода следующих строк в спецзнаке с текстом, дробях, отклонениях
+ public const int RETURN_DOWN = 0x14; //для ввода следующих строк в спецзнаке с текстом, дробях, отклонениях
+ public const int RETURN_RIGHT = 0x15; //для ввода строк справа в спецзнаке с текстом, дробях, отклонениях
+ public const int TAB = 0x16; //табуляция по текущему стилю
+ public const int FONT_SYMBOL = 0x17; //символ фонта
+ public const int MARK_SEPARATOR = 0x18; //разделитель в обозначении
+ public const int FONT_SYMBOL_W = 0x2017; //символ фонта Unicode
+ public const int HYPER_TEXT = 0x2000; //ссылка на текст или положение объекта
+
+ public const int ITALIC_ON = 0x40; //включить наклон
+ public const int ITALIC_OFF = 0x80; //выключть наклон
+ public const int BOLD_ON = 0x100; //включить толщину
+ public const int BOLD_OFF = 0x200; //выключть толщину
+ public const int UNDERLINE_ON = 0x400; //включить подчеркивание
+ public const int UNDERLINE_OFF = 0x800; //выключть подчеркивание
+ public const int NEW_LINE = 0x1000; //новая строка в параграфе
+
+ public const int FONT_NAME = 1; //имя фонта
+ public const int NARROWING = 2; //коэффициент сужения фонта
+ public const int HEIGHT = 3; //высота фонта
+ public const int COLOR = 4; //цвет текста
+ public const int SPECIAL = 5; //спецзнак
+ public const int FRACTION_TYPE = 6; //высота дроби по отношению к тексту 1-полная высота 2-в 1.5 раза меньше 3-в 2 раза меньше
+ public const int SUM_TYPE = 7; //высота выражения типа суммы по отношению к тексту 1-полная высота 2-в 1.5 раза больше
+
+ //Определения для динамических массивов
+ public const int CHAR_STR_ARR = 1; // динамический массив указателей на строки символов
+ public const int POINT_ARR = 2; // динамический массив указателей на математические точки -структура MathPointParam
+ public const int CURVE_PATTERN_ARR = 2; // динамический массив указателей на участки штриховой линии -структура CurvePattern
+ public const int TEXT_LINE_ARR = 3; // динамический массив строк текста - структура TextLineParam
+ public const int TEXT_ITEM_ARR = 4; // динамический массив компонент строк текста структура TextItemParam
+ public const int ATTR_COLUMN_ARR = 5; // динамический массив колонок атрибутов- структура ColumnInfo
+ public const int USER_ARR = 6; // динамический пользовательский массив
+ public const int POLYLINE_ARR = 7; // динамический массив полилиний-(указателей массивов POINT_ARR)
+ public const int RECT_ARR = 8; // динамический массив габаритных прямоугольников-(структура RectParam)
+ public const int LIBRARY_STYLE_ARR = 9; // динамический массив структур параметров для стиля в библиотеке стилей( LibraryStyleParam )
+ public const int VARIABLE_ARR = 10; // динамический массив структур параметров параметрических переменных( VariableParam )
+ public const int CURVE_PATTERN_ARR_EX = 11; // динамический массив указателей на участки штриховой линии -структура CurvePatternEx
+ public const int LIBRARY_ATTR_TYPE_ARR = 12; // динамический массив структур параметров для типа атрибута в библиотеке типов атрибутов( LibraryAttrTypeParam )
+ public const int NURBS_POINT_ARR = 13; // динамический массив структур NurbsPointParam
+ public const int DOUBLE_ARR = 14; // динамический массив duuble
+ public const int CONSTRAINT_ARR = 15; // динамический массив параметрических ограничений - структура ConstraintParam
+ public const int CORNER_ARR = 16; // динамический массив структур параметров углов CornerParam для прямоугольников и многоугольников
+ public const int DOC_SPCOBJ_ARR = 17; // динамический массив структур параметров прикрепленных документов к объекту спецификации DocAttachedSpcParam
+ public const int SPCSUBSECTION_ARR = 18; // динамический массив структур параметров подраздела спецификации SpcSubSectionParam
+ public const int SPCTUNINGSEC_ARR = 19; // динамический массив структур параметров настройки раздела спецификации SpcTuningSectionParam
+ public const int SPCSTYLECOLUMN_ARR = 20; // динамический массив структур параметров стиля колонки таблицы спецификации SpcStyleColumnParam
+ public const int SPCSTYLESEC_ARR = 21; // динамический массив структур параметров стиля разделa спецификации SpcStyleSectionParam
+ public const int QUALITYITEM_ARR = 22; // динамический массив структур QualityItemParam - запись об одном интервале для какого-то квалитета
+ public const int LTVARIANT_ARR = 23; // динамический массив структур LtVariant
+ public const int TOLERANCEBRANCH_ARR = 24; // динамический массив структур ToleranceBranch
+ public const int HATCHLINE_ARR = 25; // динамический массив структур HatchLineParam
+ public const int TREENODEPARAM_ARR = 26; // динамический массив структур узла дерева TreeNodeParam
+
+ // Поле style для текста( системные стили ) см ksTextStyleEnum:
+ // 0 -умолчательный стиль для данного типа объекта
+ // 1 текст на чертеже
+ // 2 текст для технических требований
+ // 3 текст размерных надписей
+ // 4 текст шероховатости
+ // 5 текст для линии выноски ( позиционной )
+ // 6 текст для линии выноски ( над\под полкой )
+ // 7 текст для линии выноски ( сбоку )
+ // 8 текст для допуска формы
+ // 9 текст для таблицы ( заголовок )
+ // 10 текст для таблицы ( ячейка )
+ // 11 текст для линии разреза
+ // 12 текст для стрелки вида
+ // 13 текст для для неуказанной шероховатости
+ // 14 текст для обозначения изменения
+ // 15 текст для фигурной скобки
+ // 16 текст для номера узла
+ // 17 текст для выносной надписи
+ // 18 текст для обозначения узла
+ // 19 текст для марки координационной оси
+ // 20 текст для МПО(марка/позиционное обозначение с линией-выноской)
+ // 21 текст для МПО(марка/позиционное обозначение) на линии
+ // 22 текст для МПО(марка/позиционное обозначение) без линии выноски
+ // 23 текст для заголовков спецификации
+ // 24 текст для линия разреза для СПДС
+ // 25 Текст для таблицы отчета ( заголовок ).
+ // 26 Текст для таблицы отчета ( ячейка ).
+
+ // Структуры для работы с табличными атрибутами
+ public const int CHAR_ATTR_TYPE = 1;
+ public const int UCHAR_ATTR_TYPE = 2;
+ public const int INT_ATTR_TYPE = 3;
+ public const int UINT_ATTR_TYPE = 4;
+ public const int LINT_ATTR_TYPE = 5;
+ public const int FLOAT_ATTR_TYPE = 6;
+ public const int DOUBLE_ATTR_TYPE = 7;
+ public const int STRING_ATTR_TYPE = 8; //строка фиксированной длины MAX_TEXT_LENGTH
+ public const int RECORD_ATTR_TYPE = 9;
+
+ // признаки формирования размерной надписи
+ public const int _AUTONOMINAL = 0x1; // >0 автоматическое определение номинального значения размера
+ public const int _RECTTEXT = 0x2; // >0 текст в рамочке
+ public const int _PREFIX = 0x4; // >0 есть текст до номинала
+ public const int _NOMINALOFF = 0x8; // >0 нет номинала
+ public const int _TOLERANCE = 0x10; // >0 квалитет проставлять
+ public const int _DEVIATION = 0x20; // >0 отклонения проставлять
+ public const int _UNIT = 0x40; // >0 единица измерения
+ public const int _SUFFIX = 0x80; // >0 есть текст после номинала
+ public const int _DEVIATION_INFORM = 0x100; // >0 при включенном _DEVIATION, отклонения есть в массиве текстов( даже если не ручное проставление отклонений).
+ // Появляется после функции GetObjParam, чтобы пользователь мог получить отклонения.
+ public const int _UNDER_LINE = 0x200; // >0 размер с подчеркиванием
+ public const int _BRACKETS = 0x400; // >0 размер в скобках
+ public const int _SQUARE_BRACKETS = 0x800; // >0 размер в квадратных скобках, используется вместе с _BRACKETS
+ // _BRACKETS - размер в круглых скобках
+ // _BRACKETS | _SQUARE_BRACKETS - размер в квадратных скобках
+
+ public const int INDICATIN_TEXT_LINE_ARR = 0xFFFF; //для шероховаиости, позиционной линии выноски, маркировки и клеймения
+ //признак, что для текста используется динамический массив TEXT_LINE_ARR
+
+ // типы стилей
+ public const int CURVE_STYLE = 1; // стиль криивых
+ public const int HATCH_STYLE = 2; // стиль штриховок
+ public const int TEXT_STYLE = 3; // стиль текста
+ public const int STAMP_STYLE = 4; // стиль штампа
+ public const int CURVE_STYLE_EX = 5; // стиль криивых расширенный
+
+ // curveType | LIKE_BASIC_LINE - параметры пера как у основной линии
+ public const int LIKE_BASIC_LINE = 0x10; // параметры пера как у основной линии
+ public const int LIKE_THIN_LINE = 0x20; // параметры пера как у тонкой линии
+ public const int LIKE_HEAVY_LINE = 0x30; // параметры пера как у утолщенной линии
+
+ // Определения для функций Get/SetDocOptions и ksGet/SetSysOptions
+ public const int DIMENTION_OPTIONS = 1; // Настройки размера
+ public const int SNAP_OPTIONS = 1; // Настройки привязок
+ public const int ARROWFILLING_OPTIONS = 2; // Зачернять стрелки ?
+ public const int SHEET_OPTIONS = 3; // Параметры листа для новых документов
+ public const int SHEET_OPTIONS_EX = 4; // Параметры листа документа
+ public const int LENGTHUNITS_OPTIONS = 5; // Настройки единиц измерений
+ public const int SNAP_OPTIONS_EX = 6; // Настройки привязок документа
+ public const int VIEWCOLOR_OPTIONS = 7; // Настройки цвета фона рабочего поля 2d - документов
+ public const int TEXTEDIT_VIEWCOLOR_OPTIONS = 8; // Настройки цвета фона редактирования текста
+ public const int MODEL_VIEWCOLOR_OPTIONS = 9; // Настройки цвета фона для моделей
+ public const int OVERLAP_OBJECT_OPTIONS = 10; // Настройки перекрывающихся объектов
+ public const int DIMENTION_OPTIONS_EX = 11; // Настройки размера
+
+ //типы колонок для спецификации
+ public const int SPC_CLM_FORMAT = 1; // формат
+ public const int SPC_CLM_ZONE = 2; // зона
+ public const int SPC_CLM_POS = 3; // позиция
+ public const int SPC_CLM_MARK = 4; // обозначение
+ public const int SPC_CLM_NAME = 5; // наименование
+ public const int SPC_CLM_COUNT = 6; // количество
+ public const int SPC_CLM_NOTE = 7; // примечание
+ public const int SPC_CLM_MASSA = 8; // масса
+ public const int SPC_CLM_MATERIAL = 9; // материал
+ public const int SPC_CLM_USER = 10; // пользовательская
+ public const int SPC_CLM_KOD = 11; // код
+ public const int SPC_CLM_FACTORY = 12; // завод изготовитель
+
+ //типы значений для колонки спецификации
+// констаны не используются нужно использовать LtVariantType
+// public const int SPC_INT = 1; // целый
+// public const int SPC_DOUBLE = 2; // вещественный
+// public const int SPC_STRING = 3; // строка
+// public const int SPC_RECORD = 4; // запись
+
+ //типы блиотек стилей
+ public const int CURVE_STYLE_LIBRARY = 1; // библиотека стилей кривых (*.lcs)
+ public const int HATCH_STYLE_LIBRARY = 2; // библиотека стилей штриховок (*.lhs)
+ public const int TEXT_STYLE_LIBRARY = 3; // библиотека стилей текстов (*.lts)
+ public const int STAMP_LAYOUT_STYLE_LIBRARY = 4; // библиотека стилей описаний штампов (*.lyt)
+ public const int GRAPHIC_LAYOUT_STYLE_LIBRARY = 5; // библиотека стилей оформлений графических документов (*.lyt)
+ public const int TEXT_LAYOUT_STYLE_LIBRARY = 6; // библиотека стилей оформлений текстовых документов (*.lyt)
+ public const int SPC_LAYOUT_STYLE_LIBRARY = 7; // библиотека стилей оформлений спецификаций (*.lyt)
+
+ //размерности и типы детали для рассчета массо-ценровочных характеристик
+ public const int ST_MIX_MM = 0x1; // миллиметры
+ public const int ST_MIX_SM = 0; // сантиметры
+ public const int ST_MIX_DM = 0x2; // дециметры
+ public const int ST_MIX_M = 0x3; // метры
+ public const int ST_MIX_GR = 0; // граммы
+ public const int ST_MIX_KG = 0x10; // килограммы
+ public const int ST_MIX_EXT = 0; // выдавливание
+ public const int ST_MIX_RV = 0x20; // вращение
+
+ // тип локальной привязки
+ public const int SN_NEAREST_POINT = 1; // Ближайшая точка
+ public const int SN_NEAREST_MIDDLE = 2; // Середина
+ public const int SN_CENTRE = 3; // Центр
+ public const int SN_INTERSECT = 4; // Пересечение
+ public const int SN_GRID = 5; // По сетке
+ public const int SN_XY_ALIGN = 6; // Выравнивание
+ public const int SN_ANGLE = 7; // Угловая привязка
+ public const int SN_POINT_CURVE = 8; // Точка на кривой
+
+ // типы общих настроек для привязок
+ public const int SN_DYNAMICALLY = 0x1; // Привязки отслеживать динамически
+ public const int SN_ASSISTANT = 0x2; // Писать текст
+ public const int SN_BACKGROUND_LAYER = 0x4; // Учитывать фоновые слои и виды
+ public const int SN_SUSPENDED = 0x8; // Подавить привязки
+ public const int SN_VISIBLE_GRID_POINTS_ONLY = 0x10; // Привязка только к видимым точкам сетки
+
+
+ // Типы параметрических ограничений
+ public const int CONSTRAINT_FIXED_POINT = 1; // фиксировать точку
+ public const int CONSTRAINT_POINT_ON_CURVE = 2; // точка на кривой
+ public const int CONSTRAINT_HORIZONTAL = 3; // горизонталь
+ public const int CONSTRAINT_VERTICAL = 4; // вертикаль
+ public const int CONSTRAINT_PARALLEL = 5; // параллельность двух прямых или отрезков
+ public const int CONSTRAINT_PERPENDICULAR = 6; // перпендикулярность двух прямых или отрезков
+ public const int CONSTRAINT_EQUAL_LENGTH = 7; // равенство длин двух отрезков
+ public const int CONSTRAINT_EQUAL_RADIUS = 8; // равенство радиусов двух дуг/окружностей
+ public const int CONSTRAINT_HOR_ALIGN_POINTS = 9; // выравнивать две точки по горизонтали
+ public const int CONSTRAINT_VER_ALIGN_POINTS = 10; // выравнивать две точки по вертикали
+ public const int CONSTRAINT_MERGE_POINTS = 11; // совпадение двух точек
+ public const int CONSTRAINT_TANGENT_TWO_CURVES = 15; // касание двух кривых
+ public const int CONSTRAINT_SYMMETRY_TWO_POINTS = 16; // симетрия двух точек
+ public const int CONSTRAINT_COLLINEAR = 17; // колинеарность отрезков
+ public const int CONSTRAINT_FIXED_ANGLE = 18; // фиксированный угол
+ public const int CONSTRAINT_FIXED_LENGHT = 19; // фиксированная длина
+ public const int CONSTRAINT_POINT_ON_CURVE_MIDDLE = 20; // точка на серидине кривой
+ public const int CONSTRAINT_BISECTOR = 21; // биссектриса
+ public const int CONSTRAINT_CONCENTRICITY = 22; // совпадение центров окружностей, дуг, эллипсов и точек
+
+ // типы объектов спецификации
+ public const int SPC_BASE_OBJECT = 1; // базовый объект (редактируется пользователем)
+ public const int SPC_COMMENT = 2; // комментарий (редактируется пользователем)
+ public const int SPC_SECTION_NAME = 3; // наименование раздела ( создается по стилю СП автоматически )
+ public const int SPC_BLOCK_NAME = 4; // наименование блока исполнений ( создается по стилю СП автоматически )
+ public const int SPC_RESERVE_STR = 5; // резервная строка ( создается по стилю СП автоматически )
+ public const int SPC_EMPTY_STR = 6; // пустая строка ( создается по стилю СП автоматически )
+
+ // типы сортировки
+ public const int SPC_SORT_OFF = 0; // нет сортировки
+ public const int SPC_SORT_COMPOS = 1; // составная сортировка
+ public const int SPC_SORT_ALPHABET = 2; // сортировка по алфавиту (1.06.01 - больше не используется)
+ public const int SPC_SORT_UP = 3; // сортировка по возрастанию колонок
+ public const int SPC_SORT_DOCUMENT = 4; // сортировка раздела документация
+ public const int SPC_SORT_DOWN = 5; // сортировка по убыванию колонок
+ public const int SPC_SORT_COMPOSDOWN = 6; // составная сортировка по убыванию
+
+ ////////////////////////////////////////////////////////////////////////////////
+ //
+ // типы специальных символов ( аннотационный объект )
+ //
+ ////////////////////////////////////////////////////////////////////////////////
+ public const int ARROW_INSIDE_SYMBOL = 1; // стрелка (ласточкин хвост) изнутри
+ public const int ARROW_OUT_SIDE_SYMBOL = 2; // стрелка (ласточкин хвост) снаружи
+ public const int TICK_TAIL_SYMBOL = 3; // засечка с продолжением кривой (с хвостиком)
+ public const int UP_HALF_ARROW_SYMBOL = 4; // верхняя половина стрелки изнутри
+ public const int DOWN_HALF_ARROW_SYMBOL = 5; // нижняя половина стрелки изнутри
+ public const int BIG_ARROW_INSIDE_SYMBOL = 6; // большая стрелка изнутри (7мм)
+ public const int ARROW_ORDINATE_DIM_SYMBOL = 7; // стрелка для размера высоты(штрихи длиной 4 мм под углом 45 гр)
+ public const int TRIANGLE_SYMBOL = 8; // треугольник по напр-нию кривой
+ public const int CIRCLE_RAD2_SYMBOL = 9; // окружность радиусом 2 мм тонкой линией - для шер-сти и линии-выноски
+ public const int CENTRE_MARKER_SYMBOL = 10; // обозначение фиктивного центра в виде большого креста
+ public const int GLUE_SIGN_SYMBOL = 11; // знак склеивания
+ public const int SOLDER_SIGN_SYMBOL = 12; // знак пайки
+ public const int SEWING_SIGN_SYMBOL = 13; // знак сшивания
+ public const int CRAMP_SIGN_SYMBOL = 14; // знак соединения внахлестку металл.скобами
+ public const int CORNER_CRAMP_SIGN_SYMBOL = 15; // знак углового соединения металл.скобами
+ public const int MONTAGE_JOINT_SYMBOL = 16; // знак монтажного шва
+ public const int TICK_SYMBOL = 17; // засечка без продолжения кривой (без хвостика)
+ public const int TRIANGLE_CURR_CS = 18; // треугольник по текущей СК - для базы
+ public const int ARROW_CLOSED_INSIDE = 19; // закрытая стрелка изнутри
+ public const int ARROW_CLOSED_OUTSIDE = 20; // закрытая стрелка снаружи
+ public const int ARROW_OPEN_INSIDE = 21; // открытая стрелка изнутри
+ public const int ARROW_OPEN_OUTSIDE = 22; // открытая стрелка снаружи
+ public const int ARROW_RIGHTANGLE_INSIDE = 23; // стрелка 90 град изнутри
+ public const int ARROW_RIGHTANGLE_OUTSIDE = 24; // стрелка 90 град снаружи
+ public const int SYMBOL_DOT = 25; // точка (диаметр равен длины стрелки размера)
+ public const int SYMBOL_SMALLDOT = 26; // точка маленькая (диаметр равен 0.6 длины стрелки размера)
+ public const int AUXILIARY_POINT = 27; // вспомогательная точка
+ public const int LEFT_TICK_SYMBOL = 28; // засечка с наклоном влево
+
+
+ //------------------------------------------------------------------------------
+ // Битовые флаги для функции ksSetMacroParam;
+ // указание какой тип редактирования поддерживает макро
+ // ---
+ public const int MP_DBL_CLICK_OFF = 0x01; //>0 редактирование по двойному нажанию выключено
+ public const int MP_HOTPOINTS = 0x02; //>0 интерфейс hot точек включен
+ public const int MP_EXTERN_EDIT = 0x04; //>0 интерфейс внешнего управления
+
+ //-----------------------------------------------------------------------------
+ //определения для конвертации в растровый формат
+ // ---
+ public const int FORMAT_BMP = 0;
+ public const int FORMAT_GIF = 1;
+ public const int FORMAT_JPG = 2;
+ public const int FORMAT_PNG = 3;
+ public const int FORMAT_TIF = 4;
+ public const int FORMAT_TGA = 5;
+ public const int FORMAT_PCX = 6;
+ public const int FORMAT_WMF = 16;
+ public const int FORMAT_EMF = 17;
+
+ //-----------------------------------------------------------------------------
+ //определения для настройки цвета растрового формата
+ // ---
+ public const int BLACKWHITE = 0; //цвет черный
+ public const int COLORVIEW = 1; //цвет установленный для вида
+ public const int COLORLAYER = 2; //цвет установленный для слоя
+ public const int COLOROBJECT = 3; //цвет установленный для объекта
+
+ //-----------------------------------------------------------------------------
+ // орределения бит на пиксел для конвертации в растровый формат
+ // ---
+ public const int BPP_COLOR_01 = 1; //"Черный"
+ public const int BPP_COLOR_02 = 2; //"4 цвета"
+ public const int BPP_COLOR_04 = 4; //"16 цветов"
+ public const int BPP_COLOR_08 = 8; //"256 цветов"
+ public const int BPP_COLOR_16 = 16; //"16 разрядов"
+ public const int BPP_COLOR_24 = 24; //"24 разряда"
+ public const int BPP_COLOR_32 = 32; //"32 разряда"
+
+ //------------------------------------------------------------------------------
+ // Типы стандартных видов
+ // ---
+ public const int VIEW_FRONT = 0x1; // Спереди
+ public const int VIEW_REAR = 0x2; // Сзади
+ public const int VIEW_UP = 0x4; // Сверху
+ public const int VIEW_DOWN = 0x8; // Снизу
+ public const int VIEW_LEFT = 0x10; // Слева
+ public const int VIEW_RIGHT = 0x20; // Справа
+ public const int VIEW_ISO = 0x40; // Изометрия
+
+ //------------------------------------------------------------------------------
+ // Стандартые курсоры Компас
+ // ---
+ public const int OCR_SELECT = 0xFFFE; // Курсор ввиде SELECT
+ public const int OCR_SNAP = 0xFFFD; // Курсор ввиде SNAP
+ public const int OCR_CATCH = 0xFFFC; // Курсор ввиде CATCH
+ public const int OCR_DEFAULT = 0; // Курсор в виде креста
+
+ public const int OCR_DEDAULT = 0; // Курсор в виде креста
+
+ //-----------------------------------------------------------------------------
+ // Неопределенный цвет для TextItemFont.color
+ // В стиле может быть выставлен по умолчанию цвет отличный он 0
+ // В этом случае если TextItemFont.color будет значение 0 то создастся
+ // модификатор на цвет и он не будет отображаться как цвет по умолчанию
+ // для того чтобы модификатор цвета не создался нужно
+ // или прислать цвет из настроек или константу FREE_COLOR
+ // ---
+ public const uint FREE_COLOR = 0xff000000; // Неопределенный цвет
+
+ }
+}
\ No newline at end of file
diff --git a/Common/KGAXLib.dll b/Common/KGAXLib.dll
new file mode 100644
index 0000000..4c51d22
Binary files /dev/null and b/Common/KGAXLib.dll differ
diff --git a/Common/Kompas6API2D5COM.dll b/Common/Kompas6API2D5COM.dll
new file mode 100644
index 0000000..b23e92a
Binary files /dev/null and b/Common/Kompas6API2D5COM.dll differ
diff --git a/Common/Kompas6API3D5COM.dll b/Common/Kompas6API3D5COM.dll
new file mode 100644
index 0000000..8cc7dc4
Binary files /dev/null and b/Common/Kompas6API3D5COM.dll differ
diff --git a/Common/Kompas6API5.dll b/Common/Kompas6API5.dll
new file mode 100644
index 0000000..f0db599
Binary files /dev/null and b/Common/Kompas6API5.dll differ
diff --git a/Common/Kompas6Constants.dll b/Common/Kompas6Constants.dll
new file mode 100644
index 0000000..556e472
Binary files /dev/null and b/Common/Kompas6Constants.dll differ
diff --git a/Common/Kompas6Constants3D.dll b/Common/Kompas6Constants3D.dll
new file mode 100644
index 0000000..4df691c
Binary files /dev/null and b/Common/Kompas6Constants3D.dll differ
diff --git a/Common/KompasAPI7.dll b/Common/KompasAPI7.dll
new file mode 100644
index 0000000..4631ca0
Binary files /dev/null and b/Common/KompasAPI7.dll differ
diff --git a/Common/KompasLibrary.dll b/Common/KompasLibrary.dll
new file mode 100644
index 0000000..ed342d3
Binary files /dev/null and b/Common/KompasLibrary.dll differ
diff --git a/Common/VCHATCHLib.dll b/Common/VCHATCHLib.dll
new file mode 100644
index 0000000..6fd9470
Binary files /dev/null and b/Common/VCHATCHLib.dll differ
diff --git a/QuickPrintBridge/QuickPrintBridge.csproj b/QuickPrintBridge/QuickPrintBridge.csproj
index 3a63532..d89542f 100644
--- a/QuickPrintBridge/QuickPrintBridge.csproj
+++ b/QuickPrintBridge/QuickPrintBridge.csproj
@@ -4,6 +4,25 @@
net8.0
enable
enable
+ true
+
+
+ ..\Common\KAPITypes.dll
+
+
+ ..\Common\Kompas6API5.dll
+
+
+ ..\Common\Kompas6Constants.dll
+
+
+ ..\Common\Kompas6Constants3D.dll
+
+
+ ..\Common\KompasAPI7.dll
+
+
+
diff --git a/QuickPrintBridge/appsettings.json b/QuickPrintBridge/appsettings.json
new file mode 100644
index 0000000..2bbfd61
--- /dev/null
+++ b/QuickPrintBridge/appsettings.json
@@ -0,0 +1,13 @@
+п»ї{
+ "SlicerProtocols": {
+ "PrusaSlicer": "prusaslicer://",
+ "BambuStudio": "bambustudio://",
+ "Cura": "cura://"
+ },
+ "TempExportFolder": "%TEMP%\\QuickPrintBridge",
+ "FallbackFormat": "3mf",
+ "StlExport": {
+ "Deviation": 0.01,
+ "Angle": 5.0
+ }
+}