e1337e4016
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>
2053 lines
100 KiB
Markdown
2053 lines
100 KiB
Markdown
---
|
||
title: "KompasObject - Интерфейс API КОМПАС"
|
||
type: interface
|
||
api: [api7]
|
||
tags: [interface, api7, kompasobject]
|
||
sources:
|
||
- kompasobject.html
|
||
---
|
||
|
||
*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 - в случае неудачи.
|
||
```
|
||
Примечание:
|
||
1. Поддерживаются функции и переменные:
|
||
•SIN, COS, TAN, ATAN - тригонометрические функции (аргумент в радианах),
|
||
•SIND, COSD, TAND, ATAND - тригонометрические функции (аргумент в градусах),
|
||
•SQRT, EXP, LN, ABS - корень квадратный, экспонента, натуральный логарифм, абсолютное значение.
|
||
2. Если 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 - в случае ошибки.
|
||
```
|
||
Примечание:
|
||
1. Проверить доступность команды можно с помощью функции KompasObject::ksIsKompasCommandEnable.
|
||
2. Проверить, нажата ли в данный момент кнопка команды, можно с помощью 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 - в случае неудачи.
|
||
```
|
||
Примечание:
|
||
1. Документ при вызове этой функции не создается.
|
||
2. Независимо от используемого оформления возвращается:
|
||
| для чертежа | 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 связи между библиотеками (приложениями).
|
||
```
|
||
Примечание:
|
||
1. Метод не выполняет Addref на выдаваемый интерфейс.
|
||
2. Внешний интерфейс можно использовать для обмена данными между двумя приложениями. Первое приложение передает интерфейс при вызове метода KompasObject::ksExecuteKompasLibraryCommandEx.
|
||
3. После выполнения 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();
|
||
Возвращаемое значение:
|
||
- дополнительный номер исполнения.
|
||
```
|
||
Примечание:
|
||
1. В диалоге выбора файла KompasObject::ksSelectD3Model могут быть выбраны также обозначения исполнения, если они были созданы в файле модели.
|
||
2. Получить выбранное обозначение исполнения можно с помощью функции KompasObject::ksGetSelectedEmbodimentMarking.
|
||
|
||
|
||
## ksGetSelectedEmbodimentMarking - Вернуть обозначение исполнения, выбранное в диалоге выбора файла (ksSelectD3Model)
|
||
|
||
Аналог данного метода при использовании API экспортных функций - ksGetSelectedEmbodimentMarking.
|
||
Синтаксис Automation:
|
||
```
|
||
BSTR ksGetSelectedEmbodimentMarking();
|
||
Возвращаемое значение:
|
||
- обозначение исполнения.
|
||
```
|
||
Примечание:
|
||
1. В диалоге выбора файла KompasObject::ksSelectD3Model могут быть выбраны также дополнительные номера, если они были созданы в файле модели.
|
||
2. Получить выбранный дополнительный номер исполнения можно с помощью функции 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 - если секция или ключ не найдены.
|
||
```
|
||
Пример:
|
||
```vb
|
||
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 - в случае удачного завершения.
|
||
```
|
||
Пример:
|
||
```vb
|
||
Для версии 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 - в случае неудачи.
|
||
```
|
||
Примечание:
|
||
1. Синтаксис соответствует WinHelp.
|
||
2. Функция открывает файл Справки КОМПАС.
|
||
3. При закрытии системы окно Справки закроется автоматически.
|
||
|
||
|
||
## 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();
|
||
Возвращаемое значение:
|
||
- Код ошибки в зависимости от типа документа: графического или документа-модели при выполнении библиотечной программы.
|
||
```
|
||
Примечание:
|
||
1. Коды ошибок документа-модели и графического документа частично совпадают, поэтому их нужно обрабатывать в зависимости от выполняемых операций.
|
||
2. Ошибка с номером >0 не является фатальной. Отрицательный номер ошибки приводит к завершению программы.
|
||
3. Текст ошибок можно получить методом KompasObject::ksStrResult.
|
||
4. Сообщение с текстом ошибки можно получить, используя метод KompasObject_ksMessageBoxResult.
|
||
5. Сбросить ошибку, если она не фатальная, можно, используя метод 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 - отображать комбобокс выбора дополнительного номера.
|
||
```
|
||
Примечание:
|
||
1. В диалоге выбора файла могут быть выбраны также обозначение исполнения и дополнительный номер исполнения, если они были созданы в файле модели.
|
||
2. Получить выбранное обозначение исполнения можно с помощью метода KompasObject::ksGetSelectedEmbodimentMarking.
|
||
3. Получить выбранный дополнительный номер исполнения можно с помощью метода 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.
|
||
Примечание:
|
||
1. Исходным объектом может быть интерфейс 3D COM, API5 Auto или API7.
|
||
2. Если новый тип API совпадает с API присланного объекта, возвращается присланный объект.
|
||
3. Если задан новый тип API как неопределенный (0), возвращается присланный объект.
|
||
4. Если задан новый тип API значением вне допустимого множества значений, возвращается NULL.
|
||
5. Если задан новый тип объекта значением вне допустимого множества значений, возвращается NULL.
|
||
6. Если задан новый тип объекта неопределенным значением (0), возвращается интерфейс базового объекта, совпадающий по типу с требуемым объектом, либо требуемый объект может быть получен от базового через QueryInterface; рекомендуется явно указывать требуемый тип объекта.
|
||
|
||
|
||
## TransferReference - Преобразовать объект по reference из API5 в интерфейсный объект API7
|
||
|
||
Аналог данного метода при использовании API экспортных функций - ksTransferReference.
|
||
Тип данных LPUNKNOWN
|
||
Синтаксис Automation:
|
||
```
|
||
LPUNKNOWN ksTransferReference( long obj, long doc );
|
||
Входные параметры:
|
||
obj - указатель на объект в API5,
|
||
doc - указатель на документ, где находится объект.
|
||
Возвращаемое значение:
|
||
- указатель на интерфейс объекта в API7 (Тип данных:LPUNKNOWN).
|
||
```
|
||
Описание:
|
||
Функция позволяет получить интерфейс объекта в API7 по присланному указателю obj в API5.
|
||
Примечание:
|
||
1. Функция реализована пока для документов и объектов вида графического документа. В остальных случаях возвращается NULL.
|
||
2. Если obj - указатель на документ, параметр doc игнорируется.
|
||
3. Если параметр doc = 0, берется текущий документ.
|
||
|
||
|
||
## visible - Свойство видимости приложения
|
||
|
||
Тип данных: BOOL
|
||
Синтаксис Automation:
|
||
```
|
||
visible = iKompasObject.Visible Получить свойство (* )
|
||
iKompasObject.Visible = visible Установить свойство (* )
|
||
visible = iKompasObject.GetVisible() Получить свойство (**)
|
||
iKompasObject.SetVisible (visible) Установить свойство (**)
|
||
```
|
||
Примечание:
|
||
Позволяет получить и установить свойство видимости приложения КОМПАС-3D.
|