docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается. - .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным (safety-net на случай повторной локальной выгрузки). - CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
100 KiB
title, type, api, tags, sources
| title | type | api | tags | sources | |||||
|---|---|---|---|---|---|---|---|---|---|
| KompasObject - Интерфейс API КОМПАС | interface |
|
|
|
API интерфейсов. Версия 5
KompasObject - Интерфейс API КОМПАС
Интерфейс событий... Примечание: Получить интерфейс KompasObject можно: •для обычных .rtw библиотек - применив экспортную функцию IDispatch CreateKompasObject(); •для ActiveX библиотек - после вызова команды библиотеки и выполнения функции ExternalRunCommand; •при работе под управлением внешнего приложения (контроллера) - после вызова стандартной системной функции.
ActiveDocument2D - Получить указатель на интерфейс текущего графического документа
Синтаксис Automation:
LPDISPATCH ActiveDocument2D();
Возвращаемое значение:
- указатель на интерфейс графического документа ksDocument2D.
Примечание: Если документ не активен, функция возвращает NULL.
ActiveDocument3D - Получить указатель на интерфейс текущего документа трехмерной модели
Аналог данного метода при использовании API экспортных функций - ksGetActive3dDocument. Синтаксис Automation:
LPDISPATCH ActiveDocument3D();
Возвращаемое значение:
- указатель на интерфейс документа трехмерной модели ksDocument3D.
Синтаксис COM:
Чтобы получить интерфейс текущего документа трехмерной модели при программировании на COM, нужно использовать экспортную функцию LPDOCUMENT3D ksGetActive3dDocument();
Возвращаемое значение:
- указатель на интерфейс документа трехмерной модели IDocument3D.
Примечание: Если документ трехмерной модели не активен, функция возвращает NULL.
ActiveDocumentTxt - Получить указатель на интерфейс текущего текстового документа
Синтаксис Automation:
LPDISPATCH ActiveDocumentTxt();
Входные параметры:
- Указатель на интерфейс текстового документа ksDocumentTxt
Примечание: Если документ не активен, функция возвращает NULL.
currentDirectory - Текущий каталог
Тип данных: BOOL Синтаксис:
currentDirectory = Object.currentDirectory Получить свойство (* )
Object.currentDirectory = currentDirectory Установить свойство (* )
currentDirectory = Object.GetСurrentDirectory() Получить свойство (**)
Object.SetСurrentDirectory( currentDirectory ) Установить свойство (**)
DataBaseObject - Получить указатель на интерфейс ksDataBaseObject для работы с базами данных
Синтаксис Automation:
LPDISPATCH DataBaseObject();
Возвращаемое значение:
- указатель на интерфейс ksDataBaseObjec для работы с базами данных.
Document2D - Получить указатель на интерфейс графического документа
Синтаксис Automation:
LPDISPATCH Document2D();
Возвращаемое значение:
- указатель на интерфейс графического документа ksDocument2D.
Document3D - Получить указатель на интерфейс документа трехмерной модели
Синтаксис Automation:
LPDISPATCH Document3D();
Возвращаемое значение:
- указатель на интерфейс документа трехмерной модели ksDocument3D.
Синтаксис COM:
Чтобы получить интерфейс документа трехмерной модели при программировании на COM, нужно использовать экспортную функцию ksGet3dDocument.
Возвращаемое значение:
- указатель на интерфейс документа трехмерной модели IIDocument3D.
DocumentTxt - Получить указатель на интерфейс текстового документа
Синтаксис Automation:
LPDISPATCH DocumentTxt();
Входные параметры:
- Указатель на интерфейс текстового документа ksDocumentTxt
ksDrawKompasDocumentByReference - Отрисовать КОМПАС-документ как слайд в присланном окне
Аналог данного метода при использовании API экспортных функций - ksDrawKompasDocumentByReference. Синтаксис Automation:
long ksDrawKompasDocumentByReference (long HWindow, long pDoc);
Входной параметр:
Hwindow - несущее окно,
pDoc - указатель на документ.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Если pDoc = 0, отрисовывается текущий документ.
GetAttributeObject - Получить указатель на интерфейс для работы с атрибутами
Синтаксис Automation:
LPDISPATCH GetAttributeObject();
Возвращаемое значение:
- указатель на интерфейс ksAttributeObject.
GetDynamicArray - Получить указатель на интерфейс динамического массива ksDynamicArray
Интерфейс.. Синтаксис Automation:
LPDISPATCH GetDynamicArray (long type);
Входной параметр:
type - тип динамического массива.
Возвращаемое значение:
- указатель на интерфейс динамического массива ksDynamicArray.
BOOL preview,
long typeDir);
Входные параметры:
ext - расширение имени файла,
filter - фильтр поиска (0 - фильтр формируется автоматически),
preview - признак подключения окна предварительного просмотра: 1 - с подключением окна, 0 - без подключения окна,
typeDir - стартовая папка.
Возвращаемое значение:
- строка с именем файла.
Примечание: Параметр typeDir может иметь значения sptSYSTEM_FILES и sptLIBS_FILES; во всех остальных случаях открывается текущая папка.
GetFragmentLibrary - Получить указатель на интерфейс библиотеки фрагментов
Синтаксис Automation:
LPDISPATCH GetFragmentLibrary();
Возвращаемое значение:
- указатель на интерфейс ksFragmentLibrary.
GetIterator - Получить указатель на интерфейс ksIterator для навигации по объектам
Синтаксис Automation:
LPDISPATCH GetIterator();
Возвращаемое значение:
- указатель на интерфейс ksIterator.
GetMathematic2D - Получить указатель на интерфейс для работы с математическими функциями
Синтаксис Automation:
LPDISPATCH GetMathematic2D();
Возвращаемое значение:
- указатель на интерфейс ksMathematic2D.
GetModelLibrary - Получить указатель на интерфейс библиотеки моделей
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetModelLibrary. Синтаксис Automation:
LPDISPATCH GetModelLibrary();
Возвращаемое значение:
- указатель на интерфейс ksModelLibrary.
GetParamStruct - Получить указатель на интерфейс структуры параметров объекта нужного типа
Синтаксис Automation:
LPDISPATCH GetParamStruct (short structType);
Входной параметр:
structType - тип интерфейса параметров
Возвращаемое значение:
- указатель на интерфейс указанного типа из StructType2D.
ksAttachKompasLibrary - Подключить библиотеку
Синтаксис Automation:
long ksAttachKompasLibrary (BSTR libname);
Входные параметры:
libname - полное имя файла библиотеки.
Возвращаемое значение:
уникальный номер библиотеки - в случае успешного завершения,
0 - в случае неудачи.
Примечание: После успешного выполнения метода имя библиотеки появится в меню "Библиотеки".
ksCalculate - Подсчитать значение выражения
Аналог данного метода при использовании API экспортных функций - ksCalculate. Синтаксис Automation:
long ksCalculate (BSTR s, double* res);
Входные параметры:
s - строка с выражением,
res - результат расчета.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание:
- Поддерживаются функции и переменные: •SIN, COS, TAN, ATAN - тригонометрические функции (аргумент в радианах), •SIND, COSD, TAND, ATAND - тригонометрические функции (аргумент в градусах), •SQRT, EXP, LN, ABS - корень квадратный, экспонента, натуральный логарифм, абсолютное значение.
- Если s = "A1 = 100", то будет заведена переменная A1 cо значением 100; переменных может быть неограниченное количество.
ksCalculateReset - Очистить массив переменных калькулятора
Аналог данного метода при использовании API экспортных функций - ksCalculateReset. Синтаксис Automation:
long ksCalculateReset();
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksChoiceFile - Показать диалог и выбрать в нем имя файла для чтения
Аналог данного метода при использовании API экспортных функций - ksChoiceFile. Синтаксис Automation:
BSTR ksChoiceFile (BSTR ext,
BSTR filter,
BOOL preview);
Входные параметры:
ext - расширение имени файла,
filter - фильтр поиска (0 - формируется автоматически),
preview - признак подключения окна предварительного просмотра: 1 - с подключением окна, 0 - без подключения окна.
Возвращаемое значение:
строка с именем файла - в случае удачного завершения,
NULL - в случае отказа от выбора.
ksChoiceFileAppointedDir - Выдать папку и выбрать имя файла для открытия
Аналог данного метода при использовании API экспортных функций - ksChoiceFileAppointedDir. Синтаксис Automation:
BSTR ksChoiceFileAppointedDir (BSTR ext,
BSTR filter,
BOOL preview,
long typeDir);
Входные параметры:
ext - расширение имени файла,
filter - фильтр поиска (0 - формируется автоматически),
preview - признак подключения окна предварительного просмотра: 1 - с подключением окна, 0 - без подключения окна,
typeDir стартовая папка.
Возвращаемое значение:
- строка с именем файла.
Примечание.
Параметр typeDir может иметь значения sptSYSTEM_FILES и sptLIBS_FILES; во всех остальных случаях открывается текущая папка.
ksChoiceFiles - Выдать диалог выбора файлов для открытия
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ksChoiceFiles. Синтаксис Automation:
long ksChoiceFiles (BSTR ext,
BSTR filter,
LPDISPATCH p,
BOOL preview);
Входные параметры:
ext - расширение имени файла,
filter - фильтр поиска (0 - формируется автоматически),
preview - признак подключения окна предварительного просмотра: 1 - с подключением окна, 0 - без подключения окна.
Выходной параметр:
p - указатель на интерфейс динамического массива ksDynamicArray типа CHAR_STR_ARR.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksConvertLangMenu - Конвертировать меню в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangMenu. Синтаксис Automation:
long ksConvertLangMenu (long hMenu);
Входной параметр:
hMenu - дескриптор исходного меню.
Возвращаемое значение:
- дескриптор переведённого меню.
ksConvertLangStr - Конвертировать строку src в dst в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangStr. Синтаксис Automation:
BSTR ksConvertLangStr (BSTR src);
Входной параметр:
src - исходная строка.
Возвращаемое значение:
- переведенная строка.
Примечание.
Словарь сохраняется в файле с расширением dic. Строки файла должны иметь следующий формат:
"Вращение"="Rotation"
"Параметры"="Parameters"
...
...
"Перемещение"="Moving"
Строки файла должны быть отсортированы по алфавиту.
ksConvertLangStrEx - Конвертировать строку с идентификатором в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangStrEx. Синтаксис Automation:
BSTR ksConvertLangStrEx (long hInstance, long strID);
Входной параметр:
hInstance - HINSTANCE модуля, в котором находится переводимая строка,
strID - идентификатор строки.
Возвращаемое значение:
- переведенная строка.
ksConvertLangStrEx2 - Конвертировать строку в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangStrEx. Синтаксис Automation:
BSTR ksConvertLangStrEx2( VARIANT hInstance, long strID );
Входные параметры:
hInstance - HINSTANCE модуля, в котором находится переводимая строка,
strID - идентификатор строки.
Возвращаемое значение:
- переведенная строка.
Примечание: HINSTANCE библиотеки нужно передать через VARIANT, как VT_I4 в Win32 и VT_I8 в x64 Для правильного формирования _variant_t HINSTANCE нужно передавать через приведение к (LONG_PTR). В библиотеках, использующих автоматизацию, рекомендуется использовать данную функцию вместо KompasObject::ksConvertLangStrEx.
ksConvertLangWindow - Конвертировать окно с входящими дочерними окнами в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangWindow. Синтаксис Automation:
BOOL ksConvertLangWindow (long hWnd);
Входной параметр:
hWnd - дескриптор окна.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
ksConvertLangWindowEx - Конвертировать окно с входящими дочерними окнами в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangWindowEx. Синтаксис Automation:
BOOL ksConvertLangWindowEx (long hWnd,
long hInstance,
BSTR dlgID);
Входной параметр:
hWnd - дескриптор окна,
hInstance - HINSTANCE модуля, в котором находится переводимый диалог,
dlgID - имя ресурса диалога.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
Примечание: Функция устарела. Использование данной функции может привести к ошибке в библиотеке, собранной с конфигурацией x64. Рекомендуется использовать функцию KompasObject::ksConvertLangWindowEx2.
ksConvertLangWindowEx2 - Конвертировать окно в соответствии с текущим словарем
Аналог данного метода при использовании экспортных функций ksConvertLangWindowEx. Синтаксис Automation:
BOOL ksConvertLangWindowEx2(long hWnd, VARIANT hInstance, BSTR dlgID);
Входной параметр:
hWnd - дескриптор окна,
hInstance - HINSTANCE модуля, в котором находится переводимый диалог,
dlgID - имя ресурса диалога.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
Примечание: HINSTANCE библиотеки нужно передать через VARIANT, как VT_I4 в Win32 и VT_I8 в x64. Для правильного формирования _variant_t HINSTANCE нужно передавать через приведение к (LONG_PTR). В библиотеках, использующих автоматизацию, рекомендуется использовать данную функцию вместо KompasObject::ksConvertLangWindowEx.
ksCreateInsertionFragment - Создать вставку фрагмента
Синтаксис Automation:
int LIB_FUNC ksCreateInsertionFragment( char * fileName );
Входные параметры:
fileName - полное имя файла фрагмента.
Возвращаемое значение:
1 - в случае удачи.
Примечание: Допускается fileName следующего вида: "c:_f\gr\lib1.lfr|детали|литье|фланец", где: •c:_f\gr\lib1.lfr - имя файла библиотеки фрагментов, •|детали|литье|- разделы, подразделы внутри библиотеки фрагментов, •фланец - имя фрагмента. Функция запускает процесс вставки фрагмента из файла. Функция не ждет завершения процесса вставки.
ksDrawBitmap - Отрисовать растровый слайд
Аналог данного метода при использовании API экспортных функций - DrawBitmap. Синтаксис Automation:
long ksDrawBitmap (long HWindow,
long bitmapId);
Входные параметры:
HWindow - дескриптор окна, в котором нужно отрисовать BITMAP-слайд,
bitmapId - идентификатор BITMAP-слайда в файле ресурсов.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksDrawBitmapEx - Отрисовать растровый слайд в заданном окне
Аналог данного метода при использовании API экспортных функций - ksDrawBitmapEx. Синтаксис Automation:
long ksDrawBitmapEx (long HWindow, long bitmapId, long hInst);
Входные параметры:
Hwindow - дескриптор окна, в котором нужно отрисовать BITMAP-слайд,
bitmapId - идентификатор BITMAP-слайда в файле ресурсов,
hInst - hInstance текущей библиотеки или NULL, если она одна.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
Примечание: Функция устарела. Использование данной функции может привести к ошибке в библиотеке, собранной с конфигурацией x64. Рекомендуется использовать функцию KompasObject::ksDrawBitmapEx2.
ksDrawBitmapEx2 - Отрисовать BMP с идентификатором bitmapId в заданном окне(hWindow)
Аналог данного метода при использовании API экспортных функций - ksDrawBitmapEx. Синтаксис Automation:
long ksDrawBitmapEx2(long HWindow, long bitmapId, VARIANT hInst);
Входные параметры:
Hwindow - дескриптор окна, в котором нужно отрисовать BITMAP-слайд,
bitmapId - идентификатор BITMAP-слайда в файле ресурсов,
hInst - hInstance библиотеки, в которой расположен слайд.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
Примечание: HINSTANCE библиотеки нужно передать через VARIANT, как VT_I4 в Win32 и VT_I8 в x64. Для правильного формирования _variant_t HINSTANCE нужно передавать его через приведение к (LONG_PTR). В библиотеках, использующих автоматизацию, рекомендуется использовать данную функцию вместо KompasObject::ksDrawBitmapEx.
ksDrawKompasDocument - Отрисовать документ системы КОМПАС как слайд в присланном окне
Аналог данного метода при использовании API экспортных функций - ksDrawKompasDocument. Синтаксис Automation:
long ksDrawKompasDocument (long HWindow,
BSTR docFileName);
Входные параметры:
Hwindow - несущее окно,
docFileName - полное имя файла документа.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
Примечание: Действие метода распространяется также на фрагменты и модели из библиотек. При этом имя файла должно иметь вид "c:\gr\lib1.l3d|детали|литье|фланец", где •c:\gr\lib1.l3d - имя файла библиотеки, •|детали|литье| - разделы, подразделы внутри библиотеки, •фланец - имя фрагмента или модели.
ksDrawKompasText - Отрисовать текст в формате КОМПАС в присланном окне
Аналог данного метода при использовании API экспортных функций - ksDrawKompasText. Синтаксис Automation:
long ksDrawKompasText(long HWindow, BSTR text);
Входные параметры:
HWindow - дескриптор окна для отрисовки слайда,
text - текст.
ksDrawSlide - Отрисовать слайд в заданном окне
Интерфейс.. Аналог данного метода при использовании API экспортных функций - DrawSlide. Синтаксис Automation:
long ksDrawSlide (long HWindow, long slideId);
Входные параметры:
HWindow - дескриптор окна,
slideId - идентификатор слайда.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Слайд должен быть описан в ресурсном файле библиотеки при помощи объекта RCDATA.
ksDrawSlideEx - Отрисовать указанный слайд в заданном окне
Аналог данного метода при использовании API экспортных функций - ksDrawSlideEx. Синтаксис Automation:
long ksDrawSlideEx (long HWindow,
long slideId,
long hInst);
Входные параметры:
HWindow - дескриптор окна,
slideId - идентификатор слайда,
hInst - hInstance текущей библиотеки или NULL, если она одна.
Возвращаемое значение:
1 - в случае успешного завершения.
Примечание: Слайд должен быть описан в ресурсном файле библиотеки при помощи объекта RCDATA. Функция устарела. Использование данной функции может привести к ошибке в библиотеке, собранной с конфигурацией x64. Рекомендуется использовать функцию KompasObject::ksDrawSlideEx2.
ksDrawSlideEx2 - Отрисовать указанный слайд в заданном окне
Аналог данного метода при использовании API экспортных функций ksDrawSlideEx. Синтаксис Automation:
long ksDrawSlideEx2(long HWindow, long slideId, VARIANT hInst);
Входные параметры:
HWindow - дескриптор окна, в котором нужно отрисовать BITMAP-слайд,
slideId - идентификатор BITMAP-слайда в файле ресурсов,
hInst - hInstance библиотеки, в которой расположен слайд.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Слайд должен быть описан в ресурсном файле библиотеки при помощи объекта RCDATA. HINSTANCE библиотеки нужно передать через VARIANT как VT_I4 в Win32 и VT_I8 в x64. Для правильного формирования _variant_t HINSTANCE нужно передавать через приведение к (LONG_PTR). В библиотеках, использующих автоматизацию, рекомендуется использовать данную функцию вместо KompasObject::ksDrawSlideEx.
ksDrawSlideFromFile - Отрисовать слайд в окне из текстового файла, содержащего блок RCDATA
Аналог данного метода при использовании API экспортных функций - ksDrawSlideFromFile. Синтаксис Automation:
long ksDrawSlideFromFile (long HWindow,
BSTR fileName);
Входные параметры:
HWindow - дескриптор окна,
fileName - полное имя файла.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Функция предназначена для отладки слайдов. Позволяет просмотреть отредактированный слайд в окне диалога без перетрансляции тестовой библиотеки.
ksEditTextLine - Вызвать диалог редактирования сложноструктурированного текста
Аналог данного метода при использовании API экспортных функций - ksEditTextLine. Синтаксис Automation:
BSTR ksEditTextLine (long HWindow, long* res, BSTR str);
Входные параметры:
Hwindow - дескриптор окна,
str - входная строка текста.
Выходные параметры:
res - строка текста.
Возвращаемое значение:
1 - выход из диалога по кнопке OK,
0 - выход из диалога по кнопке Отмена.
ksEnableTaskAccess - Разрешить или запретить доступ к задаче со стороны пользователя
Аналог данного метода при использовании API экспортных функций - EnableTaskAccess. Синтаксис Automation:
BOOL ksEnableTaskAccess(long enable);
Входной параметр:
enable - признак разрешения доступа к задаче со стороны пользователя: 1 - доступ разрешен, 0 - доступ запрещен.
Возвращаемое значение:
TRUE
Примечание: См. также KompasObject::ksIsEnableTaskAccess.
ksError - Выдать сообщение об ошибке
Аналог данного метода при использовании API экспортных функций - Error. Синтаксис Automation:
BOOL ksError(BSTR message);
Входной параметр:
message - строка с текстом сообщения об ошибке.
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksExecDialPredefinedText - Получить предопределенный текст из файла текстовых шаблонов (с расширением tdp)
Аналог данного метода при использовании API экспортных функций - ksExecDialPredefinedText. Синтаксис Automation:
BSTR ksExecDialPredefinedText (long HWindow, long FAR* res);
Входной параметр:
Hwindow - несущее окно.
Выходной параметр:
res - результат работы функции: 1 - в случае успеха, 0 - в случае неудачи.
Возвращаемое значение:
указатель на интерфейс ksDynamicArray массива строк, тип массива - TEXT_LINE_ARR. - в случае успеха,
NULL - в случае неудачи.
Примечание: Метод возвращает все строки. Они складываются в одну с переводом строки "\n"
ksExecDialPredefinedTextEx - Получить предопределенный текст из файла текстовых шаблонов (с расширением tdp)
Аналог данного метода при использовании API экспортных функций - ksExecDialPredefinedTextEx. Синтаксис Automation:
LPDISPATCH ksExecDialPredefinedTextEx (long HWindow);
Входной параметр:
Hwindow - несущее окно.
Возвращаемое значение:
указатель на интерфейс ksDynamicArray массива строк, тип массива - TEXT_LINE_ARR. - в случае успеха,
NULL - в случае неудачи.
ksExecDialSpecialSymbol - Вызов диалога Вставка спецзнака
Аналог данного метода при использовании API экспортных функций - ksExecDialSpecialSymbol. Синтаксис Automation:
int ksExecDialSpecialSymbol( long HWindow );
Входные параметры:
HWindow - дескриптор окна.
Возвращаемое значение:
Номер спецзнака - в случае успешного завершения,
-1 - в случае неудачи или закрытии диалога по отмене.
ksExecDialSymbol - Вызов диалога Вставка символа
Аналог данного метода при использовании API экспортных функций - ksExecDialSymbol. Синтаксис Automation:
BSTR ksExecDialSymbol( long HWindow, long * symb, BSTR font );
Входные параметры:
HWindow - дескриптор окна,
symb - номер символа, на котором будет стоять курсор,
font - имя шрифта в диалоге.
Выходные параметры:
symb - номер выбранного символа.
Возвращаемое значение:
Имя шрифта - в случае успешного завершения,
NULL - в случае неудачи или закрытии диалога по отмене.
ksExecQualityDialog - Вызов диалога Выбор квалитета
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksExecQualityDialog. Синтаксис Automation:
BOOL ksExecQualityDialog( long HWindow, BSTR curQual, double * dimValue, long inMM, LPDISPATCH param );
Входные параметры:
HWindow - дескриптор окна,
curQual - текущее значение квалитета,
dimValue - значение для которого требуется выбрать квалитет или NULL,
inMM - размерность параметров dimValue, high, low: 1 - миллиметры, 0 - единицы измерения текущего документа.
Выходной параметр:
param - указатель на интерфейс структуры параметров квалитета ksQualityContensParam.
Возвращаемое значение:
TRUE - в случае выбора квалитета,
FALSE - отмены выбора или ошибки.
ksExecuteKompasCommand - Выполнить команду системы КОМПАС
Аналог данного метода при использовании API экспортных функций - ksExecuteKompasCommand. Синтаксис Automation:
BOOL ksExecuteKompasCommand (long commandID, BOOL post);
Входные параметры:
commandID - константа из перечисления ProcessTypeEnum или ksKompasCommandEnum,
post - true - запуск команды через PostMessage, - false - через SendMessage.
Возвращаемое значение:
TRUE - в случае удачи,
FALSE - в случае ошибки.
Примечание:
- Проверить доступность команды можно с помощью функции KompasObject::ksIsKompasCommandEnable.
- Проверить, нажата ли в данный момент кнопка команды, можно с помощью KompasObject::ksIsKompasCommandCheck.
ksExecuteKompasLibraryCommand - Выполнить команду библиотеки
Синтаксис Automation:
long ksExecuteKompasLibraryCommand (long libId, long command);
Входные параметры:
libId - уникальный номер библиотеки, полученный при выполнении ksAttachKompasLibrary,
command - номер команды из библиотеки.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
Примечание: В отличии от функции ksExecuteLibraryCommand выполняется команда у подключенной ранее библиотеки. ksExecuteLibraryCommand - подключает библиотеку, выполняет команду, если защита позволяет и отключает библиотеку.
ksExecuteKompasLibraryCommandEx - Выполнить команду библиотеки
Интерфейс.. Синтаксис Automation:
long ksExecuteKompasLibraryCommandEx (long libId, long command, LPDISPATCH external);
Входные параметры:
libId - уникальный номер библиотеки, полученный при выполнении ksAttachKompasLibrary,
command - номер команды из библиотеки,
external - указатель на интерфейс связи между библиотеками (приложениями).
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksExecuteLibraryCommand - Выполнить команду другой библиотеки
Аналог данного метода при использовании API экспортных функций - ksExecuteLibraryCommand. Синтаксис Automation:
long ksExecuteLibraryCommand (BSTR fileName, long command);
Входные параметры:
fileName - имя файла прикладной библиотеки,
command - номер команды из библиотеки.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: Если задано короткое имя файла прикладной библиотеки (без пути), то эта библиотека ищется в подпапке ..\Libs главной папки системы КОМПАС.
ksFullFileName - Проверить имя файла и, если оно не полное, добавить к нему имя текущей папки
Аналог данного метода при использовании API экспортных функций - FullFileName. Синтаксис Automation:
BSTR ksFullFileName (BSTR oldName);
Входной параметр:
oldName - старое имя файла.
Возвращаемое значение:
- полное имя файла.
ksGet3dDocumentFromRef - Получить указатель на интерфейс ksDocument3D, соответствующий присланному указателю на документ
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGet3dDocumentFromReference. Синтаксис Automation:
LPDISPATCH ksGet3dDocumentFromRef(long doc);
Входной параметр:
doc - указатель на документ.
Возвращаемое значение:
указатель на интерфейс ksDocument3D - в случае удачного завершения,
NULL - если такого документа нет.
ksGetApplication7 - Получить указатель интерфейса приложения API версии 7
Аналог данного метода при использовании экспортных функций CreateKompasApplication. Синтаксис Automation:
LPDISPATCH ksGetApplication7();
Возвращаемое значение:
Указатель на интерфейс API версии 7 IApplication.
ksGetDocOptions - Получить настройки текущего документа
Аналог данного метода при использовании API экспортных функций - GetDocOptions. Синтаксис Automation:
long ksGetDocOptions (long optionsType, LPDISPATCH param);
Входной параметр:
optionsType - тип настройки.
Выходной параметр:
param - указатель на интерфейс параметров.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Соответствие входных и выходных параметров...
ksGetDocumentByReference - Получить интерфейс документа по указателю на документ
Синтаксис Automation:
LPDISPATCH ksGetDocumentByReference (long docRef);
Входной параметр:
docRef - указатель на документ.
Возвращаемое значение:
Указатель на интерфейс документа
Примечание: Если docRef = 0, возвращается указатель на интерфейс IDispatch активного документа.
ksGetDocumentType - Получить тип документа
Аналог данного метода при использовании API экспортных функций - ksGetDocumentType. Синтаксис Automation:
long ksGetDocumentType (long doc);
Входной параметр:
doc - указатель на документ.
Возвращаемое значение:
тип документа DocType - при успешном завершении,
0 - в случае неудачи.
Примечание: Если указатель doc = 0, возвращается тип активного документа.
ksGetDocumentTypeByName - Получить тип документа DocType
Получить тип документа DocType Аналог данного метода при использовании API экспортных функций - ksGetDocumentTypeByName. Синтаксис Automation:
long ksGetDocumentTypeByName (BSTR fileName);
Входной параметр:
(BSTR) fileName - полное имя файла документа.
Возвращаемое значение:
тип документа DocType "ldefin2d.h" - при успешном завершении,
0 - в случае неудачи.
Примечание:
- Документ при вызове этой функции не создается.
- Независимо от используемого оформления возвращается:
для чертежа lt_DocSheetStandart для спецификации lt_DocSpc для текстового документа lt_DocTxtStandart
ksGetDocumentTypeByNameEx - Получить тип и специализацию документа по имени файла
Синтаксис Automation:
BSTR ksGetDocumentTypeByNameEx( BSTR fileName, long * docType, long * errorId );
Входные параметры:
fileName - полное имя файла документа.
Выходные параметры:
docType - тип документа DocType "ldefin2d.h",
errorId - номер ошибки, если не удалось получить тип документа.
Возвращаемое значение:
- Специализация документа.
Примечание: Возможные ошибки получения типа документа: •etError64 64 - Документ не найден или неверная структура файла, •etError217 217 - Документ создан более поздней версией, •etError218 218 - Файл защищен с помощью приложения КОМПАС-Защита.
ksGetExternalInterface - Получить указатель внешнего интерфейса
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetExternalInterface. Синтаксис Automation:
LPDISPATCH ksGetExternalInterface();
Возвращаемое значение:
- указатель на интерфейс IDispatch связи между библиотеками (приложениями).
Примечание:
- Метод не выполняет Addref на выдаваемый интерфейс.
- Внешний интерфейс можно использовать для обмена данными между двумя приложениями. Первое приложение передает интерфейс при вызове метода KompasObject::ksExecuteKompasLibraryCommandEx.
- После выполнения KompasObject::ksExecuteKompasLibraryCommandEx метод ksGetExternalInterface возвращает NULL.
ksGetFullPathFromRelativePath - Сформировать полный путь к файлу из заданного пути к задающему файлу и относительного пути к файлу
Аналог данного метода при использовании API экспортных функций - GetFullPathFromRelativePath. Синтаксис Automation:
BSTR ksGetFullPathFromRelativePath (BSTR mainFilePath, BSTR relativePath);
Входные параметры:
mainFilePath - полный путь к задающему файлу,
relativePath - относительный путь к требуемому файлу (без общей с задающим файлом части пути).
Возвращаемое значение:
- полный путь к файлу.
ksGetFullPathFromSystemPath - Сформировать полный путь к файлу из заданного относительного пути к файлу и системного пути установленного типа
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ksGetFullPathFromSystemPath. Синтаксис Automation:
BSTR ksGetFullPathFromSystemPath (BSTR relativePath, long pathType);
Входные параметры:
relativePath - относительный путь к файлу,
pathType - тип системной папки.
Возвращаемое значение:
- полный путь к файлу.
ksGetHWindow - Получить дескриптор главного окна КОМПАС-ГРАФИК
Аналог данного метода при использовании API экспортных функций - GetHWindow. Синтаксис Automation:
long ksGetHWindow();
Возвращаемое значение:
- дескриптор главного окна, который используется функциями WINDOWS для работы с окнами.
ksGetLibraryStylesArray - Получить указатель на интерфейс динамического массива стилей заданного типа, находящихся в заданной библиотеке стилей ksDynamicArray типа LIBRARY_STYLE_ARR
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetLibraryStylesArray, Синтаксис Automation:
LPDISPATCH ksGetLibraryStylesArray (BSTR libraryName,
short libraryType);
Входные параметры:
libraryName - полное имя библиотеки стилей,
libraryType - тип библиотеки стиля.
Возвращаемое значение:
- указатель на интерфейс динамического массива ksDynamicArray типа LIBRARY_STYLE_ARR.
ksGetLibraryTreeStruct - Получить структуру дерева библиотеки документов и библиотеки атрибутов
Аналог данного метода при использовании экспортных функций ksGetLibraryTreeStruct. Синтаксис Automation:
BOOL ksGetLibraryTreeStruct (BSTR libName, LPDISPATCH root);
Входной параметр:
libName - полное имя файла библиотеки моделей, фрагментов, атрибутов,
root - указатель на интерфейс ksTreeNodeParam параметров корневого узла дерева.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksGetObjectsFilter3D - Получить интерфейс фильтрации объектов-моделей
Аналог данного метода при использовании API экспортных функций - ksGetObjectsFilter3D. Синтаксис Automation:
IObjectsFilter3D * GetObjectsFilter3D();
Возвращаемое значение:
- указатель на интерфейс ksObjectsFilter3D.
ksGetQualityContensParam - Получить параметры квалитета
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetQualityContensParam. Синтаксис Automation:
long ksGetQualityContensParam (BSTR name, LPDISPATCH param, short inMM);
Входные параметры:
name - поле допуска,
inMM - размерность параметров minLimit, maxLimit, high, low: 1 - миллиметры, 0 - единицы измерения текущего документа.
Выходной параметр:
param - указатель на интерфейс структуры параметров квалитета ksQualityContensParam.
Возвращаемое значение:
TRUE - в случае выбора квалитета,
FALSE - отмены выбора или ошибки.
ksGetQualityDefects - Получить отклонения
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetQualityDefects. Синтаксис Automation:
long ksGetQualityDefects (BSTR name,
double dimValue,
double* high,
double* low,
short inMM);
Входные параметры:
name - поле допуска,
dimValue - значение размера,
inMM - размерность параметров dimValue, high, low: 1 - миллиметры, 0 - единицы измерения текущего документа.
Выходные параметры:
high - верхнее отклонение,
low - нижнее отклонение.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksGetQualityNames - Получить указатель на динамический массив полей допусков ksDynamicArray, которые поддерживают размер dimValue и не превышают указанных отклонений
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetQualityNames. Синтаксис Automation:
long ksGetQualityNames (LPDISPATCH names,
double dimValue,
double high,
double low,
short system,
short withLimitation);
Входные параметры:
names - указатель на динамический массив ksDynamicArray типа CHAR_STR_ARR,
dimValue - номинал,
high - верхнее отклонение,
low - нижнее отклонение,
system - система: 1 - отверстия, 0 - вала,
withLimitation - признак учета ограничений: 0 - без учёта ограничений, 1 - с учётом ограничений, наложенных в системе.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksGetRelativePathFromFullPath - Сформировать относительный путь к файлу из полного пути к задающему файлу и полного пути к файлу
Интерфейс.... Аналог данного метода при использовании API экспортных функций - GetRelativePathFromFullPath. Синтаксис Automation:
BSTR ksGetRelativePathFromFullPath (BSTR mainFilePath,
BSTR sourcePath);
Входные параметры:
mainFilePath - полный путь к задающему файлу,
sourcePath - полный путь к требуемому файлу.
Возвращаемое значение:
- относительный путь к файлу.
ksGetRelativePathFromSystemPath - Сформировать относительный путь к файлу из заданного полного пути к файлу и системного пути установленного типа
Аналог данного метода при использовании API экспортных функций - ksGetRelativePathFromSystemPath. Синтаксис Automation:
BSTR ksGetRelativePathFromSystemPath (BSTR sourcePath, long pathType);
Входные параметры:
sourcePath - полный путь к файлу,
pathType - тип системной папки.
Возвращаемое значение:
- относительный путь к файлу.
ksGetSelectedEmbodimentAdditionalNumber - Вернуть дополнительный номер исполнения, выбранный в диалоге выбора файла (ksSelectD3Model)
Аналог данного метода при использовании API экспортных функций - ksGetSelectedEmbodimentAdditionalNumber. Синтаксис Automation:
BSTR ksGetSelectedEmbodimentAdditionalNumber();
Возвращаемое значение:
- дополнительный номер исполнения.
Примечание:
- В диалоге выбора файла KompasObject::ksSelectD3Model могут быть выбраны также обозначения исполнения, если они были созданы в файле модели.
- Получить выбранное обозначение исполнения можно с помощью функции KompasObject::ksGetSelectedEmbodimentMarking.
ksGetSelectedEmbodimentMarking - Вернуть обозначение исполнения, выбранное в диалоге выбора файла (ksSelectD3Model)
Аналог данного метода при использовании API экспортных функций - ksGetSelectedEmbodimentMarking. Синтаксис Automation:
BSTR ksGetSelectedEmbodimentMarking();
Возвращаемое значение:
- обозначение исполнения.
Примечание:
- В диалоге выбора файла KompasObject::ksSelectD3Model могут быть выбраны также дополнительные номера, если они были созданы в файле модели.
- Получить выбранный дополнительный номер исполнения можно с помощью функции KompasObject::ksGetSelectedEmbodimentAdditionalNumber.
ksGetSysOptions - Получить системные настройки
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetSysOptions. Синтаксис Automation:
long ksGetSysOptions (long optionsType, LPDISPATCH param);
Входной параметр:
optionsType - тип настройки.
Выходные параметры:
param - указатель на интерфейс параметров, соответствующий настройке.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Соответствие входных и выходных параметров...
ksGetSystemControlStartResult - Проверить запущен SystemControlStart или нет
Аналог данного метода при использовании API экспортных функций - ksGetSystemControlStartResult. Синтаксис Automation:
long ksGetSystemControlStartResult();
Входные параметры:
- не используется.
Возвращаемое значение:
тип выхода из режима работы под управлением системы КОМПАС.
ksGetSystemProfileString - Получить строку из файла инициализации системы или из реестра
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ksGetSystemProfileString. Синтаксис Automation:
BSTR ksGetSystemProfileString (BSTR lpSection,
BSTR lpKey);
Входные параметры:
lpSection - имя секции,
lpKey - имя ключа.
Возвращаемое значение:
строка из файла инициализации системы (kompasw.ini) или из реестра (Registry) - в случае успеха,
NULL - если секция или ключ не найдены.
Пример:
lpSection = "Directories"
lpKey = "Sys"
Результат: lpReturnedString = "c:\Program Files\Kompas54\Sys"
ksGetSystemVersion - Получить номер версии системы
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ksGetSystemVersion. Синтаксис Automation:
long ksGetSystemVersion (long* iMajor,
long* iMinor,
long* iRelease,
long* iBuild);
Выходные параметры:
iMajor - старшее слово версии,
iMinor - младшее слово версии,
iRelease - номер выпуска внутри одной версии,
iBuild - номер сборки внутри одного выпуска.
Возвращаемое значение:
1 - в случае удачного завершения.
Пример:
Для версии 5.4 Release 2 Build 1
iMajor = 5
iMinor = 4
iRelease = 2
iBuild = 1
Примечание: Любой из указателей может быть равен 0, тогда соответствующее ему значение не выдается.
ksGetWorkWindowColor - Получить цвет фона рабочего окна КОМПАС-ГРАФИК
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksGetWorkWindowColor. Синтаксис Automation:
long ksGetWorkWindowColor();
Возвращаемое значение:
- цвет фона рабочего окна.
ksIsEnableTaskAccess - Определить, разрешен ли доступ к задаче со стороны пользователя
Интерфейс.... Аналог данного метода при использовании API экспортных функций - IsEnableTaskAccess. Синтаксис Automation:
long ksIsEnableTaskAccess();
Возвращаемое значение:
0 - доступ к задаче со стороны пользователя запрещен,
1 - доступ к задаче со стороны пользователя разрешен.
Примечание: См. также KompasObject::ksEnableTaskAccess.
ksIsKompasCommandCheck - Проверить, нажата ли кнопка команды
Аналог данного метода при использовании API экспортных функций - ksIsKompasCommandCheck. Синтаксис Automation:
int LIB_FUNC ksIsKompasCommandCheck (long commandID);
Входные параметры:
commandID - константа из перечисления ProcessTypeEnum или ksKompasCommandEnum.
Возвращаемое значение:
1 - кнопка нажата,
0 - кнопка отжата.
ksIsKompasCommandEnable - Проверить доступность выполнения команды
Аналог данного метода при использовании API экспортных функций - ksIsKompasCommandEnable. Синтаксис Automation:
BOOL ksIsKompasCommandEnable (long commandID);
Входные параметры:
commandID - константа из перечисления ProcessTypeEnum или ksKompasCommandEnum.
Возвращаемое значение:
TRUE - команда доступна,
FALSE - команда недоступна.
ksIsLibraryEnabled - Проверить защиту библиотеки фрагментов и моделей
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksIsLibraryEnabled. Синтаксис Automation:
long ksIsLibraryEnabled(BSTR libName);
Входные параметры:
libName - имя библиотеки либо полное, либо относительно папки LIBS.
Возвращаемое значение:
1 - выполнить библиотеку можно,
0 - выполнить библиотеку нельзя.
Примечание: Функция применима для библиотек rtw, библиотек фрагментов lfr, библиотек моделей l3d
ksIsModule3DActive - Проверить, разрешена ли работа с модулем 3D
Аналог данного метода при использовании API экспортных функций - ksIsModule3DActive. Синтаксис Automation:
long ksIsModule3DActive();
Возвращаемое значение:
1 - работа с модулем 3D разрешена,
0 - работа с модулем 3D не разрешена.
ksIsModuleSpecificationActive - Проверить, разрешена ли работа со спецификацией
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksIsModuleSpecificationActive. Синтаксис Automation:
long ksIsModuleSpecificationActive();
Возвращаемое значение:
1 - работа со спецификацией разрешена,
0 - работа со спецификацией запрещена.
Примечание: Если ksIsModuleSpecificationActive == FALSE, работа со спецификацией запрещена. Для включения работы со спецификацией используйте метод KompasObject::ksModuleSpecification. Этот же метод позволяет отключить работу со спецификацией.
ksLockFileCache - Выключить/включить кеширование поиска файлов
Синтаксис Automation:
BOOL ksLockFileCache( BOOL lock );
Входные параметры:
lock - TRUE - запретить кеширование, - FALSE - разрешить кеширование.
Возвращаемое значение:
Предыдущее значение флага
Примечание: Кеширование включается при запуске библиотечной команды.
ksMaterialDlg - Проверить на получение и получить материал и его плотность из справочника материалов
Аналог данного метода при использовании API экспортных функций - ksMaterialDlg. Синтаксис Automation:
BSTR ksMaterialDlg (long HWindow,
long* res,
double* plt,
double* kod_size_1,
double* kod_size_2,
double* kod_size_3,
double* kod_size_4,
BSTR kod_tip);
Входные параметры:
Hwindow - дескриптор окна,
kod_tip - строка кодов типов сортаментов для отображения (через запятую) (0 - отображается все).
Выходные параметры:
res - результат работы функции: - 1 - справочник материалов не подключился, 0 - выход из диалога справочника материалов по отмене, 1- успешное завершение,
plt - плотность выбранного материала,
kod_size_1 - код вида типоразмера: 1 - толщина, 2 - диаметр, 0 - вид не определен,
kod_size_2 - значение размера вида толщина, диаметр, диаметр вписанной окружности, значение А типоразмеров вида АхВ или АхВхС,
kod_size_3 - значение В типоразмеров вида АхВ или АхВхС,
kod_size_4 - значение С типоразмеров вида АхВхС.
Возвращаемое значение:
строка с обозначением материала - в случае успешного завершения,
NULL - в случае неудачи.
Примечание: Метод устарел и не используется. Предназначался для работы со справочником материалов, который в настоящее время не входит в комплект поставки.
ksMessage - Выдать сообщение
Аналог данного метода при использовании API экспортных функций - Message. Синтаксис Automation:
BOOL ksMessage (BSTR message);
Входной параметр:
message - строка с текстом сообщения.
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksMessageBoxResult - Вывести сообщение, соответствующее результату работы библиотеки (с кодом ошибки)
Интерфейс.. Вывести сообщение, соответствующее результату работы библиотеки (с кодом ошибки). Аналог данного метода при использовании API экспортных функций - MessageBoxResult. Синтаксис Automation:
BOOL ksMessageBoxResult();
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
Примечание: Функция сбрасывает флаг ошибки в случае, если эта ошибка не является фатальной.
ksModule3D - Подключить 3D модуль для режима сетевой работы системы
Аналог данного метода при использовании API экспортных функций - ksModule3D. Синтаксис Automation:
long ksModule3D (BOOL attach);
Входные параметры:
attach TRUE - включить работу с 3D модулем, FALSE - отключить.
Возвращаемое значение:
1 - если был инициирован процесс подключения или отключения 3D модуля,
0 - в случае неудачи.
ksModuleSpecification - Управление возможностью работы со спецификацией
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksModuleSpecification. Синтаксис Automation:
long ksModuleSpecification (BOOL attach);
Входной параметр:
Attach - признак выполняемого действия: 1 - включить работу со спецификацией, 0 - выключить работу со спецификацией.
Возвращаемое значение:
1 - если был инициирован процесс включения или отключения возможности работы со спецификацией,
0 - в случае неудачного завершения.
Примечание: Проверить, включена или отключена возможность работы со спецификацией, можно с помощью метода KompasObject.
ksOpenHelpFile - Открыть файл справки
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ksOpenHelpFile. Синтаксис Automation:
BOOL ksOpenHelpFile (BSTR file, long command, long id);
Входные параметры:
file - полное имя файла Справки,
command - тип Справки (контекстная, по команде и т.д.),
id - идентификатор страницы справки.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
Примечание:
- Синтаксис соответствует WinHelp.
- Функция открывает файл Справки КОМПАС.
- При закрытии системы окно Справки закроется автоматически.
ksPrintKompasDocument - Печать КОМПАС-документа
Аналог данного метода при использовании API экспортных функций - ksPrintKompasDocument. Синтаксис Automation:
long ksPrintKompasDocument (BSTR fileName,
BSTR toFile,
double scale);
Входные параметры:
fileName - полное имя файла печатаемого документа,
toFile - имя файла, в который требуется выводить документ (*.prn и т.д.), или NULL, если нужно вывести сразу на принтер,
scale - масштаб вывода.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
ksPrintKompasDocumentEx - Печать КОМПАС-документа
Аналог данного метода при использовании API экспортных функций - ksPrintKompasDocumentEx. Синтаксис Automation:
long ksPrintKompasDocument (BSTR fileName,
BSTR toFile,
double scale,
BOOL fKompasPrinter);
Входные параметры:
fileName - полное имя файла печатаемого документа,
toFile - имя файла, в который требуется выводить документ (*.prn и т.д.), или NULL, если нужно вывести сразу на принтер,
scale - масштаб вывода,
fKompasPrint - TRUE используем принтер Компас, - FALSE - умолчательный принтер Windows.
Возвращаемое значение:
1 - в случае успешного завершения,
0 - в случае неудачи.
Примечание: Развитие метода KompasObject::ksPrintKompasDocument.
ksPrintPreviewWindow - Открыть окно предварительного просмотра документа перед печатью
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksPrintPreviewWindow. Синтаксис Automation:
long ksPrintPreviewWindow (LPDISPATCH docsArr, long inquiry);
Входные параметры:
docsArr - указатель на интерфейс динамического массива ksDynamicArray типа CHAR_STR_ARR,
inquiry - признак запроса документов: 1 - если docsArr = NULL или массив пуст, запросить документы у пользователя, 0 - показать документы без запроса.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
ksPumpWaitingMessages - Обработать все сообщения, имеющиеся в очереди сообщений задачи
Аналог данного метода при использовании API экспортных функций - PumpWaitingMessages. Синтаксис Automation:
BOOL ksPumpWaitingMessages();
Возвращаемое значение:
TRUE - в случае удачного завершения.
ksReadDouble - Запросить ввод вещественного числа с контролем попадания значения в заданный интервал
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ReadDouble. Синтаксис Automation:
long ksReadDouble (BSTR mess,
double defValue,
double min,
double max,
double* value);
Входные параметры:
mess - строка приглашения,
defValue - предлагаемое значение по умолчанию,
min, max - интервал возможных значений.
Выходной параметр:
value - результат ввода.
Возвращаемое значение:
1 - в случае удачного завершения.
ksReadInt - Запросить ввод целого числа с контролем попадания значения в заданный интервал
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ReadInt. Синтаксис Automation:
long ksReadInt (BSTR mess,
long defValue,
long min,
long max,
long* value);
Входные параметры:
mess - строка приглашения,
defValue - предлагаемое значение по умолчанию,
min, max - интервал возможных значений.
Выходной параметр:
value - результат ввода.
Возвращаемое значение:
1 - в случае удачного завершения.
ksReadString - Запросить ввод строки
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ReadString. Синтаксис Automation:
BSTR ksReadString (BSTR mess,
BSTR defValue);
Входные параметры:
mess - строка приглашения,
defValue - предлагаемое значение по умолчанию.
Возвращаемое значение:
- результат ввода.
ksRefreshActiveWindow - Обновить активное окно документа
Аналог данного метода при использовании API экспортных функций - ksRefreshActiveWindow. Синтаксис Automation:
long ksRefreshActiveWindow();
Возвращаемое значение:
1 - в случае удачного завершения.
0 - в случае неудачи.
ksRemoveUniqueFile - Удалить уникальный служебный файл
Интерфейс.. Аналог данного метода при использовании API экспортных функций - RemoveUniqueFile. Синтаксис Automation:
BOOL ksRemoveUniqueFile (BSTR fileName);
Входной параметр:
fileName - имя служебного файла.
Возвращаемое значение:
TRUE - в случае удачного завершения.
Примечание: Удалить служебный файл с уникальным именем, предварительно полученным с помощью функции ksUniqueFileName.
ksResultNULL - Обнулить результат работы библиотеки, если ошибка не фатальная
Интерфейс.... Аналог данного метода при использовании API экспортных функций - ResultNULL. Синтаксис Automation:
long ksResultNULL();
Возвращаемое значение:
0 - если ошибок не обнаружено,
1 - если ошибка была обнулена.
ksReturnResult - Получить результат работы библиотеки
Аналог данного метода при использовании API экспортных функций - ReturnResult. Синтаксис Automation:
long ksReturnResult();
Возвращаемое значение:
- Код ошибки в зависимости от типа документа: графического или документа-модели при выполнении библиотечной программы.
Примечание:
- Коды ошибок документа-модели и графического документа частично совпадают, поэтому их нужно обрабатывать в зависимости от выполняемых операций.
- Ошибка с номером >0 не является фатальной. Отрицательный номер ошибки приводит к завершению программы.
- Текст ошибок можно получить методом KompasObject::ksStrResult.
- Сообщение с текстом ошибки можно получить, используя метод KompasObject_ksMessageBoxResult.
- Сбросить ошибку, если она не фатальная, можно, используя метод KompasObject_ksResultNULL.
ksSaveFile - Выдать диалог выбора файла для сохранения
Аналог данного метода при использовании API экспортных функций - ksSaveFile. Синтаксис Automation:
BSTR ksSaveFile (BSTR ext,
BSTR oldName,
BSTR filter,
BOOL preview);
Входные параметры:
ext - расширение имени файла,
oldName - имя файла по умолчанию,
filter - фильтр поиска (0 - формируется автоматически),
preview - признак подключения окна предварительного просмотра: 1 - с подключением окна, 0 - без подключения окна.
Возвращаемое значение:
- строка с именем файла.
ksSelectD3Model - Выбрать из списка открытых или из файла модели
Аналог данного метода при использовании API экспортных функций - ksSelectD3Model. Синтаксис Automation:
BSTR ksSelectD3Model( BOOL onlyDetail, BOOL showAddNum );
Возвращаемое значение:
- имя файла,
Входные параметры:
onlyDetail - только файлы деталей,
showAddNum - отображать комбобокс выбора дополнительного номера.
Примечание:
- В диалоге выбора файла могут быть выбраны также обозначение исполнения и дополнительный номер исполнения, если они были созданы в файле модели.
- Получить выбранное обозначение исполнения можно с помощью метода KompasObject::ksGetSelectedEmbodimentMarking.
- Получить выбранный дополнительный номер исполнения можно с помощью метода KompasObject::ksGetSelectedEmbodimentAdditionalNumber.
ksSetCriticalProcess - Установить критический процесс
Аналог данного метода при использовании API экспортных функций - ksSetCriticalProcess. Синтаксис Automation:
long ksSetCriticalProcess();
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Примечание: До завершения ksCursor, ksPlacement или конца библиотечной команды системе не разрешается принудительно завершать работу библиотеки.
ksSetDebugMessagesMode - Включить/выключить режим автоматического вывода сообщений о результатах работы библиотеки
Аналог данного метода при использовании API экспортных функций - ksSetDebugMessagesMode. Синтаксис Automation:
BOOL ksSetDebugMessagesMode( BOOL debugMode );
Возвращаемое значение:
- предыдущее состояние флага режима.
ksSetDocOptions - Задать тип настройки текущего документа
Аналог данного метода при использовании API экспортных функций - SetDocOptions. Синтаксис Automation:
long ksSetDocOptions (long optionsType, LPDISPATCH param);
Входной параметр:
optionsType - тип настройки.
Выходной параметр:
param - указатель на интерфейс параметров.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Соответствие входных и выходных параметров...
ksSetSysOptions - Установить системные настройки
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksSetSysOptions. Синтаксис Automation:
long ksSetSysOptions (long optionsType, LPDISPATCH param);
Входные параметры:
optionsType - тип настройки.
Выходные параметры:
param - указатель на интерфейс параметров, соответствующий настройке.
Возвращаемое значение:
1 - в случае удачного завершения,
0 - в случае неудачи.
Соответствие входных и выходных параметров...
ksSlideBackground - Установить цвет фона по умолчанию для отрисовки слайда
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksSlideBackground. Синтаксис Automation:
BOOL ksSlideBackground (long color);
Входной параметр:
color - цвет фона слайда.
Возвращаемое значение:
TRUE - в случае удачного завершения,
FALSE - в случае неудачи.
ksStrResult - Получить строку сообщения, соответствующую результату работы библиотеки (с кодом ошибки)
Аналог данного метода при использовании API экспортных функций - StrResult. Синтаксис Automation:
BSTR ksStrResult();
Возвращаемое значение:
- строка сообщения, соответствующая результату работы библиотеки.
Примечание: Функция сбрасывает флаг ошибки в случае, если эта ошибка не является фатальной.
ksSystemControlStart - Перейти под управление КОМПАС-ГРАФИК
Аналог данного метода при использовании API экспортных функций - SystemControlStart. Синтаксис Automation:
long ksSystemControlStart (BSTR menuCommand);
Входной параметр:
menuCommand - строка, помещаемая в меню для возврата в библиотеку.
Возвращаемое значение:
тип выхода из режима работы под управлением системы КОМПАС.
Примечание: В результате вызова этого метода управление передается системе КОМПАС. В случае выполнения в системе КОМПАС одного из действий, описываемых возвращаемым значением, управление вновь передается библиотеке, и она должна соответствующим образом отреагировать на внешнее воздействие. Например, если пользователь вызовет команду закрытия КОМПАС, библиотека должна прекратить свои действия.
ksSystemControlStop - Отдать управление библиотеке
Интерфейс.. Аналог данного метода при использовании API экспортных функций - SystemControlStop Синтаксис Automation: BOOL ksSystemControlStop(); Возвращаемое значение:
| TRUE | - в случае удачного завершения. |
|---|---|
| Примечание: | |
| Функция принудительно передает управление библиотечной функции, запущенной в режиме немодального диалога (в этом случае управление может переходить от библиотеки к системе и наоборот). |
ksSystemPath - Получить системный путь установленного типа
Аналог данного метода при использовании API экспортных функций - ksSystemPath. Синтаксис Automation:
BSTR ksSystemPath(long folderType);
Входной параметр:
folderType - тип запрашиваемой системной папки.
Возвращаемое значение:
- строка с запрашиваемым путем.
ksUniqueFileName - Получить уникальное имя файла
Аналог данного метода при использовании API экспортных функций - UniqueFileName. Синтаксис Automation:
BSTR ksUniqueFileName();
Возвращаемое значение:
- строка с именем файла.
Примечание: Получить уникальное имя для создания служебного файла в процессе работы библиотеки. Имя регистрируется и запоминается системой. По окончании работы в случае, если файл с таким именем существует, он будет автоматически удален.
ksViewGetDensity - Выбрать из диалога плотность
Интерфейс.. Аналог данного метода при использовании API экспортных функций - ksViewGetDensity. Синтаксис Automation:
double ksViewGetDensity (long HWindow);
Входной параметр:
HWindow - дескриптор "родительского" окна или NULL.
Возвращаемое значение:
плотность (г/куб.мм) - в случае успешного завершения,
0 - в случае неудачи.
Примечание: Плотность выбирается из системного файла плотностей graphic.dns.
ksViewGetDensityAndMaterial - Выбрать из диалога плотность и наименование материала
Аналог данного метода при использовании API экспортных функций - ksViewGetDensityAndMaterial. Синтаксис Automation:
BSTR ksViewGetDensityAndMaterial (double *density, long HWindow);
Входные параметры:
Hwindow - дескриптор окна.
Выходные параметры:
density - плотность (г/куб.мм)
Возвращаемое значение:
Строка с обозначением материала - в случае успешного завершения,
NULL - в случае неудачи.
Примечание: Плотность выбирается из системного файла плотностей graphic.dns.
ksWriteSlide - Записать выделенные объекты чертежа в формате векторного слайда КОМПАС
Интерфейс.. Аналог данного метода при использовании API экспортных функций - WriteSlide. Синтаксис Automation:
long ksWriteSlide (BSTR fileName,
long slideId,
double x,
double y);
Входные параметры:
filename - имя файла для записи,
slideId - идентификатор слайда в файле ресурсов,
x, y - координаты базовой точки.
Возвращаемое значение:
1 - в случае удачного завершения.
Примечание: Функция выводит выделенные объекты изображения чертежа в формат векторного слайда КОМПАС. Документ должен быть открыт с отображением на экране.
ksYesNo - Подтвердить действие или отказаться от него
Аналог данного метода при использовании API экспортных функций - YesNo. Синтаксис Automation:
long ksYesNo (BSTR s);
Входной параметр:
s - строка сообщения.
Возвращаемое значение:
1 - при подтверждении действия,
0 - при отказе,
-1 - при отмене действия.
Примечание: Подтверждение означает нажатие в диалоге кнопки Да (Yes, OK); отказ - нажатие кнопки Нет (No); отмена действия - нажатие кнопки Отмена (Cansel).
LoadDSK - Загрузить dsk КОМПАС
Синтаксис Automation:
BOOL LoadDSK();
Возвращаемое значение:
TRUE - в случае удачного открытия dsk,
FALSE dsk не открыт, возможно открыт ранее.
Примечание: При открытии dsk будут подгружены документы и библиотеки, которые были подключены в последнем сеансе работы КОМПАС.
lookStyle - Тип отрисовки визуальной части приложения КОМПАС
Тип данных: long Синтаксис Automation:
lookStyle = iKompasObject.lookStyle Получить свойство (* )
iKompasObject.lookStyle = lookStyle Установить свойство (* )
lookStyle = iKompasObject.GetLookStyle() Получить свойство (**)
iKompasObject.SetLookStyle( lookStyle ) Установить свойство (**)
Примечание: Свойство lookStyle может принимать или возвращать значения из ksTypeLookStyle.
Quit - Закрыть приложение
Синтаксис Automation:
void Quit();
Входные параметры:
- не используется.
Возвращаемое значение:
- не используется.
SpcActiveDocument - Получить указатель на интерфейс для текущего документа-спецификации
Синтаксис Automation:
LPDISPATCH SpcActiveDocument();
Возвращаемое значение:
- указатель на интерфейс ksSpcDocument.
Примечание: Если документ спецификации не активен, функция возвращает NULL.
SpcDocument - Получить указатель на интерфейс документа-спецификации
Синтаксис Automation:
LPDISPATCH SpcDocument();
Возвращаемое значение:
- указатель на интерфейс ksSpcDocument.
TransferInterface - Преобразовать интерфейсный объект одного типа API в интерфейсный объект API другого типа
Аналог данного метода при использовании API экспортных функций - ksTransferInterface. Тип данных: LPUNKNOWN Синтаксис Automation:
LPUNKNOWN TransferInterface (LPUNKNOWN obj,
long newApiType,
long objNewType);
Входные параметры:
obj - интерфейс 3D COM, API5 Auto или API7,
apiNewType - тип API, к которому преобразуется исходный интерфейс, может принимать значения из ksAPITypeEnum,
objNewType - тип объекта в интерфейсе, к которому преобразуется исходный объект (может быть задан 0).
Возвращаемое значение:
- указатель на интерфейс объекта в API заданного типа.
Описание: Метод позволяет получить интерфейс объекта заданного типа objNewType в API заданного типа apiNewType по присланному объекту obj. Примечание:
- Исходным объектом может быть интерфейс 3D COM, API5 Auto или API7.
- Если новый тип API совпадает с API присланного объекта, возвращается присланный объект.
- Если задан новый тип API как неопределенный (0), возвращается присланный объект.
- Если задан новый тип API значением вне допустимого множества значений, возвращается NULL.
- Если задан новый тип объекта значением вне допустимого множества значений, возвращается NULL.
- Если задан новый тип объекта неопределенным значением (0), возвращается интерфейс базового объекта, совпадающий по типу с требуемым объектом, либо требуемый объект может быть получен от базового через QueryInterface; рекомендуется явно указывать требуемый тип объекта.
TransferReference - Преобразовать объект по reference из API5 в интерфейсный объект API7
Аналог данного метода при использовании API экспортных функций - ksTransferReference. Тип данных LPUNKNOWN Синтаксис Automation:
LPUNKNOWN ksTransferReference( long obj, long doc );
Входные параметры:
obj - указатель на объект в API5,
doc - указатель на документ, где находится объект.
Возвращаемое значение:
- указатель на интерфейс объекта в API7 (Тип данных:LPUNKNOWN).
Описание: Функция позволяет получить интерфейс объекта в API7 по присланному указателю obj в API5. Примечание:
- Функция реализована пока для документов и объектов вида графического документа. В остальных случаях возвращается NULL.
- Если obj - указатель на документ, параметр doc игнорируется.
- Если параметр doc = 0, берется текущий документ.
visible - Свойство видимости приложения
Тип данных: BOOL Синтаксис Automation:
visible = iKompasObject.Visible Получить свойство (* )
iKompasObject.Visible = visible Установить свойство (* )
visible = iKompasObject.GetVisible() Получить свойство (**)
iKompasObject.SetVisible (visible) Установить свойство (**)
Примечание: Позволяет получить и установить свойство видимости приложения КОМПАС-3D.