---
title: "Интерфейс IModelContainer"
type: interface
api: [api7]
domain: [sketch, feature]
tags: [interface, api7, sketch, feature, imodelcontainer]
sources:
  - imodelcontainer.html
---

*API интерфейсов. Версия 7 > Документ 3D  > Операции, массивы, эскизы, точки  > Контейнер *


## Интерфейс IModelContainer

Интерфейс контейнера трехмерных объектов.
Иерархия:
IDispatch
IModelContainer
Описание.
Интерфейс позволяет работать с коллекциями 3D-объектов, входящих в состав 3D-объекта.
Примечание.
Интерфейс контейнера является дополнительным к интерфейсу IPart7. Данный интерфейс можно получить от IPart7 посредством вызова метода IUnknown::QueryInterface (const GUID far& iid, void** pif);


## AddObject - Создает новый элемент 3D модели

Синтаксис Automation:
```
LPDISPATCH AddObject( ksObj3dTypeEnum ObjectType );
```
Синтаксис COM:
```
HRESULT AddObject( ksObj3dTypeEnum ObjectType, IModelObject * * Result );
Возвращаемое значение:
- указатель на интерфейс IModelObject.
Входные параметры:
ObjectType    - тип объекта из перечисления ksObj3dTypeEnum.
```


## BilletsObsoletes - Коллекция деталей заготовок и зеркальных деталей

Тип данных: указатель на интерфейс коллекции деталей заготовок и зеркальных деталей IBilletsObsoletes
Синтаксис Automation:
```
BilletsObsoletes = Object.BilletsObsoletes;    Получить свойство (* )
BilletsObsoletes = Object.GetBilletsObsoletes();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_BilletsObsoletes( &BilletsObsoletes);    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## BodyRepositions - Коллекция операций перепозиционирования тела, поверхности

Тип данных: Указатель на интерфейс IBodyRepositions.
Синтаксис Automation:
```
BodyRepositions = Object.BodyRepositions;    Получить свойство (* )
BodyRepositions = Object.GetBodyRepositions();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_BodyRepositions( &BodyRepositions );    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Booleans - Коллекция булевых операций

Тип данных: Указатель на интерфейс IBooleans.
Синтаксис Automation:
```
Booleans = Object.Booleans    Получить свойство (* )
Booleans = Object.GetBooleans()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Booleans( &Booleans )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Chamfers - Коллекция операций Фаска

Тип данных: Указатель на интерфейс IChamfers.
Синтаксис Automation:
```
Chamfers = Object.Chamfers    Получить свойство (* )
Chamfers = Object.GetChamfers()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Chamfers( &Chamfers )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## CollectionsGeometry - Коллекции геометрии

Тип данных: указатель на интерфейс ICollectionsGeometry.
Синтаксис Automation:
```
CollectionsGeometry = Object.CollectionsGeometry;    Получить свойство (* )
CollectionsGeometry = Object.GetCollectionsGeometry();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_CollectionsGeometry( &CollectionsGeometry );    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## CopiesGeometry - Коллекция операций копирования геометрии

Тип данных: указатель на интерфейс ICopiesGeometry.
Синтаксис Automation:
```
CopiesGeometry = Object.CopiesGeometry;    Получить свойство (* )
CopiesGeometry = Object.GetCopiesGeometry();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_CopiesGeometry( &CopiesGeometry );    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Cuts - Коллекция операций Cечение

Тип данных: Указатель на интерфейс ICuts.
Синтаксис Automation:
```
Cuts = Object.Cuts    Получить свойство (* )
Cuts = Object.GetCuts()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Cuts( &Cuts )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## DraftsFromEdges - Коллекция операций "Уклон от базовой линии"

Тип данных: Указатель на интерфейс IDraftsFromEdges
Синтаксис Automation:
```
DraftsFromEdges = Object.DraftsFromEdges    Получить свойство (* )
DraftsFromEdges = Object.GetDraftsFromEdges()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_DraftsFromEdges( &DraftsFromEdges )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## ElementaryBodies - Коллекция элементарных тел

Тип данных: Указатель на интерфейс IElementaryBodies
Синтаксис Automation:
```
ElementaryBodies = Object.ElementaryBodies    Получить свойство (* )
ElementaryBodies = Object.GetElementaryBodies()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ElementaryBodies( &ElementaryBodies )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
КOMPAS v24


## Evolutions - Коллекция кинематических операций

Тип данных: Указатель на интерфейс IEvolutions.
Синтаксис Automation:
```
Evolutions = Object.Evolutions    Получить свойство (* )
Evolutions = Object.GetEvolutions()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Evolutions( &Evolutions )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Extrusions - Указатель на интерфейс коллекции операций выдавливания

