--- title: "Библиотека моделей (Интерфейсы ksModelLibrary и IModelLibrary )" type: interface api: [api7] tags: [interface, api7, ksmodellibrary] sources: - ksmodellibrary.html --- *API интерфейсов. Версия 5 > Интерфейсы работы с библиотеками * ## Библиотека моделей (Интерфейсы ksModelLibrary и IModelLibrary ) Интерфейс библиотеки трехмерных моделей. | ksModelLibrary | - интерфейс Automation | | --- | --- | | IModelLibrary | - интерфейс COM | Примечания: Указатель на этот интерфейс при использовании Automation можно получить при помощи метода KompasObject::GetModelLibrary. При использовании COM интерфейс можно получить при помощи экспортной функции ksGetModelLibrary. ## AddD3DocumentToLibrary - Добавить модель с указанным именем файла в указанную библиотеку моделей Функция не поддерживается Синтаксис Automation: ``` long AddD3DocumentToLibrary (BSTR libName, BSTR libFile); ``` Синтаксис COM: ``` long AddD3DocumentToLibrary (LPOLESTR libName, LPOLESTR fileName); Входные параметры: libName - имя файла библиотеки моделей, libFile - имя файла модели. Возвращаемое значение: 1 - в случае успешного завершения. ``` Примечание: Имя файла библиотеки моделей должно содержать путь внутри библиотеки и имя модели, например: "c:\gr\lib1.l3d|детали|литье|фланец", где c:\gr\lib1.l3d - имя файла библиотеки моделей, |детали|литье| - разделы, подразделы внутри библиотеки фрагментов, фланец - имя модели. ## CheckModelLibrary - Проверить, открыта ли указанная библиотека моделей Функция не поддерживается Синтаксис Automation: ``` long CheckModelLibrary (BSTR libName, BOOL possibleMessage); ``` Синтаксис COM: ``` long CheckModelLibrary (LPOLESTR libName, BOOL possibleMessage); Входные параметры: libName - имя файла библиотеки моделей, possibleMessage - признак, показывающий, нужно ли выдать сообщение об открытии библиотеки: TRUE - сообщение выдается, FALSE - сообщение не выдается. Возвращаемое значение: 1 - библиотека открыта (успешное завершение), 0 - библиотека закрыта. ``` ## ChoiceModelFromLib - Выбор модели из библиотеки Синтаксис Automation: ``` BSTR ChoiceModelFromLib (BSTR libFile, long* type); ``` Синтаксис COM: ``` LPOLESTR ChoiceModelFromLib (LPOLESTR libFile, long* type); Входной параметр: libFile - путь к файлу в библиотеке моделей. Выходной параметр: type - тип возвращаемого пути. Типы пути в библиотеке моделей... Возвращаемое значение: путь к модели - в случае успешного завершения. ``` ## ExistModelInLibrary - Проверить, существует ли в библиотеке указанная модель или папка Синтаксис Automation: ``` long ExistModelInLibrary (BSTR name); ``` Синтаксис COM: ``` long ExistModelInLibrary (LPOLESTR name); Входной параметр: name - имя файла библиотеки моделей и модели (или папки) в нем. Возвращаемое значение: -1 - указанная библиотека не существует, 0 - указанная модель или папка не существует, 1 - модель или папка существует. ``` Примечание: Допускается задание имени файла библиотеки следующего вида: "c:\gr\lib1.l3d|детали|литье|фланец", где c:\gr\lib1.l3d - имя файла библиотеки моделей, |детали|литье| - разделы, подразделы внутри библиотеки фрагментов, фланец - имя модели. ## ModelLibraryOperation - Действия с библиотекой моделей Функция не поддерживается Синтаксис Automation: ``` long ModelLibraryOperation (BSTR libName, long type); ``` Синтаксис COM: ``` long ModelLibraryOperation (LPOLESTR libName, long type); Входные параметры: libName - имя файла библиотеки моделей, type - тип действия. Типы действий с библиотекой моделей... Возвращаемое значение: 1 - в случае успешного завершения. ``` Примечания: 1. При выполнении операций -1, 0, 1, 4, 5 libName - полное имя файла библиотеки моделей. 2. При выполнении операций 2, 3 libName - полное имя файла библиотеки моделей путь внутри библиотеки с именем редактируемой модели. 3. Допускается задание имени файла библиотеки следующего вида: "c:\gr\lib1.l3d|детали|литье|фланец", где c:\gr\lib1.l3d - имя файла библиотеки моделей, |детали|литье| - разделы, подразделы внутри библиотеки моделей, фланец - имя модели.