Files
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
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>
2026-05-26 20:00:05 +03:00

10 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Сплайн (Интерфейсы ksSplineDefinition и ISplineDefinition) interface
api7
2d
interface
api7
2d
kssplinedefinition
kssplinedefinition.html

*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Объект модели (Интерфейсы ksEntity и IEntity)  > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента)  > Интерфейсы пространственных кривых *

Сплайн (Интерфейсы ksSplineDefinition и ISplineDefinition)

Интерфейс параметров сплайна.

ksSplineDefinition - интерфейс Automation
ISplineDefinition - интерфейс COM
Примечание:
Интерфейс может быть получен от интерфейса ksEntity или IEntity с помощью метода ksEntity::GetDefinition или IEntity::GetDefinition и последующим приведением объекта типа IDispatch или IUnknown к интерфейсу типа ksSplineDefinition или ISplineDefinition соответственно.

AddVertex - Добавить вершину

Синтаксис Automation:

BOOL AddVertex (double x,
double y,
double z,
double weight);

Синтаксис COM:

BOOL AddVertex (double x,
double y,
double z,
double weight);
Входные параметры:
x    - x координата вершины,
y    - y координата вершины,
z    - z координата вершины,
weight    - вес вершины.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

AddVertexAndAssociation - Добавить вершину по опорному объекту

Синтаксис Automation:

BOOL AddVertexAndAssociation (long index, LPDISPATCH obj, double weight);

Синтаксис COM:

BOOL AddVertexAndAssociation (long index, LPENTITY obj, double weight);
Входные параметры:
index    - индекс, с которым добавляется вершина,
obj    - указатель на интерфейс точки ksEntity или IEntity,
weight    - вес вершины.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание:

  1. Метод позволяет добавить в пространственную кривую новую вершину. Координаты новой вершины будут равны координатам опорного объекта obj. Вес вершины равен weight.
  2. Объект (точка) obj становится опорным.
  3. Если index = -1 или значение index превышает количество вершин, то новая вершина добавляется после последней.

AttachAssociation - Задать опорную точку по индексу

Синтаксис Automation:

BOOL AttachAssociation (long index, LPDISPATCH obj);

Синтаксис COM:

BOOL AttachAssociation (long index, LPENTITY obj);
Входные параметры:
index    - индекс вершины в массиве,
obj    - указатель на интерфейс точки ksEntity или IEntity,
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Метод позволяет задать опорный объект для существующей вершины с номером index пространственной кривой. Если объект уже был задан, он будет заменен новым.

cls - Признак замкнутости сплайна

Тип данных: BOOL Значения свойства:

TRUE - замкнутый сплайн,
FALSE - разомкнутый сплайн.
Синтаксис Automation:
cls = iSpline.cls    Получить свойство (* )
iSpline.cls = cls    Установить свойство (* )
cls = iSpline.GetClosed()    Получить свойство (**)
iSpline.SetClosed(cls)    Установить свойство (**)

degree - Порядок сплайна

Тип данных: long Синтаксис Automation:

degree = iSpline.degree    Получить свойство (* )
iSpline.degree = degree    Установить свойство (* )
degree = iSpline.GetDegree()    Получить свойство (**)
iSpline.SetDegree(degree)    Установить свойство (**)

DeleteVertex - Удалить вершину с указанным индексом

Синтаксис Automation:

BOOL DeleteVertex (long index);

Синтаксис COM:

BOOL DeleteVertex (long index);
Входной параметр:
index    - индекс вершины в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

Flush - Очистить массив вершин

Синтаксис Automation:

BOOL Flush();

Синтаксис COM:

BOOL Flush();
Возвращаемое значение:
TRUE    - в случае успешного завершения.

GetAssociation - Получить указатель на опорную точку по индексу

Синтаксис Automation:

LPDISPATCH GetAssociation(long index);

Синтаксис COM:

LPENTITY GetAssociation(long index);
Входные параметры:
index    - индекс вершины в массиве.
Возвращаемое значение:
- указатель на интерфейс точки ksEntity или IEntity,    - в случае успешного завершения,
- FALSE    - в случае неудачи.

Примечание: Метод позволяет получить опорный объект для существующей вершины с номером index пространственной кривой, если он был задан.

GetCountVertex - Получить количество вершин

Синтаксис Automation:

long GetCountVertex();

Синтаксис COM:

long GetCountVertex();
Возвращаемое значение:
- количество вершин.

GetParamVertex - Получить параметры вершины с указанным индексом

Синтаксис Automation:

BOOL GetParamVertex (long index,
double* x,
double* y,
double* z,
double* weight);

Синтаксис COM:

BOOL GetParamVertex (long index,
double* x,
double* y,
double* z,
double* weight);
Входной параметр:
index    - индекс вершины в массиве.
Выходные параметры:
x    - x координата вершины,
y    - y координата вершины,
z    - z координата вершины,
weight    - вес вершины.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

InsertVertex - Вставить вершину перед указанной

Синтаксис Automation:

BOOL InsertVertex (long index,
double x,
double y,
double z,
double weight);

Синтаксис COM:

BOOL InsertVertex (long index,
double x,
double y,
double z,
double weight);
Входные параметры:
index    - индекс вершины в массиве,
x    - x координата вершины,
y    - y координата вершины,
z    - z координата вершины,
weight    - вес вершины.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

ReadFromFile - Прочитать параметры вершин из текстового файла

Синтаксис Automation:

BOOL ReadFromFile (BSTR fileName);

Синтаксис COM:

BOOL ReadFromFile (LPOLESTR fileName);
Входной параметр:
fileName    - имя файла.
Возвращаемое значение:
TRUE    - в случае успешного завершения.
Примечание. См. также WriteToFile.

SetAssociation - Задать опорную точку по индексу

Синтаксис Automation:

BOOL SetAssociation(long index,
LPDISPATCH obj);

Синтаксис COM:

BOOL SetAssociation(long index,
LPENTITY obj);
Входные параметры:
index    - индекс вершины,
obj    - указатель на интерфейс IEntity или ksEntity.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

splineOnPoles - Признак способа построения сплайна

Тип данных: BOOL Значения свойства:

TRUE - по полюсам,
FALSE - по вершинам.
Синтаксис Automation:
splineOnPoles = iSpline.splineOnPoles    Получить свойство (* )
iSpline.splineOnPoles = splineOnPoles    Установить свойство (* )
splineOnPoles = iSpline.GetSplineOnPoles()    Получить свойство (**)
splineOnPoles = iSpline.GetSplineOnPoles()    Установить свойство (**)

WriteToFile - Записать параметры вершин в текстовый файл

Синтаксис Automation:

BOOL WriteToFile (LPCTSTR fileName);

Синтаксис COM:

BOOL WriteToFile (LPOLESTR fileName);
Входные параметр:
fileName    - имя файла.
Возвращаемое значение:
TRUE    - в случае успешного завершения.
Примечание. См. также ReadFromFile.