Open CASCADE Technology 7.8.0
Public Member Functions
PrsMgr_PresentableObject Class Referenceabstract

A framework to supply the Graphic3d structure of the object to be presented. On the first display request, this structure is created by calling the appropriate algorithm and retaining this framework for further display. This abstract framework is inherited in Application Interactive Services (AIS), notably by AIS_InteractiveObject. Consequently, 3D presentation should be handled by the relevant daughter classes and their member functions in AIS. This is particularly true in the creation of new interactive objects. More...

#include <PrsMgr_PresentableObject.hxx>

Inheritance diagram for PrsMgr_PresentableObject:
Inheritance graph
[legend]

Public Member Functions

PrsMgr_PresentationsPresentations ()
 Return presentations.
 
Graphic3d_ZLayerId ZLayer () const
 Get ID of Z layer for main presentation.
 
virtual void SetZLayer (const Graphic3d_ZLayerId theLayerId)
 Set Z layer ID and update all presentations of the presentable object. The layers mechanism allows drawing objects in higher layers in overlay of objects in lower layers.
 
Standard_Boolean IsMutable () const
 Returns true if object has mutable nature (content or location are be changed regularly). Mutable object will be managed in different way than static onces (another optimizations).
 
virtual void SetMutable (const Standard_Boolean theIsMutable)
 Sets if the object has mutable nature (content or location will be changed regularly). This method should be called before object displaying to take effect.
 
const Handle< Graphic3d_ViewAffinity > & ViewAffinity () const
 Return view affinity mask.
 
Standard_Boolean HasDisplayMode () const
 Returns true if the Interactive Object has display mode setting overriding global setting (within Interactive Context).
 
Standard_Integer DisplayMode () const
 Returns the display mode setting of the Interactive Object. The range of supported display mode indexes should be specified within object definition and filtered by AccepDisplayMode().
 
void SetDisplayMode (const Standard_Integer theMode)
 Sets the display mode for the interactive object. An object can have its own temporary display mode, which is different from that proposed by the interactive context.
 
void UnsetDisplayMode ()
 Removes display mode settings from the interactive object.
 
Standard_Boolean HasHilightMode () const
 Returns true if the Interactive Object is in highlight mode.
 
Standard_Integer HilightMode () const
 Returns highlight display mode. This is obsolete method for backward compatibility - use HilightAttributes() and DynamicHilightAttributes() instead.
 
void SetHilightMode (const Standard_Integer theMode)
 Sets highlight display mode. This is obsolete method for backward compatibility - use HilightAttributes() and DynamicHilightAttributes() instead.
 
void UnsetHilightMode ()
 Unsets highlight display mode.
 
virtual Standard_Boolean AcceptDisplayMode (const Standard_Integer theMode) const
 Returns true if the class of objects accepts specified display mode index. The interactive context can have a default mode of representation for the set of Interactive Objects. This mode may not be accepted by a given class of objects. Consequently, this virtual method allowing us to get information about the class in question must be implemented. At least one display mode index should be accepted by this method. Although subclass can leave default implementation, it is highly desired defining exact list of supported modes instead, which is usually an enumeration for one object or objects class sharing similar list of display modes.
 
virtual Standard_Integer DefaultDisplayMode () const
 Returns the default display mode.
 
Standard_Boolean ToBeUpdated (Standard_Boolean theToIncludeHidden=Standard_False) const
 Returns TRUE if any active presentation has invalidation flag.
 
void SetToUpdate (Standard_Integer theMode)
 Flags presentation to be updated; UpdatePresentations() will recompute these presentations.
 
void SetToUpdate ()
 flags all the Presentations to be Updated.
 
Standard_Boolean IsInfinite () const
 Returns true if the interactive object is infinite; FALSE by default. This flag affects various operations operating on bounding box of graphic presentations of this object. For instance, infinite objects are not taken in account for View FitAll. This does not necessarily means that object is actually infinite, auxiliary objects might be also marked with this flag to achieve desired behavior.
 
void SetInfiniteState (const Standard_Boolean theFlag=Standard_True)
 Sets if object should be considered as infinite.
 
PrsMgr_TypeOfPresentation3d TypeOfPresentation3d () const
 Returns information on whether the object accepts display in HLR mode or not.
 
void SetTypeOfPresentation (const PrsMgr_TypeOfPresentation3d theType)
 Set type of presentation.
 
PrsMgr_DisplayStatus DisplayStatus () const
 Return presentation display status; PrsMgr_DisplayStatus_None by default.
 
presentation attributes
const Handle< Prs3d_Drawer > & Attributes () const
 Returns the attributes settings.
 
virtual void SetAttributes (const Handle< Prs3d_Drawer > &theDrawer)
 Initializes the drawing tool theDrawer.
 
const Handle< Prs3d_Drawer > & HilightAttributes () const
 Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalSelected and Prs3d_TypeOfHighlight_Selected defined within AIS_InteractiveContext::HighlightStyle().
 
virtual void SetHilightAttributes (const Handle< Prs3d_Drawer > &theDrawer)
 Initializes the hilight drawing tool theDrawer.
 
const Handle< Prs3d_Drawer > & DynamicHilightAttributes () const
 Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalDynamic and Prs3d_TypeOfHighlight_Dynamic defined within AIS_InteractiveContext::HighlightStyle().
 
virtual void SetDynamicHilightAttributes (const Handle< Prs3d_Drawer > &theDrawer)
 Initializes the dynamic hilight drawing tool.
 
virtual void UnsetHilightAttributes ()
 Clears settings provided by the hilight drawing tool theDrawer.
 
void SynchronizeAspects ()
 Synchronize presentation aspects after their modification.
 
object transformation
const Handle< Graphic3d_TransformPers > & TransformPersistence () const
 Returns Transformation Persistence defining a special Local Coordinate system where this presentable object is located or NULL handle if not defined. Position of the object having Transformation Persistence is mutable and depends on camera position. The same applies to a bounding box of the object.
 
virtual void SetTransformPersistence (const Handle< Graphic3d_TransformPers > &theTrsfPers)
 Sets up Transform Persistence defining a special Local Coordinate system where this object should be located. Note that management of Transform Persistence object is more expensive than of the normal one, because it requires its position being recomputed basing on camera position within each draw call / traverse.
 
const Handle< TopLoc_Datum3D > & LocalTransformationGeom () const
 Return the local transformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
void SetLocalTransformation (const gp_Trsf &theTrsf)
 Sets local transformation to theTransformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
