Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/ksnurbs3dparam.md
T
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

132 lines
5.7 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Параметры трехмерных NURBS (Интерфейсы ksNurbs3dParam,INurbs3dParam)"
type: interface
api: [api7]
domain: [3d, assembly]
tags: [interface, api7, 3d, assembly, ksnurbs3dparam]
sources:
- ksnurbs3dparam.html
---
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Математическая кривая в трехмерном пространстве (Интерфейсы ksCurve3D, ICurve3D) *
## Параметры трехмерных NURBS (Интерфейсы ksNurbs3dParam,INurbs3dParam)
Интерфейс параметров трехмерных NURBS.
| ksNurbs3dParam | - интерфейс Automation |
| --- | --- |
| INurbs3dParam | - интерфейс COM |
Примечание:
Данный интерфейс может быть получен с использованием метода интерфейса ksCurve3D::GetCurveParam.
Массив точек для трехмерных NURBS (Интерфейсы ksNurbsPoint3dCollection, INurbsPoint3dCollection)
Массив узлов для трехмерных NURBS поверхностей (Интерфейсы ksNurbsKnotCollection, INurbsKnotCollection)
## close - Замкнутость сплайна
Тип данных: BOOL
Синтаксис Automation:
```
close = iNurbs3dParam.close Получить свойство (* )
close = iNurbs3dParam.GetClose() Получить свойство (**)
Значения свойства:
TRUE - сплайн замкнутый,
FALSE - сплайн разомкнутый.
```
Примечания:
Свойство доступно только для чтения.
## degree - Порядок NURBS (степень полинома + 1), от 3 до 10
Тип данных: short
Синтаксис Automation:
```
degree = iNurbs3dParam.degree Получить свойство (* )
degree = iNurbs3dParam.GetDegree() Получить свойство (**)
```
Примечания:
Свойство доступно только для чтения.
## GetMinMaxParameters - Получить параметры кривой
Синтаксис Automation:
```
BOOL GetMinMaxParameters (BOOL closed, double * tMin, double * tMax);
```
Синтаксис COM:
```
BOOL GetMinMaxParameters (BOOL closed, double * tMin, double * tMax);
Входные параметры:
Closed - TRUE - получение параметров для замкнутого представления, - FALSE - получение параметров для разомкнутого представления.
Выходные параметры:
tMin - значение минимального параметра,
tMax - значение максимального параметра.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
## GetNurbsPoints3DParams - Получить параметры точек для Nurbs 3D
Синтаксис Automation:
```
BOOL GetNurbsPoints3DParams( BOOL unClamped, VARIANT * points, VARIANT * weights, VARIANT * knots );
```
Синтаксис COM:
```
BOOL GetNurbsPoints3DParams( BOOL unClamped, VARIANT * points, VARIANT * weights, VARIANT * knots );
Входные параметры:
unClamped - true - вернуть параметры точек для замкнутого представления, - false - вернуть параметры точек для разомкнутого представления.
Выходные параметры:
points - координаты точек - массив SafeArray вещественных чисел VT_ARRAY VT_R8,
weights - веса точек - массив SafeArray вещественных чисел VT_ARRAY VT_R8,
knots - узлы точек - массив SafeArray вещественных чисел VT_ARRAY VT_R8.
```
Примечания:
Координаты точек в полученном массиве лежат в следующей последовательности:
x0, y0, z0, x1, y1, z1, ...xi, yi, zi.
## NurbsKnotCollection - Получить указатель на интерфейс массива узлов для трехмерного NURBS
Синтаксис Automation:
```
LPDISPATCH GetKnotCollection();
```
Синтаксис COM:
```
LPNURBSKNOTCOLLECTION GetKnotCollection();
Возвращаемое значение:
- указатель на интерфейс ksNurbsKnotCollection или INurbsKnotCollection массива узлов для трехмерных NURBS поверхностей.
```
## NurbsPoint3DCollection - Получить указатель на интерфейс массива точек для трехмерного NURBS
LPDISPATCH GetPointCollection();
Синтаксис COM:
```
LPNURBSPOINT3DCOLLECTION GetPointCollection();
Возвращаемое значение:
- указатель на интерфейс ksNurbsPoint3DCollection или INurbsPoint3DCollection массива точек для трехмерных NURBS.
```
## periodic - Периодичность сплайна
Тип данных: BOOL
Синтаксис Automation:
```
periodic = iNurbs3dParam.periodic Получить свойство (* )
periodic = iNurbs3dParam.GetPeriodic() Получить свойство (**)
Значения свойства:
TRUE - сплайн периодический,
FALSE - сплайн непериодический.
```
Примечания:
Свойство доступно только для чтения.