---
title: "Интерфейс ILinearPattern"
type: interface
api: [api7]
domain: [feature]
tags: [interface, api7, feature, ilinearpattern]
sources:
  - ilinearpattern.html
---

*API интерфейсов. Версия 7 > Документ 3D  > Операции, массивы, эскизы, точки  > Массивы  > Интерфейс IFeaturePattern  > IFeaturePattern - методы *


## Интерфейс ILinearPattern

Интерфейс параметров операции копирования по сетке.
Иерархия:
IDispatch
IKompasAPIObject
IModelObject
IFeaturePattern
ILinearPattern
Интерфейс используется для операций:
| o3d_meshCopy | 35 | Массив операций по сетке |
| --- | --- | --- |
| o3d_meshPartArray | 39 | Массив компонентов по сетке для сборки |
| o3d_AuxMeshCopy | 504 | Массив вспомогательной геометрии по сетке |
| o3d_BodiesMeshCopy | 528 | Массив тел по сетке |
Интерфейс можно получить в коллекции массивов IFeaturePatterns.


## Angle1 - Угол наклона первой оси сетки

Тип данных: double
Синтаксис Automation:
```
Angle1 = Object.Angle1    Получить свойство (* )
Object.Angle1 = Angle1    Установить свойство (* )
Angle1 = Object.GetAngle1()    Получить свойство (**)
Object.SetAngle1( Angle1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Angle1( &Angle1 )    Получить свойство
Object.put_Angle1( Angle1 )    Установить свойство
```


## Angle2 - Угол наклона второй оси сетки

Тип данных: double
Синтаксис Automation:
```
Angle2 = Object.Angle2    Получить свойство (* )
Object.Angle2 = Angle2    Установить свойство (* )
Angle2 = Object.GetAngle2()    Получить свойство (**)
Object.SetAngle2( Angle2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Angle2( &Angle2 )    Получить свойство
Object.put_Angle2( Angle2 )    Установить свойство
```


## Axis1 - Первая ось сетки массива

Тип данных: указатель на интерфейс IModelObject
Синтаксис Automation:
```
Axis1 = Object.Axis1    Получить свойство (* )
Object.Axis1 = Axis1    Установить свойство (* )
Axis1 = Object.GetAxis1()    Получить свойство (**)
Object.SetAxis1( Axis1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Axis1( &Axis1 )    Получить свойство
Object.put_Axis1( Axis1 )    Установить свойство
```


## Axis2 - Вторая ось сетки массива

Тип данных: указатель на интерфейс IModelObject
Синтаксис Automation:
```
Axis2 = Object.Axis2    Получить свойство (* )
Object.Axis2 = Axis2    Установить свойство (* )
Axis2 = Object.GetAxis2()    Получить свойство (**)
Object.SetAxis2( Axis2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Axis2( &Axis2 )    Получить свойство
Object.put_Axis2( Axis2 )    Установить свойство
```


## BoundaryInstancesStepFactor1- Интерпретация значения шага копирования вдоль первой оси сетки

Тип данных: BOOL
Синтаксис Automation:
```
BoundaryInstancesStepFactor1 = Object.BoundaryInstancesStepFactor1    Получить свойство (* )
Object.BoundaryInstancesStepFactor1 = BoundaryInstancesStepFactor1    Установить свойство (* )
BoundaryInstancesStepFactor1 = Object.GetBoundaryInstancesStepFactor1()    Получить свойство (**)
Object.SetBoundaryInstancesStepFactor1( BoundaryInstancesStepFactor1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_BoundaryInstancesStepFactor1( &BoundaryInstancesStepFactor1 )    Получить свойство
Object.put_BoundaryInstancesStepFactor1( BoundaryInstancesStepFactor1 )    Установить свойство
Значения свойства:
TRUE    - шаг – расстояние между крайними экземплярами,
FALSE    - шаг – расстояние между соседними экземплярами.
```


## BoundaryInstancesStepFactor2 - Интерпретация значения шага копирования вдоль второй оси сетки

Тип данных: BOOL
Синтаксис Automation:
```
BoundaryInstancesStepFactor2 = Object.BoundaryInstancesStepFactor2    Получить свойство (* )
Object.BoundaryInstancesStepFactor2 = BoundaryInstancesStepFactor2    Установить свойство (* )
BoundaryInstancesStepFactor2 = Object.GetBoundaryInstancesStepFactor2()    Получить свойство (**)
Object.SetBoundaryInstancesStepFactor2( BoundaryInstancesStepFactor2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_BoundaryInstancesStepFactor2( &BoundaryInstancesStepFactor2 )    Получить свойство
Object.put_BoundaryInstancesStepFactor2( BoundaryInstancesStepFactor2 )    Установить свойство
Значения свойства:
TRUE    - шаг – расстояние между крайними экземплярами,
FALSE    - шаг – расстояние между соседними экземплярами.
```


