e1337e4016
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается. - .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным (safety-net на случай повторной локальной выгрузки). - CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
342 lines
13 KiB
Markdown
342 lines
13 KiB
Markdown
---
|
||
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 - координаты точки.
|
||
Метод позволяет установить параметры точки.
|
||
```
|