--- title: "Интерфейс IArc3D" type: interface api: [api7] domain: [3d] tags: [interface, api7, 3d, iarc3d] sources: - iarc3d.html --- *API интерфейсов. Версия 7 > Документ 3D  > Вспомогательные объекты, 3D-кривые и элементы тела  > 3D-кривые и элементы тела  > Интерфейс IModelObjects  > IModelObjects - свойства * ## Интерфейс IArc3D Интерфейс параметров 3D дуги. Иерархия: IDispatch IKompasAPIObject IModelObject IArc3D ILocalCSObject Примечание: Интерфейс можно получить у коллекции дуг, используя свойство IArcs3D::Arc3D или метод IArcs3D::Add. С помощью метода IUnknown::QueryInterface у интерфейса можно получить интерфейс подчиненного объекта ЛСК ILocalCSObject. ## Angle1 - Начальный угол дуги 3D Тип данных: double Синтаксис Automation: ``` Angle1 = Object.Angle1 Получить свойство (* ) Object.Angle1 = Angle1 Установить свойство (* ) Angle1 = Object.GetAngle1() Получить свойство (**) Object.SetAngle1( Angle1 ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Angle1( &Angle1 ) Получить свойство Object.put_Angle1( Angle1 ) Установить свойство ``` ## Angle2 - Конечный угол дуги 3D Тип данных: double Синтаксис Automation: ``` Angle2 = Object.Angle2 Получить свойство (* ) Object.Angle2 = Angle2 Установить свойство (* ) Angle2 = Object.GetAngle2() Получить свойство (**) Object.SetAngle2( Angle2 ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Angle2( &Angle2 ) Получить свойство Object.put_Angle2( Angle2 ) Установить свойство ``` ## AssociationObject - Установить опорный объект для вершины Тип данных: указатель на интерфейс IModelObject Синтаксис Automation: ``` AssociationObject = Object.AssociationObject( Index ) Получить свойство (* ) Object.AssociationObject( Index ) = AssociationObject Установить свойство (* ) AssociationObject = Object.GetAssociationObject( Index ) Получить свойство (**) Object.SetAssociationObject( Index, AssociationObject ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_AssociationObject( Index, &AssociationObject ) Получить свойство Object.put_AssociationObject( Index, AssociationObject ) Установить свойство Входные параметры Index - индекс вершины из перечисления ksArc3DParameterEnum Свойство позволяет связать вершину дуги с уже имеющимся точечным объектом. ``` ## BuildingObject - Вспомогательный объект для построения Тип данных: указатель на интерфейс IModelObject Синтаксис Automation: ``` BuildingObject = Object.BuildingObject Получить свойство (* ) Object.BuildingObject = BuildingObject Установить свойство (* ) BuildingObject = Object.GetBuildingObject() Получить свойство (**) Object.SetBuildingObject( BuildingObject ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_BuildingObject( &BuildingObject ) Получить свойство Object.put_BuildingObject( BuildingObject ) Установить свойство ``` ## BuildingType - Способ построения дуги 3D Тип данных: из перечисления ksArc3DBuildingTypeEnum Синтаксис Automation: ``` BuildingType = Object.BuildingType Получить свойство (* ) Object.BuildingType = BuildingType Установить свойство (* ) BuildingType = Object.GetBuildingType() Получить свойство (**) Object.SetBuildingType( BuildingType ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_BuildingType( &BuildingType ) Получить свойство Object.put_BuildingType( BuildingType ) Установить свойство ``` ## BuildingVectorParameters - Параметры вектора Тип данных: указатель на интерфейс IVector3D Синтаксис Automation: ``` BuildingVectorParameters = Object.BuildingVectorParameters Получить свойство (* ) BuildingVectorParameters = Object.GetBuildingVectorParameters() Получить свойство (**) ``` Синтаксис COM: ``` Object.get_BuildingVectorParameters( &BuildingVectorParameters ) Получить свойство Свойство позволяет задать направление дуги с помощью вектора. ``` Примечание Свойство доступно только для чтения. ## Closed - Признак замкнутости дуги Тип данных: BOOL Синтаксис Automation: ``` Closed = Object.Closed Получить свойство (* ) Object.Closed = Closed Установить свойство (* ) Closed = Object.GetClosed() Получить свойство (**) Object.SetClosed( Closed ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Closed( &Closed ) Получить свойство Object.put_Closed( Closed ) Установить свойство ``` ## Direction - Направление построения дуги Тип данных: BOOL Синтаксис Automation: ``` Direction = Object.Direction Получить свойство (* ) Object.Direction = Direction Установить свойство (* ) Direction = Object.GetDirection() Получить свойство (**) Object.SetDirection( Direction ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Direction( &Direction ) Получить свойство Object.put_Direction( Direction ) Установить свойство Значения свойства: TRUE - дуга по умолчанию, FALSE - дополняющая дуга. ``` ## DirectionPointIndex - Индекс вершины, для которой задано направление Тип данных: из перечисления ksArc3DParameterEnum Синтаксис Automation: ``` DirectionPointIndex = Object.DirectionPointIndex Получить свойство (* ) Object.DirectionPointIndex = DirectionPointIndex Установить свойство (* ) DirectionPointIndex = Object.GetDirectionPointIndex() Получить свойство (**) Object.SetDirectionPointIndex( DirectionPointIndex ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_DirectionPointIndex( &DirectionPointIndex ) Получить свойство Object.put_DirectionPointIndex( DirectionPointIndex ) Установить свойство ``` ## GetPoint - Получить координаты точки дуги 3D Синтаксис Automation: ``` BOOL GetPoint( ksArc3DParameterEnum Index, double * X, double * Y, double * Z ); ``` Синтаксис COM: ``` HRESULT GetPoint( ksArc3DParameterEnum Index, double * X, double * Y, double * Z, BOOL * Result ); Возвращаемое значение: TRUE - в случае успешного завершения, FALSE - в случае неудачи. Входные параметры: Index - индекс вершины из перечисления ksArc3DParameterEnum. Выходные параметры X, Y, Z - координаты точки. ``` ## Point3DParameters - Получить интерфейс параметров точки Тип данных: указатель на интерфейс IKompasAPIObject Синтаксис Automation: ``` Point3DParameters = Object.Point3DParameters( Index ) Получить свойство (* ) Point3DParameters = Object.GetPoint3DParameters( Index ) Получить свойство (**) ``` Синтаксис COM: ``` Object.get_Point3DParameters( Index, &Point3DParameters ) Получить свойство Входные параметры: Index - индекс вершины из перечисления ksArc3DParameterEnum. Свойство позволяет задать вершину дуги, используя способы построения точки. ``` Примечание Свойство доступно только для чтения. ## Point3DParametersType - Тип параметров построения точки Тип данных: из перечисления ksPoint3DTypeEnum Синтаксис Automation: ``` Point3DParametersType = Object.Point3DParametersType( Index ) Получить свойство (* ) Object.Point3DParametersType( Index ) = Point3DParametersType Установить свойство (* ) Point3DParametersType = Object.GetPoint3DParametersType( Index ) Получить свойство (**) Object.SetPoint3DParametersType( Index, Point3DParametersType ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Point3DParametersType( Index, &Point3DParametersType ) Получить свойство Object.put_Point3DParametersType( Index, Point3DParametersType ) Установить свойство Входные параметры: Index - индекс вершины из перечисления ksArc3DParameterEnum ``` ## Radius - Радиус дуги 3D Тип данных: double Синтаксис Automation: ``` Radius = Object.Radius Получить свойство (* ) Object.Radius = Radius Установить свойство (* ) Radius = Object.GetRadius() Получить свойство (**) Object.SetRadius( Radius ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Radius( &Radius ) Получить свойство Object.put_Radius( Radius ) Установить свойство ``` ## SetPoint - Установить координаты точки дуги 3D Синтаксис Automation: ``` BOOL SetPoint( ksArc3DParameterEnum Index, double X, double Y, double Z ); ``` Синтаксис COM: ``` HRESULT SetPoint( ksArc3DParameterEnum Index, double X, double Y, double Z, BOOL * Result ); Возвращаемое значение: TRUE - в случае успешного завершения, FALSE - в случае неудачи. Входные параметры Index - индекс вершины из перечисления ksArc3DParameterEnum, X, Y, Z - координаты точки. Метод позволяет также задавать углы и радиус, которые будут построены путем проецирования точки на дугу. ```