--- title: "Интерфейс ICloudPointsSurface" type: interface api: [api7] tags: [interface, api7, icloudpointssurface] sources: - icloudpointssurface.html --- *API интерфейсов. Версия 7 > Документ 3D  > Поверхности  > Интерфейс ISurfaceContainer  > ISurfaceContainer - свойства * ## Интерфейс ICloudPointsSurface Интерфейс параметров поверхности по пласту (облаку) точек Иерархия: IDispatch IKompasAPIObject IModelObject ICloudPointsSurface ILocalCSObject Интерфейс можно получить у интерфейса коллекции поверхностей по пласту (облаку точек) с помощью свойства ICloudPointsSurfaces::CloudPointsSurface или метода ICloudPointsSurfaces::CloudPointsSurface. С помощью метода IUnknown::QueryInterface у интерфейса можно получить интерфейс подчиненного объекта ЛСК ILocalCSObject. ## AddPoint - Добавить точку Синтаксис Automation: ``` LPDISPATCH AddPoint( double X, double Y, double Z, ksPoint3DTypeEnum PVal, IModelObject * AssociationObject ); ``` Синтаксис COM: ``` HRESULT AddPoint( double X, double Y, double Z, ksPoint3DTypeEnum PVal, IModelObject * AssociationObject, IKompasAPIObject ** Result ); Возвращаемое значение: Указатель на интерфейс параметров точки Выходные параметры: X, Y, Z - координаты точки, PVal - тип параметров точки, AssociationObject - опорный объект для точки. ``` ## AddPoints - Добавить точки Синтаксис Automation: ``` BOOL AddPoints( VARIANT Points ); ``` Синтаксис COM: ``` HRESULT AddPoints( VARIANT Points, BOOL * Result ); Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. Входные параметры: Points: массив VT_ARRAY | VT_R8 координат точек ``` ## 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 ) Установить свойство Входные параметры: long Index - индекс точки, для которой нужно установить опорный объект ``` ## BuildingType - Тип поверхности по пласту (облаку) точек Тип данных: из перечисления ksCloudPointsSurfaceBuildingTypeEnum Синтаксис Automation: ``` BuildingType = Object.BuildingType Получить свойство (* ) Object.BuildingType = BuildingType Установить свойство (* ) BuildingType = Object.GetBuildingType() Получить свойство (**) Object.SetBuildingType( BuildingType ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_BuildingType( &BuildingType ) Получить свойство Object.put_BuildingType( BuildingType ) Установить свойство Свойство позволяет устанавливать и получать способ построения поверхности по пласту (облаку) точек. ``` ## CheckSelfIntersection - Проверка самопересечений Тип данных: BOOL Синтаксис Automation: ``` CheckSelfIntersection = Object.CheckSelfIntersection Получить свойство (* ) Object.CheckSelfIntersection = CheckSelfIntersection Установить свойство (* ) CheckSelfIntersection = Object.GetCheckSelfIntersection() Получить свойство (**) Object.SetCheckSelfIntersection( CheckSelfIntersection ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_CheckSelfIntersection( &CheckSelfIntersection ) Получить свойство Object.put_CheckSelfIntersection( CheckSelfIntersection ) Установить свойство Свойство позволяет включать и выключать проверку самопересечений. ``` ## ClearPoints - Очистить список рядов точек Синтаксис Automation: ``` BOOL ClearPoints(); ``` Синтаксис COM: ``` HRESULT ClearPoints( BOOL * Result ); Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. Метод позволяет удалить все точки поверхности. ``` ## CloudLCS - СК объекта Тип данных: указатель на интерфейс ILocalCoordinateSystem Синтаксис Automation: ``` CloudLCS = Object.CloudLCS Получить свойство (* ) Object.CloudLCS = CloudLCS Установить свойство (* ) CloudLCS = Object.GetCloudLCS() Получить свойство (**) Object.SetCloudLCS( CloudLCS ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_CloudLCS( &CloudLCS ) Получить свойство Object.put_CloudLCS( CloudLCS ) Установить свойство Свойство позволяет устанавливать и получать локальную систему координат поверхности. ``` ## CloudType - Способ распознавания сети точек Тип данных: из перечисления ksCloudTypeEnum Синтаксис Automation: ``` CloudType = Object.CloudType Получить свойство (* ) Object.CloudType = CloudType Установить свойство (* ) CloudType = Object.GetCloudType() Получить свойство (**) Object.SetCloudType( CloudType ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_CloudType( &CloudType ) Получить свойство Object.put_CloudType( CloudType ) Установить свойство ``` ## Degree - Порядок сплайна (степень + 1) Тип данных: long Синтаксис Automation: ``` Degree = Object.Degree Получить свойство (* ) Object.Degree = Degree Установить свойство (* ) Degree = Object.GetDegree() Получить свойство (**) Object.SetDegree( Degree ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Degree( &Degree ) Получить свойство Object.put_Degree( Degree ) Установить свойство В англоязычной специализированной литературе, документациях и различных API для систем автоматизированного проектирования (САПР) можно встретить использование термина degree для обозначения степени сплайна, а термина order — для обозначения порядка сплайна. Соответственно, order = degree + 1. Обратите внимание на то, что в интерфейсах КОМПАС-3D API термин degree используется для обозначения порядка сплайна (степень + 1). ``` ## DeletePoint - Удалить точку Синтаксис Automation: ``` BOOL DeletePoint( long Index ); ``` Синтаксис COM: ``` HRESULT DeletePoint( long Index, BOOL * Result ); Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. Входные параметры: Index - индекс удаляемой точки. ``` ## FixedPosition - Фиксировать положение Тип данных: BOOL Синтаксис Automation: ``` FixedPosition = Object.FixedPosition Получить свойство (* ) Object.FixedPosition = FixedPosition Установить свойство (* ) FixedPosition = Object.GetFixedPosition() Получить свойство (**) Object.SetFixedPosition( FixedPosition ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_FixedPosition( &FixedPosition ) Получить свойство Object.put_FixedPosition( FixedPosition ) Установить свойство ``` ## GetPoint - Получить параметры точки Синтаксис Automation: ``` BOOL GetPoint( long Index, double * X, double * Y, double * Z ); ``` Синтаксис COM: ``` HRESULT GetPoint( long Index, double * X, double * Y, double * Z, BOOL * Result ); Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. Входные параметры: Index - индекс точки Выходные параметры: X, Y, Z - координаты точки Метод позволяет получить координаты точки. ``` ## PointParameters - Интерфейс параметров точки поверхности Тип данных: указатель на интерфейс IKompasAPIObject Синтаксис Automation: ``` PointParameters = Object.PointParameters( Index ) Получить свойство (* ) PointParameters = Object.GetPointParameters( Index ) Получить свойство (**) ``` Синтаксис COM: ``` Object.get_PointParameters( Index, &PointParameters ) Получить свойство ``` Примечание: Свойство доступно только для чтения. ## Points - Массив точек Тип данных: VARIANT типа VT_ARRAY | VT_R8 Синтаксис Automation: ``` Points = Object.Points Получить свойство (* ) Object.Points = Points Установить свойство (* ) Points = Object.GetPoints() Получить свойство (**) Object.SetPoints( Points ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_Points( &Points ) Получить свойство Object.put_Points( Points ) Установить свойство Свойство позволяет устанавливать и получать массив точек, задающих поверхность. ``` ## PointsCount - Количество точек Тип данных: long Синтаксис Automation: ``` PointsCount = Object.PointsCount Получить свойство (* ) PointsCount = Object.GetPointsCount() Получить свойство (**) ``` Синтаксис COM: ``` Object.get_PointsCount( &PointsCount ) Получить свойство ``` Примечание: Свойство доступно только для чтения. ## PointType - Тип параметров построения точки поверхности Тип данных: из перечисления ksPoint3DTypeEnum Синтаксис Automation: ``` PointType = Object.PointType( Index ) Получить свойство (* ) Object.PointType( Index ) = PointType Установить свойство (* ) PointType = Object.GetPointType( Index ) Получить свойство (**) Object.SetPointType( Index, PointType ) Установить свойство (**) ``` Синтаксис COM: ``` Object.get_PointType( Index, &PointType ) Получить свойство Object.put_PointType( Index, PointType ) Установить свойство Входные параметры: long Index - индекс точки. ``` ## SetPoint - Установить параметры точки Синтаксис Automation: ``` BOOL SetPoint( long Index, double X, double Y, double Z ); ``` Синтаксис COM: ``` HRESULT SetPoint( long Index, double X, double Y, double Z, BOOL * Result ); Возвращаемое значение: TRUE - в случае удачного завершения, FALSE - в случае неудачи. Входные параметры: Index - индекс точки, X, Y, Z - координаты точки. Метод позволяет установить параметры точки. ```