Тип данных: указатель на интерфейс коллекции операций выдавливания IExtrusions.
Синтаксис Automation:
```
Extrusions = iObject.Extrusions;    Получить свойство (* )
Extrusions = iObject.GetExtrusions();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Extrusions( &Extrusions );    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Свойство позволяет получать коллекции операций выдавливания.


## FeaturePatterns - Указатель на интерфейс коллекции операций копирования

Тип данных: указатель на интерфейс IFeaturePatterns.
Синтаксис Automation:
```
FeaturePatterns = Object.FeaturePatterns    Получить свойство (* )
FeaturePatterns = Object.GetFeaturePatterns()    Получить свойство (**)
```
Синтаксис COM:
```
FeaturePatterns = Object.GetFeaturePatterns()    Получить свойство
Свойство позволяет получить коллекцию всех операций копирования, входящих в состав данного объекта.
```
Примечание:
Свойство доступно только для чтения.


## Fillets - Коллекция операций Скругление

Тип данных: Указатель на интерфейс IFillets.
Синтаксис Automation:
```
Fillets = Object.Fillets    Получить свойство (* )
Fillets = Object.GetFillets()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Fillets( &Fillets )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## FullFillets - Коллекция операций полного скругления

Тип данных: Указатель на интерфейс IFullFillets
Синтаксис Automation:
```
FullFillets = Object.FullFillets    Получить свойство (* )
FullFillets = Object.GetFullFillets()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_FullFillets( &FullFillets )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия Компас v18.1


## Holes3D - Коллекция отверстий 3D

Тип данных: Указатель на интерфейс IHoles3D.
Синтаксис Automation:
```
Holes3D = Object.Holes3D    Получить свойство (* )
Holes3D = Object.GetHoles3D()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Holes3D( &Holes3D )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Inclines - Коллекция операций Уклон

Тип данных: Указатель на интерфейс IInclines.
Синтаксис Automation:
```
Inclines = Object.Inclines    Получить свойство (* )
Inclines = Object.GetInclines()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Inclines( &Inclines )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Lofts - Коллекция операций По сечениям

Тип данных: Указатель на интерфейс ILofts.
Синтаксис Automation:
```
Lofts = Object.Lofts    Получить свойство (* )
Lofts = Object.GetLofts()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Lofts( &Lofts )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## MacroObjects3D - Коллекция макроэлементов 3D

Тип данных: Указатель на интерфейс IMacroObjects3D.
Синтаксис Automation:
```
MacroObjects3D = Object.MacroObjects3D    Получить свойство (* )
MacroObjects3D = Object.GetMacroObjects3D()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_MacroObjects3D( &MacroObjects3D )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## MoldCavities - Коллекция операций вычитания компонентов

Тип данных: Указатель на интерфейс IMoldCavities.
Синтаксис Automation:
```
MoldCavities = Object.MoldCavities    Получить свойство (* )
MoldCavities = Object.GetMoldCavities()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_MoldCavities( &MoldCavities )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Objects - Трехмерные объекты, входящие в состав данного объекта

Тип данных: VARIANT
Синтаксис Automation:
```
Objects = iObject.Objects(ObjType)    Получить свойство (* )
Objects = iObject.GetObjects(ObjType)    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Objects( &Objects )    Получить свойство
Входные параметры:
ObjType    - тип трехмерных объектов из перечисления ksObj3dTypeEnum или KompasAPIObjectTypeEnum.
```
Примечание:
1.Свойство доступно только для чтения.
2.Коллекция объектов возвращается в виде массива SAFEARRAY объектов LPDISPATCH (VT_ARRAY | VT_DISPATCH). Если возвращается один объект, то тип VARIANT-а будет VT_DISPATCH, если возвращается несколько объектов, то тип VARIANT-а будет VT_ARRAY | VT_DISPATCH.
3.В качестве типа объекта может передаваться одно значение (VT_I4) или массив типов объектов (VT_ARRAY| VT_I4).
Типы объектов могут быть из перечислений ksObj3dTypeEnum и KompasAPIObjectTypeEnum.
Если тип передается ksObj3dTypeEnum::o3d_unknown – возвращаются все объекты.