void SetLocalTransformation (const Handle< TopLoc_Datum3D > &theTrsf)
 Sets local transformation to theTransformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
Standard_Boolean HasTransformation () const
 Returns true if object has a transformation that is different from the identity.
 
const Handle< TopLoc_Datum3D > & TransformationGeom () const
 Return the transformation taking into account transformation of parent object(s). Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
const gp_TrsfLocalTransformation () const
 Return the local transformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
const gp_TrsfTransformation () const
 Return the transformation taking into account transformation of parent object(s). Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.
 
const gp_GTrsfInversedTransformation () const
 Return inversed transformation.
 
const Handle< TopLoc_Datum3D > & CombinedParentTransformation () const
 Return combined parent transformation.
 
virtual void ResetTransformation ()
 resets local transformation to identity.
 
virtual void UpdateTransformation ()
 Updates final transformation (parent + local) of presentable object and its presentations.
 
clipping planes
const Handle< Graphic3d_SequenceOfHClipPlane > & ClipPlanes () const
 Get clip planes.
 
virtual void SetClipPlanes (const Handle< Graphic3d_SequenceOfHClipPlane > &thePlanes)
 Set clip planes for graphical clipping for all display mode presentations. The composition of clip planes truncates the rendering space to convex volume. Please be aware that number of supported clip plane is limited. The planes which exceed the limit are ignored. Besides of this, some planes can be already set in view where the object is shown: the number of these planes should be subtracted from limit to predict the maximum possible number of object clipping planes.
 
virtual void AddClipPlane (const Handle< Graphic3d_ClipPlane > &thePlane)
 Adds clip plane for graphical clipping for all display mode presentations. The composition of clip planes truncates the rendering space to convex volume. Please be aware that number of supported clip plane is limited. The planes which exceed the limit are ignored. Besides of this, some planes can be already set in view where the object is shown: the number of these planes should be subtracted from limit to predict the maximum possible number of object clipping planes.
 
virtual void RemoveClipPlane (const Handle< Graphic3d_ClipPlane > &thePlane)
 Removes previously added clip plane.
 
parent/children properties
PrsMgr_PresentableObjectParent () const
 Returns parent of current object in scene hierarchy.
 
const PrsMgr_ListOfPresentableObjectsChildren () const
 Returns children of the current object.
 
virtual void AddChild (const Handle< PrsMgr_PresentableObject > &theObject)
 Makes theObject child of current object in scene hierarchy.
 
void AddChildWithCurrentTransformation (const Handle< PrsMgr_PresentableObject > &theObject)
 Makes theObject child of current object in scene hierarchy with keeping the current global transformation So the object keeps the same position/orientation in the global CS.
 
virtual void RemoveChild (const Handle< PrsMgr_PresentableObject > &theObject)
 Removes theObject from children of current object in scene hierarchy.
 
void RemoveChildWithRestoreTransformation (const Handle< PrsMgr_PresentableObject > &theObject)
 Removes theObject from children of current object in scene hierarchy with keeping the current global transformation. So the object keeps the same position/orientation in the global CS.
 
Standard_Boolean HasOwnPresentations () const
 Returns true if object should have own presentations.
 
virtual void BoundingBox (Bnd_Box &theBndBox)
 Returns bounding box of object correspondingly to its current display mode. This method requires presentation to be already computed, since it relies on bounding box of presentation structures, which are supposed to be same/close amongst different display modes of this object.
 
simplified presentation properties API
void SetIsoOnTriangulation (const Standard_Boolean theIsEnabled)
 Enables or disables on-triangulation build of isolines according to the flag given.
 
Aspect_TypeOfFacingModel CurrentFacingModel () const
 Returns the current facing model which is in effect.
 
void SetCurrentFacingModel (const Aspect_TypeOfFacingModel theModel=Aspect_TOFM_BOTH_SIDE)
 change the current facing model apply on polygons for SetColor(), SetTransparency(), SetMaterial() methods default facing model is Aspect_TOFM_TWO_SIDE. This mean that attributes is applying both on the front and back face.
 
Standard_Boolean HasColor () const
 Returns true if the Interactive Object has color.
 
virtual void Color (Quantity_Color &theColor) const
 Returns the color setting of the Interactive Object.
 
