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

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


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

Интерфейс параметров операции копирования по концентрической сетке.
Иерархия:
IDispatch
IKompasAPIObject
IModelObject
IFeaturePattern
ICircularPattern
Интерфейс используется для операций:
| o3d_circularCopy | 36 | Массив по концентрической сетке |
| --- | --- | --- |
| o3d_circPartArray | 38 | Массив компонентов по концентрической сетке для сборки |
| o3d_AuxCircularCopy | 505 | Массив вспомогательной геометрии по концентрической сетке |
| o3d_BodiesCircularCopy | 529 | Массив тел по концентрической сетке |
Интерфейс можно получить в коллекции массивов IFeaturePatterns.


## Axis - Ось массива

Тип данных: указатель на интерфейс IModelObject
Синтаксис Automation:
```
Axis = Object.Axis    Получить свойство (* )
Object.Axis = Axis    Установить свойство (* )
Axis = Object.GetAxis()    Получить свойство (**)
Object.SetAxis( Axis )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Axis( &Axis )    Получить свойство
Object.put_Axis( Axis )    Установить свойство
```


## 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 - Способ построения массива

Тип данных: ksCircularPatternBuildingTypeEnum
Синтаксис 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 )    Установить свойство
```


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

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


## ReverseDirection - Направление построения массива

Тип данных: BOOL
Синтаксис Automation:
```
ReverseDirection = Object.ReverseDirection    Получить свойство (* )
Object.ReverseDirection = ReverseDirection    Установить свойство (* )
ReverseDirection = Object.GetReverseDirection()    Получить свойство (**)
Object.SetReverseDirection( ReverseDirection )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ReverseDirection( &ReverseDirection )    Получить свойство
Object.put_ReverseDirection( ReverseDirection )    Установить свойство
Значения свойства:
TRUE    - обратное направление,
FALSE    - прямое направление.
```


## SaveInitialOrientation - Ориентация экземпляров массива

Тип данных: BOOL
Синтаксис Automation:
```
SaveInitialOrientation = Object.SaveInitialOrientation    Получить свойство (* )
Object.SaveInitialOrientation = SaveInitialOrientation    Установить свойство (* )
SaveInitialOrientation = Object.GetSaveInitialOrientation()    Получить свойство (**)
Object.SetSaveInitialOrientation( SaveInitialOrientation )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_SaveInitialOrientation( &SaveInitialOrientation )    Получить свойство
Object.put_SaveInitialOrientation( SaveInitialOrientation )    Установить свойство
Значения свойства:
TRUE    - сохранять исходную ориентацию,
FALSE    - доворачивать до радиального направления.
```


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

Синтаксис Automation:
```
BOOL SetBaseExemplarPlacement( long Index1, long Index2 );
```
Синтаксис COM:
```
HRESULT SetBaseExemplarPlacement( long Index1, long Index2, BOOL * Result );
Входные параметры:
index1    - индекс экземпляра по радиальному направлению,
index2    - индекс экземпляра по кольцевому направлению.
Возвращаемое значение:
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 )    Установить свойство
```


## StepByAxis - Шаг вдоль оси

Тип данных: double
Синтаксис Automation:
```
StepByAxis = Object.StepByAxis    Получить свойство (* )
Object.StepByAxis = StepByAxis    Установить свойство (* )
StepByAxis = Object.GetStepByAxis()    Получить свойство (**)
Object.SetStepByAxis( StepByAxis )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_StepByAxis( &StepByAxis )    Получить свойство
Object.put_StepByAxis( StepByAxis )    Установить свойство
```
