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>
289 lines
11 KiB
Markdown
289 lines
11 KiB
Markdown
---
|
||
title: "Копия компонентов сборки по параллельной сетке (Интерфейсы ksMeshPartArrayDefinition, IMeshPartArrayDefinition)"
|
||
type: interface
|
||
api: [api7]
|
||
domain: [2d, assembly]
|
||
tags: [interface, api7, 2d, assembly, ksmeshpartarraydefinition]
|
||
sources:
|
||
- ksmeshpartarraydefinition.html
|
||
---
|
||
|
||
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart > Объект модели (Интерфейсы ksEntity и IEntity) > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента) > Интерфейсы копирования компонентов сборки *
|
||
|
||
|
||
## Копия компонентов сборки по параллельной сетке (Интерфейсы ksMeshPartArrayDefinition, IMeshPartArrayDefinition)
|
||
|
||
Интерфейс операции копирования компонентов сборки по параллелограммной сетке.
|
||
| ksMeshPartArrayDefinition | - интерфейс Automation |
|
||
| --- | --- |
|
||
| IMeshPartArrayDefinition | - интерфейс COM |
|
||
Примечание:
|
||
Данный интерфейс можно получить, используя метод интерфейса элемента модели ksEntity::GetDefinition или IEntity::GetDefinition.
|
||
|
||
|
||
## angle1- Угол наклона первой оси в текущей системе координат
|
||
|
||
Тип данных: double
|
||
Синтаксис Automation:
|
||
```
|
||
angle1 = iMeshArray.angle1 Получить свойство(* )
|
||
iMeshArray.angle1 = angle1 Установить свойство (* )
|
||
angle1 = iMeshArray.GetAngle1() Получить свойство (**)
|
||
iMeshArray.SetAngle1(angle1) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## angle2 - Угол наклона второй оси сетки относительно первой
|
||
|
||
Тип данных: double
|
||
Синтаксис Automation:
|
||
```
|
||
angle2 = iMeshArray.angle2 Получить свойство(* )
|
||
iMeshArray.angle2 = angle2 Установить свойство (* )
|
||
angle2 = iMeshArray.GetAngle2() Получить свойство (**)
|
||
iMeshArray.SetAngle2(angle2) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## count1 - Количество копий вдоль первой оси
|
||
|
||
Тип данных: long
|
||
Синтаксис Automation:
|
||
```
|
||
count1 = iMeshArray.count1 Получить свойство(* )
|
||
iMeshArray.count1 = count1 Установить свойство (* )
|
||
count1 = iMeshArray.GetCount1() Получить свойство (**)
|
||
iMeshArray.SetCount1(count1) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## count2 - Количество копий вдоль второй оси
|
||
|
||
Тип данных: long
|
||
Синтаксис Automation:
|
||
```
|
||
count2 = iMeshArray.count2 Получить свойство(* )
|
||
iMeshArray.count2 = count2 Установить свойство (* )
|
||
count2 = iMeshArray.GetCount2() Получить свойство (**)
|
||
iMeshArray.SetCount2(count2) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## DeletedCollection - Получить массив индексов удаленных копий
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
LPDISPATCH DeletedCollection();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
LPDELETEDCOPYCOLLECTION DeletedCollection();
|
||
Возвращаемое значение:
|
||
указатель на интерфейс ksDeletedCopyCollection или IDeletedCopyCollection. - в случае успешного завершения,
|
||
NULL - в случае неудачи.
|
||
```
|
||
Примечание:
|
||
Интерфейс применяется для массивов компонентов и операций копирования, для получения информации о удаленных копиях, а также управления составом удаленных копий. Информация о удаленной копии выдается в виде индексов копии в узоре копирования. В общем случае это два индекса по ортогональным осям в плоскости узора. Для копий по кривой используется один индекс (первый). Значения индексов начинаются с 1.
|
||
|
||
|
||
## factor1 - Признак полного шага копирования вдоль первой оси
|
||
|
||
Тип данных: BOOL
|
||
Значения свойства:
|
||
| TRUE | - свойство step1 устанавливает расстояние между крайними элементами вдоль 1-ой оси, |
|
||
| --- | --- |
|
||
| FALSE | - свойство step1 устанавливает расстояние между соседними элементами вдоль 1-ой оси. |
|
||
Синтаксис Automation:
|
||
```
|
||
factor1 = iMeshArray.factor1 Получить свойство(* )
|
||
iMeshArray.factor1 = factor1 Установить свойство (* )
|
||
factor1 = iMeshArray.GetFactor1() Получить свойство (**)
|
||
iMeshArray.SetFactor1(factor1) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## factor2 - Признак полного шага копирования вдоль второй оси
|
||
|
||
Тип данных: BOOL
|
||
Значения свойства:
|
||
| TRUE | - свойство step2 устанавливает расстояние между крайними элементами вдоль второй оси, |
|
||
| --- | --- |
|
||
| FALSE | - свойство step2 устанавливает расстояние между соседними элементами вдоль второй оси. |
|
||
Синтаксис Automation:
|
||
```
|
||
factor2 = iMeshArray.factor2 Получить свойство(* )
|
||
iMeshArray.factor2 = factor2 Установить свойство (* )
|
||
factor2 = iMeshArray.GetFactor2() Получить свойство (**)
|
||
iMeshArray.SetFactor2(factor2) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## GetAxis1 - Получить первую ось сетки
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
LPDISPATCH GetAxis1();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
LPENTITY GetAxis1();
|
||
Возвращаемое значение:
|
||
- указатель на интерфейс оси ksEntity или IEntity.
|
||
```
|
||
|
||
|
||
## GetAxis2 - Получить вторую ось сетки
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
LPDISPATCH GetAxis2();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
LPENTITY GetAxis2();
|
||
Возвращаемое значение:
|
||
- указатель на интерфейс оси ksEntity или IEntity.
|
||
```
|
||
|
||
|
||
## GetCopyParamAlongAxis - Получить параметры копирования вдоль оси
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL GetCopyParamAlongAxis (BOOL firstAxis,
|
||
double * angle,
|
||
long * count,
|
||
double * step,
|
||
BOOL * factor);
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
BOOL GetCopyParamAlongAxis (BOOL firstAxis,
|
||
double * angle,
|
||
long * count,
|
||
double * step,
|
||
BOOL * factor);
|
||
Выходные параметры:
|
||
firstAxis - ось: TRUE - первая, FALSE - вторая,
|
||
angle - угол наклона оси,
|
||
count - количество копий,
|
||
step - шаг вдоль оси,
|
||
factor - признак полного шага.
|
||
Возвращаемое значение:
|
||
TRUE - в случае успешного завершения.
|
||
```
|
||
|
||
|
||
## insideFlag - Признак наличия копий внутри сетки
|
||
|
||
Тип данных: BOOL
|
||
Значения свойства:
|
||
| TRUE | - оставлять экземпляры копий во всех узлах сетки, |
|
||
| --- | --- |
|
||
| FALSE | - оставлять экземпляры копий только по периметру сетки. |
|
||
Синтаксис Automation:
|
||
```
|
||
insideFlag = iMeshArray.insideFlag Получить свойство(* )
|
||
iMeshArray.insideFlag = insideFlag Установить свойство (* )
|
||
insideFlag = iMeshArray.GetInsideFlag() Получить свойство (**)
|
||
iMeshArray.SetInsideFlag(insideFlag) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## PartArray - Получить указатель на массив компонентов для копирования
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
LPDISPATCH PartArray();
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
LPPARTCOLLECTION PartArray();
|
||
Возвращаемое значение:
|
||
- указатель на интерфейс динамического массива компонентов, подлежащих копированию ksPartCollection или IPartCollection.
|
||
```
|
||
|
||
|
||
## SetAxis1 - Установить первую ось сетки
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL SetAxis1 (LPDISPATCH axis);
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
BOOL SetAxis1 (LPENTITY axis);
|
||
Входной параметр:
|
||
axis - указатель на интерфейс оси ksEntity или IEntity.
|
||
Возвращаемое значение:
|
||
TRUE - в случае успешного завершения.
|
||
```
|
||
|
||
|
||
## SetAxis2 - Установить вторую ось сетки
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL SetAxis2 (LPDISPATCH axis);
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
BOOL SetAxis2 (LPENTITY axis);
|
||
Входной параметр:
|
||
axis - указатель на интерфейс оси операции ksEntity или IEntity.
|
||
Возвращаемое значение:
|
||
TRUE - в случае успешного завершения.
|
||
```
|
||
|
||
|
||
## SetCopyParamAlongAxis - Установить параметры копирования вдоль оси
|
||
|
||
Синтаксис Automation:
|
||
```
|
||
BOOL SetCopyParamAlongAxis (BOOL firstAxis,
|
||
double angle,
|
||
long count,
|
||
double step,
|
||
BOOL factor);
|
||
```
|
||
Синтаксис COM:
|
||
```
|
||
BOOL SetCopyParamAlongAxis (BOOL firstAxis,
|
||
double angle,
|
||
long count,
|
||
double step,
|
||
BOOL factor);
|
||
Входные параметры:
|
||
firstAxis - ось: TRUE - первая, FALSE - вторая,
|
||
angle - угол наклона оси,
|
||
count - количество копий,
|
||
step - шаг вдоль оси,
|
||
factor - признак полного шага.
|
||
Возвращаемое значение:
|
||
TRUE - в случае успешного завершения.
|
||
```
|
||
|
||
|
||
## step1 - Шаг копирования вдоль первой оси
|
||
|
||
Тип данных: double
|
||
Синтаксис Automation:
|
||
```
|
||
step1 = iMeshArray.step1 Получить свойство(* )
|
||
iMeshArray.step1 = stept1 Установить свойство (* )
|
||
step1 = iMeshArray.GetStep1() Получить свойство (**)
|
||
iMeshArray.SetStep1(step1) Установить свойство (**)
|
||
```
|
||
|
||
|
||
## step2 - Шаг копирования вдоль второй оси
|
||
|
||
Тип данных: double
|
||
Синтаксис Automation:
|
||
```
|
||
step2 = iMeshArray.step2 Получить свойство(* )
|
||
iMeshArray.step2 = stept2 Установить свойство (* )
|
||
step2 = iMeshArray.GetStep2() Получить свойство (**)
|
||
iMeshArray.SetStep2(step2) Установить свойство (**)
|
||
```
|