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>
10 KiB
title, type, api, tags, sources
| title | type | api | tags | sources | |||||
|---|---|---|---|---|---|---|---|---|---|
| Интерфейс ISurfacesIntersectionCurve | interface |
|
|
|
*API интерфейсов. Версия 7 > Документ 3D > Вспомогательные объекты, 3D-кривые и элементы тела > 3D-кривые и элементы тела > Интерфейс IModelObjects > IModelObjects - свойства *
Интерфейс ISurfacesIntersectionCurve
Интерфейс кривых пересечений поверхностей. Иерархия: IKompasAPIObject IModelObject ISurfacesIntersectionCurve Описание: Интерфейс позволяет создать кривую пересечения двух поверхностей, или двух наборов поверхностей, или поверхности и набора. Примечание: Интерфейс можно получить с помощью свойства ISurfacesIntersectionCurves::SurfacesIntersectionCurve и метода ISurfacesIntersectionCurves::Add.
AddObjects - Добавить элемент(ы) в указанный набор
Синтаксис Automation:
BOOL AddObjects( BOOL ForArray1, VARIANT * Objects );
Синтаксис COM:
HRESULT AddObjects( BOOL ForArray1, VARIANT * Objects, BOOL * Res );
Выходные параметры:
ForArray1 - TRUE - первый набор, - FALSE - второй набор,
Objects - набор граней.
Возвращаемое значение:
TRUE - в случае удачи.
Примечание: Если в набор добавляется одна грань, то ее можно передать как VT_DISPATCH. Если в набор добавляется несколько граней, то нужно передать массив VT_ARRAY | VT_DISPATCH.
AutoCheck - Включение/выключение автоматического выбора всех массивов ребер
Тип данных: BOOL Синтаксис Automation:
AutoCheck = Object.AutoCheck Получить свойство (* )
Object.AutoCheck = AutoCheck Установить свойство (* )
AutoCheck = Object.GetAutoCheck() Получить свойство (**)
Object.SetAutoCheck( AutoCheck ) Установить свойство (**)
Синтаксис COM:
Object.get_AutoCheck( &AutoCheck ) Получить свойство
Object.put_AutoCheck( AutoCheck ) Установить свойство
Свойство позволяет включать и отключать автоматический выбор всех массивов ребер.
Clear - Очистить указанный набор объектов
Синтаксис Automation:
BOOL Clear( BOOL ForArray1 );
Синтаксис COM:
HRESULT Clear( BOOL ForArray1, BOOL * Res );
Выходные параметры:
ForArray1 - TRUE - первый набор, - FALSE - второй набор.
Возвращаемое значение:
TRUE - в случае удачи.
Edges - Количество массивов ребер в кривой пересечения поверхностей
Тип данных: VARIANT Синтаксис Automation:
Edges = Object.Edges( EdgesArrayIndex ) Получить свойство (* )
Edges = Object.GetEdges( EdgesArrayIndex ) Получить свойство (**)
Синтаксис COM:
Object.get_Edges( EdgesArrayIndex, &Edges ) Получить свойство
Входные параметры:
EdgesArrayIndex - индекс массива ребер
Примечание: Свойство доступно только для чтения. В зависимости от количества ребер возвращается: •нет ребер - VT_EMPTY (если указан неправильный индекс или ребра не созданы), •одно ребро - VT_DISPATCH, •более одного ребра - VT_ARRAY | VT_DISPATCH. Индекс должен быть в диапазоне 0...ISurfacesIntersectionCurve::EdgesArraysCount-1.
EdgesArraysCount - Количество массивов ребер в кривой пересечения поверхностей
Тип данных: long Синтаксис Automation:
EdgesArraysCount = Object.EdgesArraysCount Получить свойство (* )
EdgesArraysCount = Object.GetEdgesArraysCount() Получить свойство (**)
Синтаксис COM:
Object.get_EdgesArraysCount( &EdgesArraysCount ) Получить свойство
Свойство позволяет получить количество массивов ребер в кривой пересечения поверхностей.
Примечание: Свойство доступно только для чтения.
EdgesCheck - Признак выбора указанного по индексу массива ребер
Тип данных: BOOL Синтаксис Automation:
EdgesCheck = Object.EdgesCheck( EdgesArrayIndex ) Получить свойство (* )
Object.EdgesCheck( EdgesArrayIndex ) = EdgesCheck Установить свойство (* )
EdgesCheck = Object.GetEdgesCheck( EdgesArrayIndex ) Получить свойство (**)
Object.SetEdgesCheck( EdgesArrayIndex, EdgesCheck) Установить свойство (**)
Синтаксис COM:
Object.get_EdgesCheck( EdgesArrayIndex, &EdgesCheck ) Получить свойство
Object.put_EdgesCheck( EdgesArrayIndex, EdgesCheck ) Установить свойство
Входные параметры:
EdgesArrayIndex - индекс массива ребер.
Примечание: Индекс должен быть в диапазоне 0...ISurfacesIntersectionCurve::EdgesArraysCount-1.
EdgesChecks - Признаки выбора массивов ребер
Тип данных: VARIANT типа VT_ARRAY | VT_BOOL Синтаксис Automation:
EdgesChecks = Object.EdgesChecks Получить свойство (* )
Object.EdgesChecks = EdgesChecks Установить свойство (* )
EdgesChecks = Object.GetEdgesChecks() Получить свойство (**)
Object.SetEdgesChecks( EdgesChecks ) Установить свойство (**)
Синтаксис COM:
Object.get_EdgesChecks( &EdgesChecks ) Получить свойство
Object.put_EdgesChecks( EdgesChecks ) Установить свойство
Свойство позволяет устанавливать и получать признаки выбора массива ребер.
EdgesChecksCount - Количество доступных для создания контуров
Тип данных: long Синтаксис Automation:
EdgesChecksCount = Object.EdgesChecksCount Получить свойство (* )
EdgesChecksCount = Object.GetEdgesChecksCount() Получить свойство (**)
Синтаксис COM:
Object.get_EdgesChecksCount( &EdgesChecksCount ) Получить свойство
Примечание: Свойство доступно только для чтения.
GetObject - Получить объект из указанного наборапо индексу
Синтаксис Automation:
LPDISPATCH GetObject( BOOL ForArray1, long Index );
Синтаксис COM:
HRESULT GetObject( BOOL ForArray1, long Index, IModelObject **Object );
Выходные параметры:
ForArray1 - TRUE - первый набор, - FALSE - второй набор,
Index - индекс объекта в наборе.
Возвращаемое значение:
- указатель на интерфейс IModelObject.
GetObjects - Получить 1-й и 2-й наборы поверхностей
Синтаксис Automation:
BOOL GetObjects( VARIANT * ObjectsArray1, VARIANT * ObjectsArray2 );
Синтаксис COM:
HRESULT GetObjects( VARIANT * ObjectsArray1, VARIANT * ObjectsArray2, BOOL * Res );
Выходные параметры:
ObjectsArray1 - первый набор граней,
ObjectsArray2 - первый набор граней.
Возвращаемое значение:
TRUE - в случае удачи.
Примечание: Если в наборе одна грань, то она возвращается как VT_DISPATCH. Если в наборе несколько граней, то возвращается массив VT_ARRAY | VT_DISPATCH.
ObjectsCount - Получить количество объектов в указанном наборе
Тип данных: long Синтаксис Automation:
ObjectsCount = Object.ObjectsCount( ForArray1 ) Получить свойство (* )
ObjectsCount = Object.GetObjectsCount( ForArray1 ) Получить свойство (**)
Синтаксис COM:
Object.get_ObjectsCount( ForArray1, &ObjectsCount ) Получить свойство
Входные параметры:
ForArray1 - TRUE - первый набор, - FALSE - второй набор.
Свойство позволяет получить количество объектов в указанном наборе.
Примечание: Свойство доступно только для чтения.
SetObjects - Задать 1-й и 2-й наборы поверхностей
Синтаксис Automation:
BOOL SetObjects( VARIANT ObjectsArray1, VARIANT ObjectsArray2 )
Синтаксис COM:
HRESULT SetObjects( VARIANT ObjectsArray1, VARIANT ObjectsArray2, BOOL * Res );
Входные параметры:
ObjectsArray1 - первый набор граней,
ObjectsArray2 - первый набор граней.
Возвращаемое значение:
TRUE - в случае удачи.
Примечание: Если требуется передать одну грань в наборе, ее можно передать как VT_DISPATCH. Если требуется передать несколько граней в наборе, то нужно передать его как массив VT_ARRAY | VT_DISPATCH.