--- 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 - в случае неудачи. ```