DG Kernel Documentation

Skip Navigation Links. Skip Navigation LinksHome Page > Models > Entities


3G Objects in DG Kernel software are called Entities. Entities have geometry (surface or lines or consists of points). An entity can be moved in space and attached to another entity.

Major attributes of an entity:

Geometry attribute defines shape of the entity. The local frame defines where the geometry is located and how it is oriented in 3D. Geometry can be shared by different entities.

When and entity is a child of another entity they form an assembly (group) so they move in space together as a solid object under various manipulations. More precisely, when Local frame of either child or parent is modified local frame of the other entity is updated accordingly by the software

Programmatically entites can be accessed via IEntity_DG.

If Transient Flag of an entity is set to true (false is the default) using IEntity_DG.SetTransient() the entity will be excluded from any save operation

>IEntity_DG of a top-level object of the model can be obtained, for an example, via query: DG Kernel>GetModel>IModel>GetEntity. There are other warious ways to obtain IEntity_DG of a particular object.

>IEntity_DG of a child object can be obtained, for an example, from IEntity_DG of its parent with a call to GetChildAt method.

Entities, which are not part of any model (and hence not rendered in any view) are called standalone. They can be used to perform some operations. Standalone entities can be created using IObjectGenerator_DG.Create("Entity_DG"); Standalone entities are deleted as soon as the last reference to the entity goes out of scope or the object holding the reference is deleted

The above call creates an empty entity (entity without a geometry). Empty entites are used to group entites as its children. Geometry can be created using IEntity_DG.SetGeometryType() or attached using IEntity_DG.AttachGeometry()

Entities can be shared between models (for example for saving a selected set of entities), but entities must be unique as a software object instance inside a model