## PipeElements - Коллекция трубчатых элементов

Тип данных:  Указатель на интерфейс IPipeElements
Синтаксис Automation:
```
PipeElements = Object.PipeElements    Получить свойство (* )
PipeElements = Object.GetPipeElements()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_PipeElements( &PipeElements )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
КOMPAS v24


## Points3D - Указатель на интерфейс коллекции элементов Пространственная точка

Тип данных: указатель на интерфейс коллекции элементов Пространственная точка IPoints3D.
Синтаксис Automation:
```
Points3D = iObject.Points3D;    Получить свойство (* )
Points3D = iObject.GetPoints3D();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Points3D( &Points3D );    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Свойство позволяет получать коллекции элементов Пространственная точка.


## Ribs - Коллекция операций Ребро жесткости

Тип данных: Указатель на интерфейс IRibs.
Синтаксис Automation:
```
Ribs = Object.Ribs    Получить свойство (* )
Ribs = Object.GetRibs()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Ribs( &Ribs )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Rotateds - Указатель на интерфейс коллекции операций вращения

Тип данных: указатель на интерфейс коллекции операций вращения IRotateds.
Синтаксис Automation:
```
Rotateds = Object.Rotateds    Получить свойство (* )
Rotateds = Object.GetRotateds()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Rotateds( &Rotateds )    Получить свойство
Свойство позволяет получить коллекцию всех операций вращения, входящих в состав данного объекта.
```
Примечание:
Свойство доступно только для чтения.


## Scalings3D - Коллекция операций масштабирования

Тип данных: указатель на интерфейс IScalings3D.
Синтаксис Automation:
```
Scalings3D = Object.Scalings3D    Получить свойство (* )
Scalings3D = Object.GetScalings3D()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Scalings3D( &Scalings3D )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Shells - Коллекция операций Оболочка

Тип данных: Указатель на интерфейс IShells.
Синтаксис Automation:
```
Shells = Object.Shells    Получить свойство (* )
Shells = Object.GetShells()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Shells( &Shells )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Sketchs - Указатель на интерфейс коллекции объектов "Эскиз"

Тип данных: указатель на интерфейс коллекции элементов «Эскиз» ISketchs.
Синтаксис Automation:
```
Sketchs = iObject.Sketchs;    Получить свойство (* )
Sketchs = iObject.GetSketchs();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_Sketchs( &Sketchs );    Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Свойство позволяет получать коллекции элементов "Эскиз".


## SplitSolids - Коллекция операций Разрезать

Тип данных: Указатель на интерфейс ISplitSolids.
Синтаксис Automation:
```
SplitSolids = Object.SplitSolids;    Получить свойство (* )
SplitSolids = Object.GetSplitSolids();    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_SplitSolids( &SplitSolids );    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия: Компас v20


## SurfaceThickenings - Указатель на интерфейс коллекции операций придания толщины

Тип данных: указатель на интерфейс коллекции операций придания толщины ISurfaceThickenings.
Синтаксис Automation:
```
SurfaceThickenings = Object.SurfaceThickenings    Получить свойство (* )
SurfaceThickenings = Object.GetSurfaceThickenings()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_SurfaceThickenings( &SurfaceThickenings )    Получить свойство
Свойство позволяет получить коллекцию всех операций придания толщины, входящих в состав данного объекта.
```
Примечание:
Свойство доступно только для чтения.


## UnionsComponents - Коллекция операций объединения компонентов

Тип данных: Указатель на интерфейс IUnionsComponents.
Синтаксис Automation:
```
UnionsComponents = Object.UnionsComponents    Получить свойство (* )
UnionsComponents = Object.GetUnionsComponents()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_UnionsComponents( &UnionsComponents )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## UserObjects - Коллекции пользовательских объектов 3D

Тип данных: Указатель на интерфейс IUserObjects3D.
Синтаксис Automation:
```
UserObjects = Object.UserObjects    Получить свойство(* )
UserObjects = Object.GetUserObjects()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_UserObjects(&UserObjects )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## WireFrames3D - Коллекция трехмерных каркасов

Тип данных: Указатель на интерфейс IWireFrames3D.
| WireFrames3D = Object.WireFrames3D | Получить свойство (* ) |
| --- | --- |
| WireFrames3D = Object.GetWireFrames3D() | Получить свойство (**) |
Синтаксис COM:
```
Object.get_WireFrames3D( &WireFrames3D )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия: Компас v20
