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>
236 lines
9.3 KiB
Markdown
236 lines
9.3 KiB
Markdown
---
|
||
title: "Интерфейс IFeaturePattern"
|
||
type: interface
|
||
api: [api7]
|
||
domain: [sketch, feature]
|
||
tags: [interface, api7, sketch, feature, ifeaturepattern]
|
||
sources:
|
||
- ifeaturepattern.html
|
||
---
|
||
|
||
*API интерфейсов. Версия 7 > Документ 3D > Операции, массивы, эскизы, точки > Массивы *
|
||
|
||
|
||
## Интерфейс IFeaturePattern
|
||
|
||
Базовый интерфейс работы с массивами.
|
||
Иерархия:
|
||
IDispatch
|
||
IFeaturePattern
|
||
Интерфейс позволяет получать и изменять общие параметры для операций копирования.
|
||
В зависимости от типа объекта используется определенный интерфейс операции копирования.
|
||
|
||
|
||
## AddInitialObjects - Добавить объекты в массив копируемых объектов
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL AddInitialObjects( VARIANT Objects );
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT AddInitialObjects( VARIANT Objects, BOOL * Result );
|
||
Входные параметры:
|
||
Object - объект - тип VARIANT-а VT_DISPATCH или список объектов - тип VARIANT-а VT_ARRAY VT_DISPATCH.
|
||
Возвращаемое значение:
|
||
TRUE - в случае удачи.
|
||
```
|
||
|
||
|
||
## BasePoint - Базовая точка
|
||
|
||
Тип данных: Указатель на интерфейс IModelObject
|
||
Синтаксис Automation:
|
||
```
|
||
BasePoint = Object.BasePoint Получить свойство (* )
|
||
Object.BasePoint = BasePoint Установить свойство (* )
|
||
BasePoint = Object.GetBasePoint() Получить свойство (**)
|
||
Object.SetBasePoint( BasePoint ) Установить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_BasePoint( &BasePoint ) Получить свойство
|
||
Object.put_BasePoint( BasePoint ) Установить свойство
|
||
```
|
||
|
||
|
||
## BasePointType - Способ задания базовой точки
|
||
|
||
Тип данных: из перечисления ksPatternBasePointTypeEnum
|
||
Синтаксис Automation:
|
||
```
|
||
BasePointType = Object.BasePointType Получить свойство (* )
|
||
BasePointType = Object.BasePointType Установить свойство (* )
|
||
BasePointType = Object.GetBasePointType() Получить свойство (**)
|
||
Object.SetBasePointType( BasePointType ) Установить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_BasePointType( &BasePointType ) Получить свойство
|
||
Object.put_BasePointType( BasePointType ) Установить свойство
|
||
```
|
||
|
||
|
||
## Clear - Очистить список исходных объектов массива
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL Clear();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT Clear( BOOL * Result );
|
||
Возвращаемое значение:
|
||
TRUE - в случае удачи.
|
||
```
|
||
|
||
|
||
## Destroy - Разрушить массив
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL Destroy();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT Destroy( BOOL * Result );
|
||
Возвращаемое значение:
|
||
TRUE - в случае удачи.
|
||
```
|
||
|
||
|
||
## Exemplar - Получить экземпляр по индексу (или индексам)
|
||
|
||
Тип данных: Указатель на интерфейс IModelObject
|
||
Синтаксис Automation:
|
||
```
|
||
Exemplar = Object.Exemplar( index1, index2 ) Получить свойство (* )
|
||
Exemplar = Object.GetExemplar( index1, index2 ) Получить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_Exemplar( index1, index2, &Exemplar ) Получить свойство
|
||
Входные параметры
|
||
index1, index2 - индекс экземпляра
|
||
```
|
||
Примечание:
|
||
Свойство доступно только для чтения.
|
||
Значения индексов начинаются с 1.
|
||
В массиве по кривой используется один индекс (первый).
|
||
|
||
|
||
## GeometryPattern - Признак использования геометрического копирования
|
||
|
||
Тип данных: BOOL
|
||
Синтаксис Automation:
|
||
```
|
||
GeometryPattern = Object.GeometryPattern Получить свойство (* )
|
||
Object.GeometryPattern = GeometryPattern Установить свойство (* )
|
||
GeometryPattern = Object.GetGeometryPattern() Получить свойство (**)
|
||
Object.SetGeometryPattern( GeometryPattern ) Установить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_GeometryPattern( &GeometryPattern ) Получить свойство
|
||
Object.put_GeometryPattern( GeometryPattern ) Установить свойство
|
||
Значения свойства:
|
||
TRUE - используется геометрический массив,
|
||
FALSE - не используется геометрический массив.
|
||
```
|
||
|
||
|
||
## GetExemplarsCounts - Получить количество экземпляров
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL GetExemplarsCounts( long * Count1, long * Count2 );
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT GetExemplarsCounts( long * Count1, long * Count2, BOOL * Result );
|
||
Выходные параметры:
|
||
Count1 - количество экземпляров в первом направлении копирования,
|
||
Count2 - количество экземпляров во втором направлении копирования.
|
||
Возвращаемое значение:
|
||
TRUE - в случае удачи.
|
||
```
|
||
Примечание:
|
||
Два направления копирования имеют массивы по сетке и по концентрической сетке.
|
||
Для массивов остальных типов Count2 равен 1.
|
||
|
||
|
||
## InitialObjects - Исходные объекты массива
|
||
|
||
Тип данных: VARIANT
|
||
Синтаксис Automation:
|
||
```
|
||
InitialObjects = Object.InitialObjects Получить свойство (* )
|
||
Object.InitialObjects = InitialObjects Установить свойство (* )
|
||
InitialObjects = Object.GetInitialObjects() Получить свойство (**)
|
||
Object.SetInitialObjects( InitialObjects ) Установить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_InitialObjects( &InitialObjects ) Получить свойство
|
||
Object.put_InitialObjects( InitialObjects ) Установить свойство
|
||
```
|
||
Примечание:
|
||
Если копируется один объект, то возвращается VARIANT с типом VT_DISPATCH.
|
||
Если копируется более одного объекта, то возвращается VARIANT с типом VT_ARRAY | VT_DISPATCH.
|
||
|
||
|
||
## InstanceDeletedIndexes - Список удаленных экземпляров массива
|
||
|
||
Тип данных: VARIANT
|
||
Синтаксис Automation:
|
||
```
|
||
InstanceDeletedIndexes = Object.InstanceDeletedIndexes Получить свойство (* )
|
||
Object.InstanceDeletedIndexes = InstanceDeletedIndexes Установить свойство (* )
|
||
InstanceDeletedIndexes = Object.GetInstanceDeletedIndexes() Получить свойство (**)
|
||
Object.SetInstanceDeletedIndexes( InstanceDeletedIndexes ) Установить свойство (**)
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
Object.get_InstanceDeletedIndexes( &InstanceDeletedIndexes ) Получить свойство
|
||
Object.put_InstanceDeletedIndexes( InstanceDeletedIndexes ) Установить свойство
|
||
```
|
||
Примечания:
|
||
Возвращается массив SafeArray VT_ARRAY | VT_I4.
|
||
Свойства применяется для получения информации об удаленных копиях, а также управления составом удаленных копий.
|
||
Информация об удаленной копии выдается в виде индексов копии в узоре копирования.
|
||
В общем случае это два индекса по ортогональным осям в плоскости узора.
|
||
Для копий по кривой используется один индекс (первый).
|
||
Значения индексов начинаются с 1.
|
||
|
||
|
||
## IsInitialObject - Проверка: является ли объект исходным для массива
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL IsInitialObject( IModelObject * Object );
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT IsInitialObject( IModelObject * Object, BOOL * Result );
|
||
Входные параметры:
|
||
Object - указатель на объект IModelObject.
|
||
Возвращаемое значение:
|
||
TRUE - если объект есть в списке копируемых объектов.
|
||
```
|
||
|
||
|
||
## IsSuitableObject - Проверка пригодности объекта для операции
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL IsSuitableObject( IModelObject * Object );
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
HRESULT IsSuitableObject( IModelObject * Object, BOOL * Result );
|
||
Входные параметры:
|
||
Object - указатель на объект IModelObject.
|
||
Возвращаемое значение:
|
||
TRUE - указанный объект можно скопировать с помощью данной операции.
|
||
```
|