--- title: "Интерфейс IEvolutions" type: interface api: [api7] tags: [interface, api7, ievolutions] sources: - ievolutions.html --- *API интерфейсов. Версия 7 > Документ 3D  > Вспомогательные объекты, 3D-кривые и элементы тела  > 3D-кривые и элементы тела  > Интерфейс IModelObjects  > IModelObjects - свойства * ## Интерфейс IEvolutions Интерфейс коллекции кинематических операций (по траектории). Иерархия: IDispatch IKompasAPIObject IKompasCollection IModelObjects IEvolutions Данный интерфейс можно получить, используя свойство контейнера трехмерных объектов IModelContainer::Evolutions. Интерфейс также используется для коллекции кинематических поверхностей ISurfaceContainer::EvolutionSurfaces. КОМПАС версия v18 ## Add - Создает новый элемент и добавляет его в коллекцию Синтаксис Automation: ``` LPDISPATCH Add( ksObj3dTypeEnum EvolutionType ); ``` Синтаксис COM: ``` HRESULT Add( ksObj3dTypeEnum EvolutionType, IEvolution ** Result ); Возвращаемое значение: - указатель на интерфейс IEvolution. Входные параметры: EvolutionType - тип объекта из перечисления ksObj3dTypeEnum. ``` Примечания: 1. Метод позволяет создать новый интерфейс кинематической операции. 2. Допустимыми значениями EvolutionType являются: •o3d_bossEvolution, o3d_cutEvolution для коллекции операций IModelContainer::Evolutions •o3d_EvolutionSurface для коллекции поверхностей ISurfaceContainer::EvolutionSurfaces. 3. После получения нового интерфейса нужно задать параметры операции и вызвать метод IModelObject::Update. ## Evolution - Возвращает элемент, заданный по индексу или по имени Тип данных: Указатель на интерфейс IEvolution. Синтаксис Automation: ``` Evolution = Object.Evolution( Index ) Получить свойство (* ) Evolution = Object.GetEvolution( Index ) Получить свойство (**) ``` Синтаксис COM: ``` Object.get_Evolution( Index, &Evolution ) Получить свойство Входные параметры: VARIANT Index - индекс или имя элемента. ``` Примечание: Свойство доступно только для чтения.