--- title: "Массив циклов грани (Интерфейсы ksLoopCollection, ILoopCollection)" type: interface api: [api7] domain: [2d] tags: [interface, api7, 2d, ksloopcollection] sources: - ksloopcollection.html --- *API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Объект модели (Интерфейсы ksEntity и IEntity)  > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента)  > Интерфейсы дополнительных элементов * ## Массив циклов грани (Интерфейсы ksLoopCollection, ILoopCollection) Интерфейс массива циклов. | ksLoopCollection | - интерфейс Automation | | --- | --- | | ILoopCollection | - интерфейс COM | Примечание: Данный интерфейс можно получить от интерфейса свойств грани ksFaceDefinition или IFaceDefinition. ## FindIt - Получить индекс элемента в массиве Синтаксис Automation: ``` long FindIt (LPDISPATCH entity); Возвращаемое значение: индекс элемента - если элемент найден в массиве, -1 - если элемент не найден. ``` Синтаксис COM: ``` unsigned long FindIt (LPLOOP entity); Возвращаемое значение: индекс элемента - если элемент найден в массиве. SYS_MAX_UINT - если элемент не найден. Входные параметры: entity - указатель на интерфейс компонента ksLoop или ILoop. ``` ## First - Получить указатель на интерфейс первого объекта в массиве Синтаксис Automation: ``` LPDISPATCH First(); ``` Синтаксис COM: ``` LPLOOP First(); Возвращаемое значение: - указатель на интерфейс ksLoop или ILoop. ``` ## GetByIndex - Получить указатель на интерфейс объекта в массиве по индексу Синтаксис Automation: ``` LPDISPATCH GetByIndex (long index); ``` Синтаксис COM: ``` LPLOOP GetByIndex (long index); Входной параметр: index - номер объекта в массиве. Возвращаемое значение: - указатель на интерфейс ksLoop или ILoop. ``` ## GetCount - Получить количество элементов в массиве Синтаксис Automation: ``` long GetCount(); ``` Синтаксис COM: ``` long GetCount(); Возвращаемое значение: - количество элементов массива. ``` ## Last - Получить указатель на интерфейс последнего объекта в массиве Синтаксис Automation: ``` LPDISPATCH Last(); ``` Синтаксис COM: ``` LPLOOP Last(); Возвращаемое значение: - указатель на интерфейс ksLoop или ILoop. ``` ## Next - Получить указатель на интерфейс следующего объекта в массиве Синтаксис Automation: ``` LPDISPATCH Next(); ``` Синтаксис COM: ``` LPLOOP Next(); Возвращаемое значение: - указатель на интерфейс ksLoop или ILoop. ``` ## Prev - Получить указатель на интерфейс предыдущего объекта в массиве Синтаксис Automation: ``` LPDISPATCH Prev(); ``` Синтаксис COM: ``` LPLOOP Prev(); Возвращаемое значение: - указатель на интерфейс ksLoop или ILoop. ``` ## Refresh - Обновить массив Синтаксис Automation: ``` BOOL Refresh(); ``` Синтаксис COM: ``` BOOL Refresh(); Возвращаемое значение: TRUE - в случае успешного завершения, FALSE - в случае неудачи. ``` Примечание: После вызова данной функции возникает полное соответствие массива с массивом циклов грани и удаляются все предыдущие изменения в массиве.