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>
8.5 KiB
title, type, api, domain, tags, sources
| title | type | api | domain | tags | sources | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Положение объекта (Интерфейсы ksPlacement, IPlacement) | interface |
|
|
|
|
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) > Запрос к сиcтеме (Интерфейсы ksRequestInfo3D, IRequestInfo) *
Положение объекта (Интерфейсы ksPlacement, IPlacement)
Интерфейс локальной системы координат (положение объекта).
| ksPlacement | - интерфейс Automation |
|---|---|
| IPlacement | - интерфейс COM |
| Примечание: | |
| Данный интерфейс может быть получен с использованием методов интерфейсов ksRequestInfo3D::GetPlacement, ksObject3DNotifyResult::GetPlacement, ksPlaneParam::GetPlacement, ksTorusParam::GetPlacement, ksEllipse3dParam::GetPlacement, ksCylinderParam::GetPlacement, ksArc3dParam::GetPlacement, ksConeParam::GetPlacement, ksDocument3D::DefaultPlacement, ksViewProjection::GetPlacement, ksCircle3dParam::GetPlacement, ksPart::GetPlacement, ksSphereParam::GetPlacement. |
GetAxis - Получить компоненты вектора направления оси OX, OY или OZ локальной системы координат
Синтаксис Automation:
BOOL GetAxis (double* x,
double* y,
double* z,
long type);
Синтаксис COM:
BOOL GetAxis (double *x,
double *y,
double *z,
long type);
Входной параметр:
type - тип оси: 0 – OX, 1– OY, >1– OZ.
Выходные параметры:
x, y, z - компоненты вектора направления оси.
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: Положение начала локальной системы координат можно получить при помощи метода GetOrigin.
GetMatrix - Получить суммарную матрицу преобразования координат
Синтаксис Automation:
VARIANT GetMatrix();
Синтаксис COM:
HRESULT GetMatrix( VARIANT * Result );
Возвращаемое значение:
- массив SafeAttray типа (VT_ARRAY VT_R8).
Примечание:
- Элементы матрицы возвращаются в виде одномерного массива из 16 элементов.
- Матрица имеет размер 4х4.
GetOrigin - Получить координаты начала локальной системы координат
Синтаксис Automation:
BOOL GetOrigin (double* x,
double* y,
double* z);
Синтаксис COM:
BOOL GetOrigin (double *x,
double *y,
double *z);
Выходные параметры:
x, y, z - координаты начала локальной системы координат в глобальной системе координат.
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: Направление осей локальной системы координат можно получить при помощи метода GetAxis.
GetVector - Получить вектор для указанной оси
Синтаксис Automation:
BOOL GetVector( long type, double * X, double * Y, double * Z );
Синтаксис COM:
BOOL GetVector( long type, double * X, double * Y, double * Z );
Возвращаемое значение:
TRUE - в случае удачи.
Входные параметры:
type - тип оси: 0 – OX, 1 – OY, >1 – OZ.
Выходные параметры:
X, Y, Z - компоненты вектора направления оси.
InitByMatrix3D - Установить систему координат по матрице
Синтаксис Automation:
BOOL InitByMatrix3D( VARIANT * mtr );
Синтаксис COM:
BOOL InitByMatrix3D( VARIANT * mtr );
Входные параметры:
mtr - массив SafeAttray типа (VT_ARRAY VT_R8).
Примечание:
- Элементы матрицы возвращаются в виде одномерного массива из 16 элементов.
- Матрица имеет размер 4х4.
PointProjection - Получить проекцию точки на плоскость XY
Синтаксис Automation:
BOOL PointProjection (double XIn, double YIn, double ZIn, double * XOut, double * YOut);
Синтаксис COM:
BOOL PointProjection (double XIn, double YIn, double ZIn, double * XOut, double * YOut);
Входные параметры:
XIn, YIn, ZIn - координаты исходной пространственной точки.
Выходные параметры:
XOut, YOut - координаты точки на плоскости XY.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Rotate - Получить последний объект в дереве
Синтаксис Automation:
BOOL Rotate( double X0, double Y0, double Z0, double AxisZX, double AxisZXY, double AxisZZ, double Angle );
Синтаксис COM:
BOOL Rotate( double X0, double Y0, double Z0, double AxisZX, double AxisZXY, double AxisZZ, double Angle );
Возвращаемое значение:
TRUE - в случае успешного завершения,
SetAxes - Установить оси X и Y
Пример... Синтаксис Automation:
VARIANT_BOOL SetAxes (double Xx,
double Xy,
double Xz,
double Yx,
double Yy,
double Yz );
Синтаксис COM:
BOOL SetAxes (double Xx,
double Xy,
double Xz,
double Yx,
double Yy,
double Yz)
Входные параметры:
Xx, Xy, Xz - координаты точки на оси X,
Yx, Yy, Yz - координаты точки на оси Y.
Возвращаемое значение:
TRUE - в случае успешного завершения.
SetAxis - Установить компоненты вектора направления оси OX, OY или OZ локальной системы координат
Пример... Синтаксис Automation:
BOOL SetAxis (double x,
double y,
double z,
long type);
Синтаксис COM:
BOOL SetAxis (double x,
double y,
double z,
int type);
Входные параметры:
x, y, z - компоненты вектора направления оси,
type - тип оси: 0 – OX, >0 – OY.
Возвращаемое значение:
TRUE - в случае успешного завершения.
SetOrigin - Изменить координаты начала локальной системы координат
Пример... Синтаксис Automation:
BOOL SetOrigin (double x,
double y,
double z);
Синтаксис COM:
BOOL SetOrigin (double x,
double y,
double z);
Входные параметры:
x, y, z - координаты начала локальной системы координат в глобальной системе координат.
Возвращаемое значение:
TRUE - в случае успешного завершения.
SetPlacement - Изменить локальную систему координат
Синтаксис Automation:
BOOL SetPlacement (LPDISPATCH placement);
Синтаксис COM:
BOOL SetPlacement (LPPLACEMENT placement);
Входной параметр:
placement - указатель на интерфейс ksPlacement или IPlacement.
Возвращаемое значение:
TRUE - в случае успешного завершения.
SetVector - Задать вектор для указанной оси
Синтаксис Automation:
BOOL SetVector( long type, double * X, double * Y, double * Z );
Синтаксис COM:
BOOL SetVector( long type, double * X, double * Y, double * Z );
Возвращаемое значение:
TRUE - в случае удачи.
Входные параметры:
type - тип оси: 0 – OX, 1 – OY, >1 – OZ.
Выходные параметры:
X, Y, Z - компоненты вектора направления оси.