---
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)    Установить свойство (**)
```