## BuildingType - Способ построения массива

Тип данных: из перечисления ksLinearPatternBuildingTypeEnum
Синтаксис Automation:
```
BuildingType = Object.BuildingType    Получить свойство (* )
Object.BuildingType = BuildingType    Установить свойство (* )
BuildingType = Object.GetBuildingType()    Получить свойство (**)
Object.SetBuildingType( BuildingType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_BuildingType( &BuildingType )    Получить свойство
Object.put_BuildingType( BuildingType )    Установить свойство
```


## Count1 - Количество экземпляров по первой оси сетки

Тип данных: long
Синтаксис Automation:
```
Count1 = Object.Count1    Получить свойство (* )
Object.Count1 = Count1    Установить свойство (* )
Count1 = Object.GetCount1()    Получить свойство (**)
Object.SetCount1( Count1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Count1( &Count1 )    Получить свойство
Object.put_Count1( Count1 )    Установить свойство
```


## Count2 - Количество экземпляров по второй оси сетки

Тип данных: long
Синтаксис Automation:
```
Count2 = Object.Count2    Получить свойство (* )
Object.Count2 = Count2    Установить свойство (* )
Count2 = Object.GetCount2()    Получить свойство (**)
Object.SetCount2( Count2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Count2( &Count2 )    Получить свойство
Object.put_Count2( Count2 )    Установить свойство
```


## Direction1 - Направление копирования вдоль первой оси сетки

Тип данных: BOOL
Синтаксис Automation:
```
Direction1 = Object.Direction1    Получить свойство (* )
Object.Direction1 = Direction1    Установить свойство (* )
Direction1 = Object.GetDirection1()    Получить свойство (**)
Object.SetDirection1( Direction1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Direction1( &Direction1 )    Получить свойство
Object.put_Direction1( Direction1 )    Установить свойство
```


## Direction2 - Направление копирования вдоль второй оси сетки

Тип данных: BOOL
Синтаксис Automation:
```
Direction2 = Object.Direction2    Получить свойство (* )
Object.Direction2 = Direction2    Установить свойство (* )
Direction2 = Object.GetDirection2()    Получить свойство (**)
Object.SetDirection2( Direction2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Direction2( &Direction2 )    Получить свойство
Object.put_Direction2( Direction2 )    Установить свойство
```


## GetBaseExemplarPlacement - Получить положение базового экземпляра в массиве

Синтаксис Automation:
```
BOOL GetBaseExemplarPlacement( long Index1, long Index2 );
```
Синтаксис COM:
```
HRESULT GetBaseExemplarPlacement( long * Index1, long * Index2, BOOL * Result );
Входные параметры:
index1    - индекс экземпляра по 1-й оси,
index2    - индекс экземпляра по 2-й оси.
Возвращаемое значение:
TRUE    - в случае удачи.
```


## SetBaseExemplarPlacement - Задать положение базового экземпляра в массиве

Синтаксис Automation:
```
BOOL SetBaseExemplarPlacement( long Index1, long Index2 );
```
Синтаксис COM:
```
HRESULT SetBaseExemplarPlacement( long Index1, long Index2, BOOL * Result );
Входные параметры:
index1    - индекс экземпляра по 1-й оси,
index2    - индекс экземпляра по 2-й оси.
Возвращаемое значение:
TRUE    - в случае удачи.
```


## Step1 - Шаг копирования по первой оси сетки

Тип данных: double
Синтаксис Automation:
```
Step1 = Object.Step1    Получить свойство (* )
Object.Step1 = Step1    Установить свойство (* )
Step1 = Object.GetStep1()    Получить свойство (**)
Object.SetStep1( Step1 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Step1( &Step1 )    Получить свойство
Object.put_Step1( Step1 )    Установить свойство
```


## Step2 - Шаг копирования по второй оси сетки

Тип данных: double
Синтаксис Automation:
```
Step2 = Object.Step2    Получить свойство (* )
Object.Step2 = Step2    Установить свойство (* )
Step2 = Object.GetStep2()    Получить свойство (**)
Object.SetStep2( Step2 )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Step2( &Step2 )    Получить свойство
Object.put_Step2( Step2 )    Установить свойство
```


## Vector1 - Параметры вектора, задающего направление первой оси сетки

Тип данных: указатель на интерфейс IVector3D
Синтаксис Automation:
```
Vector1 = Object.Vector1    Получить свойство (* )
Vector1 = Object.GetVector1()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Vector1( &Vector1 )    Получить свойство
```
Примечания:
Свойство доступно только для чтения.


## Vector2 - Параметры вектора, задающего направление второй оси сетки

Тип данных: указатель на интерфейс IVector3D
Синтаксис Automation:
```
Vector2 = Object.Vector2    Получить свойство (* )
Vector2 = Object.GetVector2()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Vector2( &Vector2 )    Получить свойство
```
Примечания:
Свойство доступно только для чтения.
