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

279 lines
10 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 (Интерфейсы ksNurbsPoint3dCollection, INurbsPoint3dCollection)"
type: interface
api: [api7]
domain: [3d]
tags: [interface, api7, 3d, ksnurbspoint3dcollection]
sources:
- ksnurbspoint3dcollection.html
---
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Математическая кривая в трехмерном пространстве (Интерфейсы ksCurve3D, ICurve3D)  > Параметры трехмерных NURBS (Интерфейсы ksNurbs3dParam,INurbs3dParam) *
## Массив точек для трехмерных NURBS (Интерфейсы ksNurbsPoint3dCollection, INurbsPoint3dCollection)
Интерфейс массива точек для трехмерных NURBS.
| ksNurbsPoint3dCollection | - интерфейс Automation |
| --- | --- |
| INurbsPoint3dCollection | - интерфейс COM |
Примечание:
Данный интерфейс может быть получен с использованием метода интерфейса ksNurbs3dParam::NurbsPoint3DCollection.
## Add - Добавить объект в конец массива
Синтаксис Automation:
```
BOOL Add (LPDISPATCH obj);
```
Синтаксис COM:
```
BOOL Add (LPNURBSPOINT3DPARAM obj);
Входной параметр:
obj - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam параметров точки для трехмерной NURBS.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Указатель на интерфейс добавляемого объекта obj не должен быть равен 0.
## AddAt - Добавить объект с заданным индексом в массив
Синтаксис Automation:
```
BOOL AddAt (LPDISPATCH obj, long index);
```
Синтаксис COM:
```
BOOL AddAt (LPNURBSPOINT3DPARAM obj, long index);
Входные параметры:
obj - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam параметров точки для трехмерной NURBS,
index - индекс в массиве.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Указатель на интерфейс добавляемого объекта obj не должен быть равен 0.
## AddBefore - Добавить объект перед указанным объектом в массиве
Синтаксис Automation:
```
BOOL AddBefore (LPDISPATCH obj, LPDISPATCH base);
```
Синтаксис COM:
```
BOOL AddBefore (LPNURBSPOINT3DPARAM obj, LPNURBSPOINT3DPARAM base);
Входные параметры:
obj - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam добавляемого объекта,
base - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam базового объекта.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Указатели на интерфейсы добавляемого и базового объекта obj и base не должны быть равны 0.
## Clear - Очистить массив
Синтаксис Automation:
```
BOOL Clear();
```
Синтаксис COM:
```
BOOL Clear();
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Объекты удаляются только из массива, в модель изменения не передаются.
## DetachByBody - Удалить указанный объект из массива
Синтаксис Automation:
```
BOOL DetachByBody (LPDISPATCH obj);
```
Синтаксис COM:
```
BOOL DetachByBody (LPNURBSPOINT3DPARAM obj);
Входные параметры:
obj - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam удаляемого объекта.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечания:
Указатель на интерфейс удаляемого объекта obj не должен быть равен 0.
## DetachByIndex - Удалить объект из массива по индексу
Синтаксис Automation:
```
BOOL DetachByIndex (long index);
```
Синтаксис COM:
```
BOOL DetachByIndex (long index);
Входной параметр:
index - индекс удаляемого объекта в массиве.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Элемент массива из модели не удаляется.
## FindIt - Получить индекс элемента в коллекции
Синтаксис Automation:
```
long FindIt (LPDISPATCH entity);
Входные параметры:
entity - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam точки для трехмерного NURBS.
Возвращаемое значение:
индекс элемента в массиве. - если элемент найден в коллекции,
-1 - элемент в коллекции не найден.
```
Синтаксис COM:
```
unsigned long FindIt (LPNURBSPOINT3D entity);
Входные параметры:
entity - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam точки для трехмерного NURBS.
Возвращаемое значение:
индекс элемента в массиве. - если элемент найден в коллекции,
SYS_MAX_UINT - элемент в коллекции не найден.
```
## First - Получить указатель на интерфейс первого объекта в массиве
Синтаксис Automation:
```
LPDISPATCH First();
```
Синтаксис COM:
```
LPNURBSPOINT3DPARAM First();
Возвращаемое значение:
- указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam.
```
## GetByIndex - Получить указатель на интерфейс объекта в массиве по индексу
Синтаксис Automation:
```
LPDISPATCH GetByIndex (long index);
```
Синтаксис COM:
```
LPNURBSPOINT3DPARAM GetByIndex (long index);
Входной параметр:
index - номер объекта в массиве.
Возвращаемое значение:
указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam.
```
## GetCount - Получить количество элементов в массиве
Синтаксис Automation:
```
long GetCount();
```
Синтаксис COM:
```
long GetCount();
Возвращаемое значение:
- количество элементов массива.
```
## Last - Получить указатель на интерфейс последнего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Last();
```
Синтаксис COM:
```
LPNURBSPOINT3DPARAM Last();
Возвращаемое значение:
- указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam.
```
## Next - Получить указатель на интерфейс следующего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Next();
```
Синтаксис COM:
```
LPNURBSPOINT3DPARAM Next();
Возвращаемое значение:
- указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam.
```
## Prev - Получить указатель на интерфейс предыдущего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Prev();
```
Синтаксис COM:
```
LPNURBSPOINT3DPARAM Prev();
Возвращаемое значение:
- указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam.
```
## Refresh - Обновить массив
Синтаксис Automation:
```
BOOL Refresh();
```
Синтаксис COM:
```
BOOL Refresh();
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
После вызова данной функции возникает полное соответствие массива с массивом точек ребра (поверхности), и удаляются все предыдущие изменения в массиве.
## SetByIndex - Заменить объект с указанным индексом в массиве на присланный объект
Синтаксис Automation:
```
BOOL SetByIndex (LPDISPATCH obj, long index );
```
Синтаксис COM:
```
BOOL SetByIndex (LPNURBSPOINT3DPARAM obj, long index );
Входные параметры:
obj - указатель на интерфейс ksNurbsPoint3dParam или INurbsPoint3dParam присоединяемого объекта,
index - индекс элемента в массиве.
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```