--- title: "Интерфейс IMacroObjects3D" type: interface api: [api7] domain: [3d] tags: [interface, api7, 3d, imacroobjects3d] sources: - imacroobjects3d.html --- *API интерфейсов. Версия 7 > Документ 3D  > Макрообъекты 3D * ## Интерфейс IMacroObjects3D Интерфейс коллекции макроэлементов 3D. Иерархия: IDispatch IKompasAPIObject IKompasCollection IModelObjects IMacroObjects3D Данный интерфейс можно получить, используя свойство контейнера трехмерных объектов IModelContainer::MacroObjects3D. КОМПАС версия v18 ## Add - Создает новый элемент и добавляет его в коллекцию Синтаксис Automation: ``` LPDISPATCH Add(); ``` Синтаксис COM: ``` HRESULT Add( IMacroObject3D ** Result ); Возвращаемое значение: - указатель на интерфейс IMacroObject3D. ``` Примечания: Метод позволяет создать новый интерфейс макрообъекта. После получения нового интерфейса нужно задать параметры объекта и вызвать метод IModelObject::Update. ## MacroObject3D - Возвращает элемент, заданный по индексу Тип данных: Указатель на интерфейс IMacroObject3D. Синтаксис Automation: ``` MacroObject3D = Object.MacroObject3D( Index ); Получить свойство (* ) MacroObject3D = Object.GetMacroObject3D( Index ); Получить свойство (**) ``` Синтаксис COM: ``` Object.get_MacroObject3D( Index, &MacroObject3D ); Получить свойство Входные параметры: VARIANT Index - индекс или имя элемента. ``` Примечание: Свойство доступно только для чтения.