virtual void SetColor (const Quantity_Color &theColor)
 Only the interactive object knowns which Drawer attribute is affected by the color, if any (ex: for a wire,it's the wireaspect field of the drawer, but for a vertex, only the point aspect field is affected by the color). WARNING : Do not forget to set the corresponding fields here (hasOwnColor and myDrawer->SetColor())
 
virtual void UnsetColor ()
 Removes color settings. Only the Interactive Object knows which Drawer attribute is affected by the color setting. For a wire, for example, wire aspect is the attribute affected. For a vertex, however, only point aspect is affected by the color setting.
 
Standard_Boolean HasWidth () const
 Returns true if the Interactive Object has width.
 
Standard_Real Width () const
 Returns the width setting of the Interactive Object.
 
virtual void SetWidth (const Standard_Real theWidth)
 Allows you to provide the setting aValue for width. Only the Interactive Object knows which Drawer attribute is affected by the width setting.
 
virtual void UnsetWidth ()
 Reset width to default value.
 
Standard_Boolean HasMaterial () const
 Returns true if the Interactive Object has a setting for material.
 
virtual Graphic3d_NameOfMaterial Material () const
 Returns the current material setting as enumeration value.
 
virtual void SetMaterial (const Graphic3d_MaterialAspect &aName)
 Sets the material aMat defining this display attribute for the interactive object. Material aspect determines shading aspect, color and transparency of visible entities.
 
virtual void UnsetMaterial ()
 Removes the setting for material.
 
Standard_Boolean IsTransparent () const
 Returns true if there is a transparency setting.
 
virtual Standard_Real Transparency () const
 Returns the transparency setting. This will be between 0.0 and 1.0. At 0.0 an object will be totally opaque, and at 1.0, fully transparent.
 
virtual void SetTransparency (const Standard_Real aValue=0.6)
 Attributes a setting aValue for transparency. The transparency value should be between 0.0 and 1.0. At 0.0 an object will be totally opaque, and at 1.0, fully transparent. Warning At a value of 1.0, there may be nothing visible.
 
virtual void UnsetTransparency ()
 Removes the transparency setting. The object is opaque by default.
 
virtual Standard_Boolean HasPolygonOffsets () const
 Returns Standard_True if <myDrawer> has non-null shading aspect.
 
virtual void PolygonOffsets (Standard_Integer &aMode, Standard_ShortReal &aFactor, Standard_ShortReal &aUnits) const
 Retrieves current polygon offsets settings from <myDrawer>.
 
virtual void SetPolygonOffsets (const Standard_Integer aMode, const Standard_ShortReal aFactor=1.0, const Standard_ShortReal aUnits=0.0)
 Sets up polygon offsets for this object.
 
virtual void UnsetAttributes ()
 Clears settings provided by the drawing tool aDrawer.
 
virtual void DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const
 Dumps the content of me into the stream.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

deprecated methods

PrsMgr_PresentableObjectmyParent
 pointer to the parent object
 
PrsMgr_Presentations myPresentations
 list of presentations
 
Handle< Graphic3d_ViewAffinitymyViewAffinity
 view affinity mask
 
Handle< Graphic3d_SequenceOfHClipPlanemyClipPlanes
 sequence of object-specific clipping planes
 
Handle< Prs3d_DrawermyDrawer
 main presentation attributes
 
Handle< Prs3d_DrawermyHilightDrawer
 (optional) custom presentation attributes for highlighting selected object
 
Handle< Prs3d_DrawermyDynHilightDrawer
 (optional) custom presentation attributes for highlighting detected object
 
Handle< Graphic3d_TransformPersmyTransformPersistence
 transformation persistence
 
Handle< TopLoc_Datum3DmyLocalTransformation
 local transformation relative to parent object
 
Handle< TopLoc_Datum3DmyTransformation
 absolute transformation of this object (combined parents + local transformations)
 
Handle< TopLoc_Datum3DmyCombinedParentTransform
 transformation of parent object (combined for all parents)
 
PrsMgr_ListOfPresentableObjects myChildren
 list of children
 
gp_GTrsf myInvTransformation
 inversion of absolute transformation (combined parents + local transformations)
 
PrsMgr_TypeOfPresentation3d myTypeOfPresentation3d
 presentation type
 
PrsMgr_DisplayStatus myDisplayStatus
 presentation display status
 
Aspect_TypeOfFacingModel myCurrentFacingModel
 current facing model
 
Standard_ShortReal myOwnWidth
 custom width value
 
Standard_Boolean hasOwnColor
 own color flag
 
Standard_Boolean hasOwnMaterial
 own material flag
 
Standard_Boolean myInfiniteState
 infinite flag
 
Standard_Boolean myIsMutable
 mutable flag
 
Standard_Boolean myHasOwnPresentations
 flag indicating if object should have own presentations
 
Standard_Boolean myToPropagateVisualState
 flag indicating if visual state (display/erase/color) should be propagated to all children
 
void ToBeUpdated (TColStd_ListOfInteger &ListOfMode) const
 gives the list of modes which are flagged "to be updated".
 
Standard_Boolean ToPropagateVisualState () const
 Get value of the flag "propagate visual state" It means that the display/erase/color visual state is propagated automatically to all children; by default, the flag is true.
 
void SetPropagateVisualState (const Standard_Boolean theFlag)
 Change the value of the flag "propagate visual state".
 
void Update (Standard_Boolean theToIncludeHidden=Standard_False)
 Recomputes all presentations of the object.
 
void Update (Standard_Integer theMode, Standard_Boolean theToClearOther)
 Recomputes the presentation in the given mode.
 

interface methods

 PrsMgr_PresentableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
 Protected empty constructor.
 
virtual ~PrsMgr_PresentableObject ()
 Destructor.
 
virtual void Fill (const Handle< PrsMgr_PresentationManager > &thePrsMgr, const Handle< PrsMgr_Presentation > &thePrs, const Standard_Integer theMode)
 Fills the given 3D view presentation for specified display mode using Compute() method. In addition, configures other properties of presentation (transformation, clipping planes).
 
virtual void Compute (const Handle< PrsMgr_PresentationManager > &thePrsMgr, const Handle< Prs3d_Presentation > &thePrs, const Standard_Integer theMode)=0
 Calculates the 3D view presentation for specified display mode. This is a key interface for implementing Presentable Object interface.
 
virtual void computeHLR (const Handle< Graphic3d_Camera > &theProjector, const Handle< TopLoc_Datum3D > &theTrsf, const Handle< Prs3d_Presentation > &thePrs)
 Calculates hidden line removal presentation for specific camera position. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation. Default implementation throws Standard_NotImplemented exception Warning! The transformation must be applied to the object before computation.
 
Standard_Boolean UpdatePresentations (Standard_Boolean theToIncludeHidden=Standard_False)
 Recomputes invalidated presentations of the object.
 
virtual void UpdateClipping ()
 General virtual method for internal update of presentation state when some modifications on list of clip planes occurs. Base implementation propagate clip planes to every presentation.
 
virtual void SetCombinedParentTransform (const Handle< TopLoc_Datum3D > &theTrsf)
 Sets myCombinedParentTransform to theTransformation. Thus object receives transformation from parent node and able to derive its own.
 
virtual void setLocalTransformation (const Handle< TopLoc_Datum3D > &theTransformation)
 Sets local transformation to theTransformation.
 
void recomputeComputed () const
 Recompute computed (HLR) presentations (when view is in computed mode).
 
void replaceAspects (const Graphic3d_MapOfAspectsToAspects &theMap)
 Replace aspects of existing (computed) presentation groups, so that the new aspects can be applied without recomputing presentation. It is NOT recommended approach, because user has to fill such map and then search for each occurrence in computed groups. The recommended approach is computing presentation with necessary customized aspects, and then modify them directly followed by SynchronizeAspects() call.
 
static const gp_TrsfgetIdentityTrsf ()
 Return the identity transformation.
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Detailed Description

A framework to supply the Graphic3d structure of the object to be presented. On the first display request, this structure is created by calling the appropriate algorithm and retaining this framework for further display. This abstract framework is inherited in Application Interactive Services (AIS), notably by AIS_InteractiveObject. Consequently, 3D presentation should be handled by the relevant daughter classes and their member functions in AIS. This is particularly true in the creation of new interactive objects.

Key interface methods to be implemented by every Selectable Object:

Warning! Methods managing standard attributes (SetColor(), SetWidth(), SetMaterial()) have different meaning for objects of different type (or no meaning at all). Sub-classes might override these methods to modify Prs3d_Drawer or class properties providing a convenient short-cut depending on application needs. For more sophisticated configuring, Prs3d_Drawer should be modified directly, while short-cuts might be left unimplemented.

Constructor & Destructor Documentation

◆ PrsMgr_PresentableObject()

PrsMgr_PresentableObject::PrsMgr_PresentableObject ( const PrsMgr_TypeOfPresentation3d  aTypeOfPresentation3d = PrsMgr_TOP_AllView)
protected

Protected empty constructor.

◆ ~PrsMgr_PresentableObject()

virtual PrsMgr_PresentableObject::~PrsMgr_PresentableObject ( )
protectedvirtual

Destructor.

Member Function Documentation

◆ AcceptDisplayMode()

virtual Standard_Boolean PrsMgr_PresentableObject::AcceptDisplayMode ( const Standard_Integer  theMode) const
inlinevirtual

Returns true if the class of objects accepts specified display mode index. The interactive context can have a default mode of representation for the set of Interactive Objects. This mode may not be accepted by a given class of objects. Consequently, this virtual method allowing us to get information about the class in question must be implemented. At least one display mode index should be accepted by this method. Although subclass can leave default implementation, it is highly desired defining exact list of supported modes instead, which is usually an enumeration for one object or objects class sharing similar list of display modes.

Reimplemented in AIS_Axis, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_CameraFrustum, AIS_ColorScale, AIS_ConnectedInteractive, AIS_LightSource, AIS_MediaPlayer, AIS_RubberBand, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_Trihedron, AIS_ViewCube, AIS_XRTrackedDevice, MeshVS_Mesh, PrsDim_Dimension, and PrsDim_Relation.

◆ AddChild()

virtual void PrsMgr_PresentableObject::AddChild ( const Handle< PrsMgr_PresentableObject > &  theObject)
virtual

Makes theObject child of current object in scene hierarchy.

◆ AddChildWithCurrentTransformation()

void PrsMgr_PresentableObject::AddChildWithCurrentTransformation ( const Handle< PrsMgr_PresentableObject > &  theObject)

Makes theObject child of current object in scene hierarchy with keeping the current global transformation So the object keeps the same position/orientation in the global CS.

◆ AddClipPlane()

virtual void PrsMgr_PresentableObject::AddClipPlane ( const Handle< Graphic3d_ClipPlane > &  thePlane)
virtual

Adds clip plane for graphical clipping for all display mode presentations. The composition of clip planes truncates the rendering space to convex volume. Please be aware that number of supported clip plane is limited. The planes which exceed the limit are ignored. Besides of this, some planes can be already set in view where the object is shown: the number of these planes should be subtracted from limit to predict the maximum possible number of object clipping planes.

Parameters
thePlane[in] the clip plane to be appended to map of clip planes.

◆ Attributes()

const Handle< Prs3d_Drawer > & PrsMgr_PresentableObject::Attributes ( ) const
inline

Returns the attributes settings.

◆ BoundingBox()

virtual void PrsMgr_PresentableObject::BoundingBox ( Bnd_Box theBndBox)
virtual

Returns bounding box of object correspondingly to its current display mode. This method requires presentation to be already computed, since it relies on bounding box of presentation structures, which are supposed to be same/close amongst different display modes of this object.

Reimplemented in IVtkOCC_SelectableObject.

◆ Children()

const PrsMgr_ListOfPresentableObjects & PrsMgr_PresentableObject::Children ( ) const
inline

Returns children of the current object.

◆ ClipPlanes()

const Handle< Graphic3d_SequenceOfHClipPlane > & PrsMgr_PresentableObject::ClipPlanes ( ) const
inline

Get clip planes.

Returns
set of previously added clip planes for all display mode presentations.

◆ Color()

virtual void PrsMgr_PresentableObject::Color ( Quantity_Color theColor) const
inlinevirtual

Returns the color setting of the Interactive Object.

Reimplemented in AIS_Shape.

◆ CombinedParentTransformation()

const Handle< TopLoc_Datum3D > & PrsMgr_PresentableObject::CombinedParentTransformation ( ) const
inline

Return combined parent transformation.

◆ Compute()

virtual void PrsMgr_PresentableObject::Compute ( const Handle< PrsMgr_PresentationManager > &  thePrsMgr,
const Handle< Prs3d_Presentation > &  thePrs,
const Standard_Integer  theMode 
)
protectedpure virtual

Calculates the 3D view presentation for specified display mode. This is a key interface for implementing Presentable Object interface.

Parameters
thePrsMgrpresentation manager where presentation has been created
thePrspresentation to fill
theModedisplay mode to compute; can be any number accepted by AcceptDisplayMode() method
See also
AcceptDisplayMode()

Implemented in PrsDim_AngleDimension, PrsDim_LengthDimension, AIS_ColorScale, PrsDim_DiameterDimension, MeshVS_Mesh, AIS_CameraFrustum, AIS_ColoredShape, AIS_ConnectedInteractive, AIS_LightSource, AIS_MediaPlayer, AIS_MultipleConnectedInteractive, AIS_PlaneTrihedron, AIS_Point, AIS_PointCloud, AIS_RubberBand, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_Trihedron, AIS_XRTrackedDevice, PrsDim_RadiusDimension, QABugs_PresentableObject, StdSelect_Shape, XCAFPrs_AISObject, AIS_Manipulator, and AIS_ViewCube.

◆ computeHLR()

virtual void PrsMgr_PresentableObject::computeHLR ( const Handle< Graphic3d_Camera > &  theProjector,
const Handle< TopLoc_Datum3D > &  theTrsf,
const Handle< Prs3d_Presentation > &  thePrs 
)
protectedvirtual

Calculates hidden line removal presentation for specific camera position. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation. Default implementation throws Standard_NotImplemented exception Warning! The transformation must be applied to the object before computation.

Parameters
theProjector[in] view orientation
theTrsf[in] additional transformation, or NULL if undefined
thePrs[in] presentation to fill

Reimplemented in AIS_ConnectedInteractive, and AIS_Shape.

◆ CurrentFacingModel()

Aspect_TypeOfFacingModel PrsMgr_PresentableObject::CurrentFacingModel ( ) const
inline

Returns the current facing model which is in effect.

◆ DefaultDisplayMode()

virtual Standard_Integer PrsMgr_PresentableObject::DefaultDisplayMode ( ) const
inlinevirtual

Returns the default display mode.

◆ DisplayMode()

Standard_Integer PrsMgr_PresentableObject::DisplayMode ( ) const
inline

Returns the display mode setting of the Interactive Object. The range of supported display mode indexes should be specified within object definition and filtered by AccepDisplayMode().

See also
AcceptDisplayMode()

◆ DisplayStatus()

PrsMgr_DisplayStatus PrsMgr_PresentableObject::DisplayStatus ( ) const
inline

Return presentation display status; PrsMgr_DisplayStatus_None by default.

◆ DumpJson()

virtual void PrsMgr_PresentableObject::DumpJson ( Standard_OStream theOStream,
Standard_Integer  theDepth = -1 
) const
virtual

Dumps the content of me into the stream.

Reimplemented in AIS_InteractiveObject, AIS_Shape, AIS_Trihedron, SelectMgr_SelectableObject, and StdSelect_Shape.

◆ DynamicHilightAttributes()

const Handle< Prs3d_Drawer > & PrsMgr_PresentableObject::DynamicHilightAttributes ( ) const
inline

Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalDynamic and Prs3d_TypeOfHighlight_Dynamic defined within AIS_InteractiveContext::HighlightStyle().

See also
AIS_InteractiveContext::HighlightStyle()

◆ Fill()

virtual void PrsMgr_PresentableObject::Fill ( const Handle< PrsMgr_PresentationManager > &  thePrsMgr,
const Handle< PrsMgr_Presentation > &  thePrs,
const Standard_Integer  theMode 
)
protectedvirtual

Fills the given 3D view presentation for specified display mode using Compute() method. In addition, configures other properties of presentation (transformation, clipping planes).

Parameters
thePrsMgrpresentation manager where presentation has been created
thePrspresentation to fill
theModedisplay mode to compute; can be any number accepted by AcceptDisplayMode() method

◆ getIdentityTrsf()

static const gp_Trsf & PrsMgr_PresentableObject::getIdentityTrsf ( )
staticprotected

Return the identity transformation.

◆ HasColor()

Standard_Boolean PrsMgr_PresentableObject::HasColor ( ) const
inline

Returns true if the Interactive Object has color.

◆ HasDisplayMode()

Standard_Boolean PrsMgr_PresentableObject::HasDisplayMode ( ) const
inline

Returns true if the Interactive Object has display mode setting overriding global setting (within Interactive Context).

◆ HasHilightMode()

Standard_Boolean PrsMgr_PresentableObject::HasHilightMode ( ) const
inline

Returns true if the Interactive Object is in highlight mode.

See also
HilightAttributes()

◆ HasMaterial()

Standard_Boolean PrsMgr_PresentableObject::HasMaterial ( ) const
inline

Returns true if the Interactive Object has a setting for material.

◆ HasOwnPresentations()

Standard_Boolean PrsMgr_PresentableObject::HasOwnPresentations ( ) const
inline

Returns true if object should have own presentations.

◆ HasPolygonOffsets()

virtual Standard_Boolean PrsMgr_PresentableObject::HasPolygonOffsets ( ) const
virtual

Returns Standard_True if <myDrawer> has non-null shading aspect.

◆ HasTransformation()

Standard_Boolean PrsMgr_PresentableObject::HasTransformation ( ) const
inline

Returns true if object has a transformation that is different from the identity.

◆ HasWidth()

Standard_Boolean PrsMgr_PresentableObject::HasWidth ( ) const
inline

Returns true if the Interactive Object has width.

◆ HilightAttributes()

const Handle< Prs3d_Drawer > & PrsMgr_PresentableObject::HilightAttributes ( ) const
inline

Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalSelected and Prs3d_TypeOfHighlight_Selected defined within AIS_InteractiveContext::HighlightStyle().

See also
AIS_InteractiveContext::HighlightStyle()

◆ HilightMode()

Standard_Integer PrsMgr_PresentableObject::HilightMode ( ) const
inline

Returns highlight display mode. This is obsolete method for backward compatibility - use HilightAttributes() and DynamicHilightAttributes() instead.

See also
HilightAttributes()

◆ InversedTransformation()

const gp_GTrsf & PrsMgr_PresentableObject::InversedTransformation ( ) const
inline

Return inversed transformation.

◆ IsInfinite()

Standard_Boolean PrsMgr_PresentableObject::IsInfinite ( ) const
inline

Returns true if the interactive object is infinite; FALSE by default. This flag affects various operations operating on bounding box of graphic presentations of this object. For instance, infinite objects are not taken in account for View FitAll. This does not necessarily means that object is actually infinite, auxiliary objects might be also marked with this flag to achieve desired behavior.

◆ IsMutable()

Standard_Boolean PrsMgr_PresentableObject::IsMutable ( ) const
inline

Returns true if object has mutable nature (content or location are be changed regularly). Mutable object will be managed in different way than static onces (another optimizations).

◆ IsTransparent()

Standard_Boolean PrsMgr_PresentableObject::IsTransparent ( ) const
inline

Returns true if there is a transparency setting.

◆ LocalTransformation()

const gp_Trsf & PrsMgr_PresentableObject::LocalTransformation ( ) const
inline

Return the local transformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ LocalTransformationGeom()

const Handle< TopLoc_Datum3D > & PrsMgr_PresentableObject::LocalTransformationGeom ( ) const
inline

Return the local transformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ Material()

virtual Graphic3d_NameOfMaterial PrsMgr_PresentableObject::Material ( ) const
virtual

Returns the current material setting as enumeration value.

Reimplemented in AIS_Shape.

◆ Parent()

PrsMgr_PresentableObject * PrsMgr_PresentableObject::Parent ( ) const
inline

Returns parent of current object in scene hierarchy.

◆ PolygonOffsets()

virtual void PrsMgr_PresentableObject::PolygonOffsets ( Standard_Integer aMode,
Standard_ShortReal aFactor,
Standard_ShortReal aUnits 
) const
virtual

Retrieves current polygon offsets settings from <myDrawer>.

◆ Presentations()

PrsMgr_Presentations & PrsMgr_PresentableObject::Presentations ( )
inline

Return presentations.

◆ recomputeComputed()

void PrsMgr_PresentableObject::recomputeComputed ( ) const
protected

Recompute computed (HLR) presentations (when view is in computed mode).

◆ RemoveChild()

virtual void PrsMgr_PresentableObject::RemoveChild ( const Handle< PrsMgr_PresentableObject > &  theObject)
virtual

Removes theObject from children of current object in scene hierarchy.

◆ RemoveChildWithRestoreTransformation()

void PrsMgr_PresentableObject::RemoveChildWithRestoreTransformation ( const Handle< PrsMgr_PresentableObject > &  theObject)

Removes theObject from children of current object in scene hierarchy with keeping the current global transformation. So the object keeps the same position/orientation in the global CS.

◆ RemoveClipPlane()

virtual void PrsMgr_PresentableObject::RemoveClipPlane ( const Handle< Graphic3d_ClipPlane > &  thePlane)
virtual

Removes previously added clip plane.

Parameters
thePlane[in] the clip plane to be removed from map of clip planes.

◆ replaceAspects()

void PrsMgr_PresentableObject::replaceAspects ( const Graphic3d_MapOfAspectsToAspects theMap)
protected

Replace aspects of existing (computed) presentation groups, so that the new aspects can be applied without recomputing presentation. It is NOT recommended approach, because user has to fill such map and then search for each occurrence in computed groups. The recommended approach is computing presentation with necessary customized aspects, and then modify them directly followed by SynchronizeAspects() call.

◆ ResetTransformation()

virtual void PrsMgr_PresentableObject::ResetTransformation ( )
virtual

resets local transformation to identity.

Reimplemented in SelectMgr_SelectableObject.

◆ SetAttributes()

virtual void PrsMgr_PresentableObject::SetAttributes ( const Handle< Prs3d_Drawer > &  theDrawer)
inlinevirtual

Initializes the drawing tool theDrawer.

◆ SetClipPlanes()

virtual void PrsMgr_PresentableObject::SetClipPlanes ( const Handle< Graphic3d_SequenceOfHClipPlane > &  thePlanes)
virtual

Set clip planes for graphical clipping for all display mode presentations. The composition of clip planes truncates the rendering space to convex volume. Please be aware that number of supported clip plane is limited. The planes which exceed the limit are ignored. Besides of this, some planes can be already set in view where the object is shown: the number of these planes should be subtracted from limit to predict the maximum possible number of object clipping planes.

◆ SetColor()

virtual void PrsMgr_PresentableObject::SetColor ( const Quantity_Color theColor)
inlinevirtual

Only the interactive object knowns which Drawer attribute is affected by the color, if any (ex: for a wire,it's the wireaspect field of the drawer, but for a vertex, only the point aspect field is affected by the color). WARNING : Do not forget to set the corresponding fields here (hasOwnColor and myDrawer->SetColor())

Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Plane, AIS_CameraFrustum, AIS_ColoredShape, AIS_PlaneTrihedron, AIS_Point, AIS_PointCloud, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_Trihedron, AIS_ViewCube, and PrsDim_Relation.

◆ SetCombinedParentTransform()

virtual void PrsMgr_PresentableObject::SetCombinedParentTransform ( const Handle< TopLoc_Datum3D > &  theTrsf)
protectedvirtual

Sets myCombinedParentTransform to theTransformation. Thus object receives transformation from parent node and able to derive its own.

◆ SetCurrentFacingModel()

void PrsMgr_PresentableObject::SetCurrentFacingModel ( const Aspect_TypeOfFacingModel  theModel = Aspect_TOFM_BOTH_SIDE)
inline

change the current facing model apply on polygons for SetColor(), SetTransparency(), SetMaterial() methods default facing model is Aspect_TOFM_TWO_SIDE. This mean that attributes is applying both on the front and back face.

◆ SetDisplayMode()

void PrsMgr_PresentableObject::SetDisplayMode ( const Standard_Integer  theMode)
inline

Sets the display mode for the interactive object. An object can have its own temporary display mode, which is different from that proposed by the interactive context.

See also
AcceptDisplayMode()

◆ SetDynamicHilightAttributes()

virtual void PrsMgr_PresentableObject::SetDynamicHilightAttributes ( const Handle< Prs3d_Drawer > &  theDrawer)
inlinevirtual

Initializes the dynamic hilight drawing tool.

◆ SetHilightAttributes()

virtual void PrsMgr_PresentableObject::SetHilightAttributes ( const Handle< Prs3d_Drawer > &  theDrawer)
inlinevirtual

Initializes the hilight drawing tool theDrawer.

◆ SetHilightMode()

void PrsMgr_PresentableObject::SetHilightMode ( const Standard_Integer  theMode)

Sets highlight display mode. This is obsolete method for backward compatibility - use HilightAttributes() and DynamicHilightAttributes() instead.

See also
HilightAttributes()

◆ SetInfiniteState()

void PrsMgr_PresentableObject::SetInfiniteState ( const Standard_Boolean  theFlag = Standard_True)

Sets if object should be considered as infinite.

◆ SetIsoOnTriangulation()

void PrsMgr_PresentableObject::SetIsoOnTriangulation ( const Standard_Boolean  theIsEnabled)
inline

Enables or disables on-triangulation build of isolines according to the flag given.

◆ SetLocalTransformation() [1/2]

void PrsMgr_PresentableObject::SetLocalTransformation ( const gp_Trsf theTrsf)
inline

Sets local transformation to theTransformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ setLocalTransformation()

virtual void PrsMgr_PresentableObject::setLocalTransformation ( const Handle< TopLoc_Datum3D > &  theTransformation)
protectedvirtual

Sets local transformation to theTransformation.

Reimplemented in AIS_LightSource, and AIS_Manipulator.

◆ SetLocalTransformation() [2/2]

void PrsMgr_PresentableObject::SetLocalTransformation ( const Handle< TopLoc_Datum3D > &  theTrsf)
inline

Sets local transformation to theTransformation. Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ SetMaterial()

virtual void PrsMgr_PresentableObject::SetMaterial ( const Graphic3d_MaterialAspect aName)
virtual

Sets the material aMat defining this display attribute for the interactive object. Material aspect determines shading aspect, color and transparency of visible entities.

Reimplemented in AIS_TextLabel, AIS_Shape, AIS_ColoredShape, AIS_TexturedShape, AIS_PointCloud, AIS_ViewCube, and XCAFPrs_AISObject.

◆ SetMutable()

virtual void PrsMgr_PresentableObject::SetMutable ( const Standard_Boolean  theIsMutable)
virtual

Sets if the object has mutable nature (content or location will be changed regularly). This method should be called before object displaying to take effect.

◆ SetPolygonOffsets()

virtual void PrsMgr_PresentableObject::SetPolygonOffsets ( const Standard_Integer  aMode,
const Standard_ShortReal  aFactor = 1.0,
const Standard_ShortReal  aUnits = 0.0 
)
virtual

Sets up polygon offsets for this object.

See also
Graphic3d_Aspects::SetPolygonOffsets()

◆ SetPropagateVisualState()

void PrsMgr_PresentableObject::SetPropagateVisualState ( const Standard_Boolean  theFlag)
inline

Change the value of the flag "propagate visual state".

◆ SetToUpdate() [1/2]

void PrsMgr_PresentableObject::SetToUpdate ( )
inline

flags all the Presentations to be Updated.

◆ SetToUpdate() [2/2]

void PrsMgr_PresentableObject::SetToUpdate ( Standard_Integer  theMode)

Flags presentation to be updated; UpdatePresentations() will recompute these presentations.

Parameters
theModepresentation (display mode) to invalidate, or -1 to invalidate them all

◆ SetTransformPersistence()

virtual void PrsMgr_PresentableObject::SetTransformPersistence ( const Handle< Graphic3d_TransformPers > &  theTrsfPers)
virtual

Sets up Transform Persistence defining a special Local Coordinate system where this object should be located. Note that management of Transform Persistence object is more expensive than of the normal one, because it requires its position being recomputed basing on camera position within each draw call / traverse.

See also
Graphic3d_TransformPers class description

Reimplemented in AIS_Manipulator.

◆ SetTransparency()

virtual void PrsMgr_PresentableObject::SetTransparency ( const Standard_Real  aValue = 0.6)
virtual

Attributes a setting aValue for transparency. The transparency value should be between 0.0 and 1.0. At 0.0 an object will be totally opaque, and at 1.0, fully transparent. Warning At a value of 1.0, there may be nothing visible.

Reimplemented in AIS_Shape, AIS_Triangulation, AIS_ColoredShape, AIS_TextLabel, and AIS_ViewCube.

◆ SetTypeOfPresentation()

void PrsMgr_PresentableObject::SetTypeOfPresentation ( const PrsMgr_TypeOfPresentation3d  theType)

Set type of presentation.

◆ SetWidth()

virtual void PrsMgr_PresentableObject::SetWidth ( const Standard_Real  theWidth)
inlinevirtual

Allows you to provide the setting aValue for width. Only the Interactive Object knows which Drawer attribute is affected by the width setting.

Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Shape, and AIS_ColoredShape.

◆ SetZLayer()

virtual void PrsMgr_PresentableObject::SetZLayer ( const Graphic3d_ZLayerId  theLayerId)
virtual

Set Z layer ID and update all presentations of the presentable object. The layers mechanism allows drawing objects in higher layers in overlay of objects in lower layers.

Reimplemented in SelectMgr_SelectableObject.

◆ SynchronizeAspects()

void PrsMgr_PresentableObject::SynchronizeAspects ( )

Synchronize presentation aspects after their modification.

This method should be called after modifying primitive aspect properties (material, texture, shader) so that modifications will take effect on already computed presentation groups (thus avoiding re-displaying the object).

◆ ToBeUpdated() [1/2]

Standard_Boolean PrsMgr_PresentableObject::ToBeUpdated ( Standard_Boolean  theToIncludeHidden = Standard_False) const

Returns TRUE if any active presentation has invalidation flag.

Parameters
theToIncludeHiddenwhen TRUE, also checks hidden presentations

◆ ToBeUpdated() [2/2]

void PrsMgr_PresentableObject::ToBeUpdated ( TColStd_ListOfInteger ListOfMode) const

gives the list of modes which are flagged "to be updated".

Deprecated:
("This method is deprecated - UpdatePresentations() should be called instead")

◆ ToPropagateVisualState()

Standard_Boolean PrsMgr_PresentableObject::ToPropagateVisualState ( ) const
inline

Get value of the flag "propagate visual state" It means that the display/erase/color visual state is propagated automatically to all children; by default, the flag is true.

◆ Transformation()

const gp_Trsf & PrsMgr_PresentableObject::Transformation ( ) const
inline

Return the transformation taking into account transformation of parent object(s). Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ TransformationGeom()

const Handle< TopLoc_Datum3D > & PrsMgr_PresentableObject::TransformationGeom ( ) const
inline

Return the transformation taking into account transformation of parent object(s). Note that the local transformation of the object having Transformation Persistence is applied within Local Coordinate system defined by this Persistence.

◆ TransformPersistence()

const Handle< Graphic3d_TransformPers > & PrsMgr_PresentableObject::TransformPersistence ( ) const
inline

Returns Transformation Persistence defining a special Local Coordinate system where this presentable object is located or NULL handle if not defined. Position of the object having Transformation Persistence is mutable and depends on camera position. The same applies to a bounding box of the object.

See also
Graphic3d_TransformPers class description

◆ Transparency()

virtual Standard_Real PrsMgr_PresentableObject::Transparency ( ) const
inlinevirtual

Returns the transparency setting. This will be between 0.0 and 1.0. At 0.0 an object will be totally opaque, and at 1.0, fully transparent.

Reimplemented in AIS_Shape.

◆ TypeOfPresentation3d()

PrsMgr_TypeOfPresentation3d PrsMgr_PresentableObject::TypeOfPresentation3d ( ) const
inline

Returns information on whether the object accepts display in HLR mode or not.

◆ UnsetAttributes()

virtual void PrsMgr_PresentableObject::UnsetAttributes ( )
virtual

Clears settings provided by the drawing tool aDrawer.

Reimplemented in AIS_ViewCube.

◆ UnsetColor()

virtual void PrsMgr_PresentableObject::UnsetColor ( )
inlinevirtual

Removes color settings. Only the Interactive Object knows which Drawer attribute is affected by the color setting. For a wire, for example, wire aspect is the attribute affected. For a vertex, however, only point aspect is affected by the color setting.

Reimplemented in AIS_Axis, AIS_CameraFrustum, AIS_Circle, AIS_Line, AIS_Plane, AIS_Point, AIS_PointCloud, AIS_Shape, AIS_TexturedShape, AIS_Trihedron, AIS_ViewCube, and PrsDim_Relation.

◆ UnsetDisplayMode()

void PrsMgr_PresentableObject::UnsetDisplayMode ( )
inline

Removes display mode settings from the interactive object.

◆ UnsetHilightAttributes()

virtual void PrsMgr_PresentableObject::UnsetHilightAttributes ( )
inlinevirtual

Clears settings provided by the hilight drawing tool theDrawer.

Reimplemented in AIS_ViewCube.

◆ UnsetHilightMode()

void PrsMgr_PresentableObject::UnsetHilightMode ( )
inline

Unsets highlight display mode.

See also
HilightAttributes()

◆ UnsetMaterial()

virtual void PrsMgr_PresentableObject::UnsetMaterial ( )
virtual

Removes the setting for material.

Reimplemented in AIS_PointCloud, AIS_Shape, AIS_TexturedShape, and AIS_ViewCube.

◆ UnsetTransparency()

virtual void PrsMgr_PresentableObject::UnsetTransparency ( )
virtual

Removes the transparency setting. The object is opaque by default.

Reimplemented in AIS_CameraFrustum, AIS_ColoredShape, AIS_Shape, AIS_TextLabel, AIS_Triangulation, and AIS_ViewCube.

◆ UnsetWidth()

virtual void PrsMgr_PresentableObject::UnsetWidth ( )
inlinevirtual

Reset width to default value.

Reimplemented in AIS_Axis, AIS_Circle, AIS_ColoredShape, AIS_Line, and AIS_Shape.

◆ Update() [1/2]

void PrsMgr_PresentableObject::Update ( Standard_Boolean  theToIncludeHidden = Standard_False)
inlineprotected

Recomputes all presentations of the object.

Deprecated:
("This method is deprecated - SetToUpdate() + UpdatePresentations() should be called instead")

◆ Update() [2/2]

void PrsMgr_PresentableObject::Update ( Standard_Integer  theMode,
Standard_Boolean  theToClearOther 
)
protected

Recomputes the presentation in the given mode.

Parameters
theModepresentation (display mode) to recompute
theToClearOtherwhen TRUE, other presentations (display modes) will be removed
Deprecated:
("This method is deprecated - SetToUpdate() + UpdatePresentations() should be called instead")

◆ UpdateClipping()

virtual void PrsMgr_PresentableObject::UpdateClipping ( )
protectedvirtual

General virtual method for internal update of presentation state when some modifications on list of clip planes occurs. Base implementation propagate clip planes to every presentation.

Reimplemented in SelectMgr_SelectableObject.

◆ UpdatePresentations()

Standard_Boolean PrsMgr_PresentableObject::UpdatePresentations ( Standard_Boolean  theToIncludeHidden = Standard_False)
protected

Recomputes invalidated presentations of the object.

Parameters
theToIncludeHiddenif TRUE, then even hidden invalidated presentations will be updated
Returns
TRUE if some presentations were recomputed

◆ UpdateTransformation()

virtual void PrsMgr_PresentableObject::UpdateTransformation ( )
virtual

Updates final transformation (parent + local) of presentable object and its presentations.

Reimplemented in SelectMgr_SelectableObject.

◆ ViewAffinity()

const Handle< Graphic3d_ViewAffinity > & PrsMgr_PresentableObject::ViewAffinity ( ) const
inline

Return view affinity mask.

◆ Width()

Standard_Real PrsMgr_PresentableObject::Width ( ) const
inline

Returns the width setting of the Interactive Object.

◆ ZLayer()

Graphic3d_ZLayerId PrsMgr_PresentableObject::ZLayer ( ) const
inline

Get ID of Z layer for main presentation.

Field Documentation

◆ hasOwnColor

Standard_Boolean PrsMgr_PresentableObject::hasOwnColor
protected

own color flag

◆ hasOwnMaterial

Standard_Boolean PrsMgr_PresentableObject::hasOwnMaterial
protected

own material flag

◆ myChildren

PrsMgr_ListOfPresentableObjects PrsMgr_PresentableObject::myChildren
protected

list of children

◆ myClipPlanes

Handle< Graphic3d_SequenceOfHClipPlane > PrsMgr_PresentableObject::myClipPlanes
protected

sequence of object-specific clipping planes

◆ myCombinedParentTransform

Handle< TopLoc_Datum3D > PrsMgr_PresentableObject::myCombinedParentTransform
protected

transformation of parent object (combined for all parents)

◆ myCurrentFacingModel

Aspect_TypeOfFacingModel PrsMgr_PresentableObject::myCurrentFacingModel
protected

current facing model

◆ myDisplayStatus

PrsMgr_DisplayStatus PrsMgr_PresentableObject::myDisplayStatus
protected

presentation display status

◆ myDrawer

Handle< Prs3d_Drawer > PrsMgr_PresentableObject::myDrawer
protected

main presentation attributes

◆ myDynHilightDrawer

Handle< Prs3d_Drawer > PrsMgr_PresentableObject::myDynHilightDrawer
protected

(optional) custom presentation attributes for highlighting detected object

◆ myHasOwnPresentations

Standard_Boolean PrsMgr_PresentableObject::myHasOwnPresentations
protected

flag indicating if object should have own presentations

◆ myHilightDrawer

Handle< Prs3d_Drawer > PrsMgr_PresentableObject::myHilightDrawer
protected

(optional) custom presentation attributes for highlighting selected object

◆ myInfiniteState

Standard_Boolean PrsMgr_PresentableObject::myInfiniteState
protected

infinite flag

◆ myInvTransformation

gp_GTrsf PrsMgr_PresentableObject::myInvTransformation
protected

inversion of absolute transformation (combined parents + local transformations)

◆ myIsMutable

Standard_Boolean PrsMgr_PresentableObject::myIsMutable
protected

mutable flag

◆ myLocalTransformation

Handle< TopLoc_Datum3D > PrsMgr_PresentableObject::myLocalTransformation
protected

local transformation relative to parent object

◆ myOwnWidth

Standard_ShortReal PrsMgr_PresentableObject::myOwnWidth
protected

custom width value

◆ myParent

PrsMgr_PresentableObject* PrsMgr_PresentableObject::myParent
protected

pointer to the parent object

◆ myPresentations

PrsMgr_Presentations PrsMgr_PresentableObject::myPresentations
protected

list of presentations

◆ myToPropagateVisualState

Standard_Boolean PrsMgr_PresentableObject::myToPropagateVisualState
protected

flag indicating if visual state (display/erase/color) should be propagated to all children

◆ myTransformation

Handle< TopLoc_Datum3D > PrsMgr_PresentableObject::myTransformation
protected

absolute transformation of this object (combined parents + local transformations)

◆ myTransformPersistence

Handle< Graphic3d_TransformPers > PrsMgr_PresentableObject::myTransformPersistence
protected

transformation persistence

◆ myTypeOfPresentation3d

PrsMgr_TypeOfPresentation3d PrsMgr_PresentableObject::myTypeOfPresentation3d
protected

presentation type

◆ myViewAffinity

Handle< Graphic3d_ViewAffinity > PrsMgr_PresentableObject::myViewAffinity
protected

view affinity mask


The documentation for this class was generated from the following file: