DG Kernel Documentation


Skip Navigation Links.
Start page
Quick Start
Search Page
Installation
Overview of the software
What is new
Licensing
Collapse ModelsModels
Expand DG Kernel ComponentsDG Kernel Components
Expand API ReferenceAPI Reference
Expand Samples and TutorialsSamples and Tutorials
Expand GraphicsGraphics
Expand Math ObjectsMath Objects
Expand DeprecatedDeprecated
Redistribution
Model Viewer
Open Source
Support
Skip Navigation LinksHome Page > Models > Entities > Attributes > Clipping Planes Search Documentation


Clipping Planes

Clipping planes affect only rendering of the entity in a 3D view. They do not affect geometry in anyway

Clipping planes allow cutting off some part of the current object.

Clipping plane is defined by the point where the plane passes through and unitary vector of its normal. Semi space where the normal points to is called positive side of the plane. When enabled, clipping plane cuts off all parts of the object which are located on the negative side.

Every object has a fixed set of six clipping planes. A clipping plane has to be enabled to have effect on the appearance of the object.  By default, all clipping planes are disabled and located at the origin of the local frame with normal directed along the local x axis.

In 3D Debugger clipping planes are managed by Clip Editor dialog, which is available from the Current Object > Clipping Planes menu option. In DG Kernel control clipping planes are managed by IClipArray interface, which can be queried from IEntity_DG, and IClipPlane interface, which can be be obtained using GetClipPlane method of the IClipArray.

Clipping plane can be rendered for debugging or other purposes. To enable drawing, use IClipPlane.Show method.

Direction of normal vector of the clipping plane is controlled via IAxis, queried from the correspondent  IClipPlane Location of clipping plane can be controlled with ILocation interface queried from IClipPlane or previously obtained IAxis.

A clipping plane can be shared by different objects. This way it is easy to synchronize modifications of the plane. When a clipping plane is not shared it is called local clipping plane. Local clipping plane can have effect only on its object and it belongs to the object. When object is moved or exported, its local planes move with local frame of the object. Local clipping plane can be converted to shared clipping planes. 

Shared clipping planes belong to the model. When a local clipping plane is shared it is transferred to the model, so that it can be used by several other entities of the model. Shared planes are global. This means that when  a object, which uses the plane, is moved, global position and orientation of the plane remains unchanged.

An object can stop sharing a clipping plane, in which case a copy of the plane is created and made local to the object.

All clipping planes and their sharing properties are stored with the model, when saved.