OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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:

    Public Member Functions

    NCollection_Sequence< occ::handle< PrsMgr_Presentation > > & Presentations ()
     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.
    bool 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 bool 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 occ::handle< Graphic3d_ViewAffinity > & ViewAffinity () const
     Return view affinity mask.
    bool HasDisplayMode () const
     Returns true if the Interactive Object has display mode setting overriding global setting (within Interactive Context).
    int 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 int 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.
    bool HasHilightMode () const
     Returns true if the Interactive Object is in highlight mode.
    int HilightMode () const
     Returns highlight display mode. This is obsolete method for backward compatibility - use ::HilightAttributes() and ::DynamicHilightAttributes() instead.
    void SetHilightMode (const int theMode)
     Sets highlight display mode. This is obsolete method for backward compatibility - use ::HilightAttributes() and ::DynamicHilightAttributes() instead.
    void UnsetHilightMode ()
     Unsets highlight display mode.
    virtual bool AcceptDisplayMode (const int 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 int DefaultDisplayMode () const
     Returns the default display mode.
    bool ToBeUpdated (bool theToIncludeHidden=false) const
     Returns TRUE if any active presentation has invalidation flag.
    void SetToUpdate (int theMode)
     Flags presentation to be updated; UpdatePresentations() will recompute these presentations.
    void SetToUpdate ()
     flags all the Presentations to be Updated.
    bool 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 bool theFlag=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

    Returns the attributes settings.

    const occ::handle< Prs3d_Drawer > & Attributes () const
     Initializes the drawing tool theDrawer.
    virtual void SetAttributes (const occ::handle< Prs3d_Drawer > &theDrawer)
     Initializes the drawing tool theDrawer.
    const occ::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 occ::handle< Prs3d_Drawer > &theDrawer)
     Initializes the hilight drawing tool theDrawer.
    const occ::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 occ::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

    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
    const occ::handle< Graphic3d_TransformPers > & TransformPersistence () const
     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.
    virtual void SetTransformPersistence (const occ::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 occ::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 occ::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.
    bool HasTransformation () const
     Returns true if object has a transformation that is different from the identity.
    const occ::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 occ::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.
    virtual void RecomputeTransformation (const occ::handle< Graphic3d_Camera > &theProjector)
     Calculates object presentation for specific camera position. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation.
    clipping planes

    Get clip planes.

    Returns
    set of previously added clip planes for all display mode presentations.
    const occ::handle< Graphic3d_SequenceOfHClipPlane > & ClipPlanes () const
     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 SetClipPlanes (const occ::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 occ::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 occ::handle< Graphic3d_ClipPlane > &thePlane)
     Removes previously added clip plane.
    parent/children properties

    Returns parent of current object in scene hierarchy.

    PrsMgr_PresentableObjectParent () const
     Returns children of the current object.
    const NCollection_List< occ::handle< PrsMgr_PresentableObject > > & Children () const
     Returns children of the current object.
    virtual void AddChild (const occ::handle< PrsMgr_PresentableObject > &theObject)
     Makes theObject child of current object in scene hierarchy.
    void AddChildWithCurrentTransformation (const occ::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 occ::handle< PrsMgr_PresentableObject > &theObject)
     Removes theObject from children of current object in scene hierarchy.
    void RemoveChildWithRestoreTransformation (const occ::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.
    bool 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

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

    void SetIsoOnTriangulation (const bool theIsEnabled)
     Returns the current facing model which is in effect.
    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.
    bool 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.
    bool HasWidth () const
     Returns true if the Interactive Object has width.
    double Width () const
     Returns the width setting of the Interactive Object.
    virtual void SetWidth (const double 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.
    bool 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.
    bool IsTransparent () const
     Returns true if there is a transparency setting.
    virtual double 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 double 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 bool HasPolygonOffsets () const
     Returns true if <myDrawer> has non-null shading aspect.
    virtual void PolygonOffsets (int &aMode, float &aFactor, float &aUnits) const
     Retrieves current polygon offsets settings from <myDrawer>.
    virtual void SetPolygonOffsets (const int aMode, const float aFactor=1.0, const float 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, int 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 ()=default
     Destructor must be virtual.
    virtual const opencascade::handle< Standard_Type > & DynamicType () const
     Returns a type descriptor about this object.
    bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
     Returns a true value if this is an instance of Type.
    bool IsInstance (const char *const theTypeName) const
     Returns a true value if this is an instance of TypeName.
    bool 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.
    bool IsKind (const char *const 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.
    int GetRefCount () const noexcept
     Get the reference counter of this object.
    void IncrementRefCounter () noexcept
     Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
    int DecrementRefCounter () noexcept
     Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
    virtual void Delete () const
     Memory deallocator for transient classes.

    deprecated methods

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

    Deprecated
    ("This method is deprecated - UpdatePresentations() should be called instead")
    This method is deprecated bool theToClearOther
     pointer to the parent object
    PrsMgr_PresentableObjectmyParent
     pointer to the parent object
    NCollection_Sequence< occ::handle< PrsMgr_Presentation > > myPresentations
     list of presentations
    occ::handle< Graphic3d_ViewAffinitymyViewAffinity
     view affinity mask
    occ::handle< Graphic3d_SequenceOfHClipPlanemyClipPlanes
     sequence of object-specific clipping planes
    occ::handle< Prs3d_DrawermyDrawer
     main presentation attributes
    occ::handle< Prs3d_DrawermyHilightDrawer
     (optional) custom presentation attributes for highlighting selected object
    occ::handle< Prs3d_DrawermyDynHilightDrawer
     (optional) custom presentation attributes for highlighting detected object
    occ::handle< Graphic3d_TransformPersmyTransformPersistence
     transformation persistence
    occ::handle< TopLoc_Datum3DmyLocalTransformation
     local transformation relative to parent object
    occ::handle< TopLoc_Datum3DmyTransformation
     absolute transformation of this object (combined parents + local transformations)
    occ::handle< TopLoc_Datum3DmyCombinedParentTransform
     transformation of parent object (combined for all parents)
    NCollection_List< occ::handle< PrsMgr_PresentableObject > > 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
    float myOwnWidth
     custom width value
    bool hasOwnColor
     own color flag
    bool hasOwnMaterial
     own material flag
    bool myInfiniteState
     infinite flag
    bool myIsMutable
     mutable flag
    bool myHasOwnPresentations
     flag indicating if object should have own presentations
    bool myToPropagateVisualState
     flag indicating if visual state (display/erase/color) should be propagated to all children
    void ToBeUpdated (NCollection_List< int > &ListOfMode) const
     pointer to the parent object
    bool 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 bool theFlag)
     Change the value of the flag "propagate visual state".
    called instead void Update (bool theToIncludeHidden=false)
     Recomputes all presentations of the object.
    This method is deprecated SetToUpdate ()+UpdatePresentations() should be called instead") 1 void Update(int theMode
     Recomputes the presentation in the given mode.

    interface methods

    Protected empty constructor.

     PrsMgr_PresentableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
     Destructor.
     ~PrsMgr_PresentableObject () override
     Destructor.
    virtual void Fill (const occ::handle< PrsMgr_PresentationManager > &thePrsMgr, const occ::handle< PrsMgr_Presentation > &thePrs, const int 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 occ::handle< PrsMgr_PresentationManager > &thePrsMgr, const occ::handle< Prs3d_Presentation > &thePrs, const int 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 occ::handle< Graphic3d_Camera > &theProjector, const occ::handle< TopLoc_Datum3D > &theTrsf, const occ::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.
    bool UpdatePresentations (bool theToIncludeHidden=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 occ::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 occ::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 NCollection_DataMap< occ::handle< Graphic3d_Aspects >, occ::handle< Graphic3d_Aspects > > &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

    typedef void base_type
     Returns a type descriptor about this object.
    static constexpr const char * get_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:

    • AcceptDisplayMode() accepting display modes implemented by this object;
    • Compute() computing presentation for the given display mode index.

    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

    Destructor.

    ◆ ~PrsMgr_PresentableObject()

    PrsMgr_PresentableObject::~PrsMgr_PresentableObject ( )
    overrideprotected

    Destructor.

    Member Function Documentation

    ◆ AcceptDisplayMode()

    virtual bool PrsMgr_PresentableObject::AcceptDisplayMode ( const int 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_CameraFrustum, AIS_ColorScale, AIS_ConnectedInteractive, AIS_LightSource, AIS_MediaPlayer, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_RubberBand, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_Trihedron, AIS_ViewCube, AIS_XRTrackedDevice, PrsDim_Dimension, and PrsDim_Relation.

    ◆ AddChild()

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

    Makes theObject child of current object in scene hierarchy.

    ◆ AddChildWithCurrentTransformation()

    void PrsMgr_PresentableObject::AddChildWithCurrentTransformation ( const occ::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 occ::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
    [in]thePlanethe clip plane to be appended to map of clip planes.

    ◆ Attributes()

    const occ::handle< Prs3d_Drawer > & PrsMgr_PresentableObject::Attributes ( ) const
    inline

    Initializes the drawing tool theDrawer.

    ◆ 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 NCollection_List< occ::handle< PrsMgr_PresentableObject > > & PrsMgr_PresentableObject::Children ( ) const
    inline

    Returns children of the current object.

    ◆ ClipPlanes()

    const occ::handle< Graphic3d_SequenceOfHClipPlane > & PrsMgr_PresentableObject::ClipPlanes ( ) const
    inline

    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.

    ◆ 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 occ::handle< TopLoc_Datum3D > & PrsMgr_PresentableObject::CombinedParentTransformation ( ) const
    inline

    Return combined parent transformation.

    ◆ Compute()

    virtual void PrsMgr_PresentableObject::Compute ( const occ::handle< PrsMgr_PresentationManager > & thePrsMgr,
    const occ::handle< Prs3d_Presentation > & thePrs,
    const int 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 AIS_CameraFrustum, AIS_ColoredShape, AIS_ColorScale, AIS_ConnectedInteractive, AIS_LightSource, AIS_Manipulator, AIS_MediaPlayer, AIS_MultipleConnectedInteractive, AIS_PlaneTrihedron, AIS_Point, AIS_PointCloud, AIS_RubberBand, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_Trihedron, AIS_ViewCube, AIS_XRTrackedDevice, PrsDim_AngleDimension, PrsDim_DiameterDimension, PrsDim_LengthDimension, PrsDim_RadiusDimension, StdSelect_Shape, and XCAFPrs_AISObject.

    ◆ computeHLR()

    virtual void PrsMgr_PresentableObject::computeHLR ( const occ::handle< Graphic3d_Camera > & theProjector,
    const occ::handle< TopLoc_Datum3D > & theTrsf,
    const occ::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
    [in]theProjectorview orientation
    [in]theTrsfadditional transformation, or NULL if undefined
    [in]thePrspresentation 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 int PrsMgr_PresentableObject::DefaultDisplayMode ( ) const
    inlinevirtual

    Returns the default display mode.

    ◆ DisplayMode()

    int 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,
    int 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 occ::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 occ::handle< PrsMgr_PresentationManager > & thePrsMgr,
    const occ::handle< PrsMgr_Presentation > & thePrs,
    const int 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()

    const gp_Trsf & PrsMgr_PresentableObject::getIdentityTrsf ( )
    staticprotected

    Return the identity transformation.

    ◆ HasColor()

    bool PrsMgr_PresentableObject::HasColor ( ) const
    inline

    Returns true if the Interactive Object has color.

    ◆ HasDisplayMode()

    bool PrsMgr_PresentableObject::HasDisplayMode ( ) const
    inline

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

    ◆ HasHilightMode()

    bool PrsMgr_PresentableObject::HasHilightMode ( ) const
    inline

    Returns true if the Interactive Object is in highlight mode.

    See also
    HilightAttributes()

    ◆ HasMaterial()

    bool PrsMgr_PresentableObject::HasMaterial ( ) const
    inline

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

    ◆ HasOwnPresentations()

    bool PrsMgr_PresentableObject::HasOwnPresentations ( ) const
    inline

    Returns true if object should have own presentations.

    ◆ HasPolygonOffsets()

    virtual bool PrsMgr_PresentableObject::HasPolygonOffsets ( ) const
    virtual

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

    ◆ HasTransformation()

    bool PrsMgr_PresentableObject::HasTransformation ( ) const
    inline

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

    ◆ HasWidth()

    bool PrsMgr_PresentableObject::HasWidth ( ) const
    inline

    Returns true if the Interactive Object has width.

    ◆ HilightAttributes()

    const occ::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()

    int 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()

    bool 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()

    bool 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()

    bool 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 occ::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 children of the current object.

    ◆ PolygonOffsets()

    virtual void PrsMgr_PresentableObject::PolygonOffsets ( int & aMode,
    float & aFactor,
    float & aUnits ) const
    virtual

    Retrieves current polygon offsets settings from <myDrawer>.

    ◆ Presentations()

    NCollection_Sequence< occ::handle< PrsMgr_Presentation > > & PrsMgr_PresentableObject::Presentations ( )
    inline

    Return presentations.

    ◆ recomputeComputed()

    void PrsMgr_PresentableObject::recomputeComputed ( ) const
    protected

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

    ◆ RecomputeTransformation()

    virtual void PrsMgr_PresentableObject::RecomputeTransformation ( const occ::handle< Graphic3d_Camera > & theProjector)
    inlinevirtual

    Calculates object presentation for specific camera position. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation.

    Parameters
    theProjector[in] view orientation

    Reimplemented in AIS_Manipulator.

    ◆ RemoveChild()

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

    Removes theObject from children of current object in scene hierarchy.

    ◆ RemoveChildWithRestoreTransformation()

    void PrsMgr_PresentableObject::RemoveChildWithRestoreTransformation ( const occ::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 occ::handle< Graphic3d_ClipPlane > & thePlane)
    virtual

    Removes previously added clip plane.

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

    ◆ replaceAspects()

    void PrsMgr_PresentableObject::replaceAspects ( const NCollection_DataMap< occ::handle< Graphic3d_Aspects >, occ::handle< Graphic3d_Aspects > > & 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 occ::handle< Prs3d_Drawer > & theDrawer)
    inlinevirtual

    Initializes the drawing tool theDrawer.

    ◆ SetClipPlanes()

    virtual void PrsMgr_PresentableObject::SetClipPlanes ( const occ::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_CameraFrustum, AIS_Circle, AIS_ColoredShape, AIS_Line, AIS_Plane, 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 occ::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 int 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 occ::handle< Prs3d_Drawer > & theDrawer)
    inlinevirtual

    Initializes the dynamic hilight drawing tool.

    ◆ SetHilightAttributes()

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

    Initializes the hilight drawing tool theDrawer.

    ◆ SetHilightMode()

    void PrsMgr_PresentableObject::SetHilightMode ( const int 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 bool theFlag = true)

    Sets if object should be considered as infinite.

    ◆ SetIsoOnTriangulation()

    void PrsMgr_PresentableObject::SetIsoOnTriangulation ( const bool theIsEnabled)
    inline

    Returns the current facing model which is in effect.

    ◆ 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() [2/2]

    void PrsMgr_PresentableObject::SetLocalTransformation ( const occ::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.

    ◆ setLocalTransformation()

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

    Sets local transformation to theTransformation.

    Reimplemented in AIS_LightSource, and AIS_Manipulator.

    ◆ 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_ColoredShape, AIS_PointCloud, AIS_Shape, AIS_TextLabel, AIS_TexturedShape, AIS_ViewCube, and XCAFPrs_AISObject.

    ◆ SetMutable()

    virtual void PrsMgr_PresentableObject::SetMutable ( const bool 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 int aMode,
    const float aFactor = 1.0,
    const float aUnits = 0.0 )
    virtual

    Sets up polygon offsets for this object.

    See also
    Graphic3d_Aspects::SetPolygonOffsets()

    ◆ SetPropagateVisualState()

    void PrsMgr_PresentableObject::SetPropagateVisualState ( const bool theFlag)
    inline

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

    ◆ SetToUpdate() [1/3]

    void PrsMgr_PresentableObject::SetToUpdate ( )
    inline

    flags all the Presentations to be Updated.

    ◆ SetToUpdate() [2/3]

    This method is deprecated PrsMgr_PresentableObject::SetToUpdate ( )
    protected

    Recomputes the presentation in the given mode.

    Parameters
    theModepresentation (display mode) to recompute
    theToClearOtherwhen TRUE, other presentations (display modes) will be removed
    Deprecated
    (

    ◆ SetToUpdate() [3/3]

    void PrsMgr_PresentableObject::SetToUpdate ( int 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 occ::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 double 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_ColoredShape, AIS_Shape, AIS_TextLabel, AIS_Triangulation, and AIS_ViewCube.

    ◆ SetTypeOfPresentation()

    void PrsMgr_PresentableObject::SetTypeOfPresentation ( const PrsMgr_TypeOfPresentation3d theType)

    Set type of presentation.

    ◆ SetWidth()

    virtual void PrsMgr_PresentableObject::SetWidth ( const double 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_ColoredShape, AIS_Line, and AIS_Shape.

    ◆ 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]

    bool PrsMgr_PresentableObject::ToBeUpdated ( bool theToIncludeHidden = 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 ( NCollection_List< int > & ListOfMode) const

    pointer to the parent object

    ◆ ToPropagateVisualState()

    bool 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 occ::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 occ::handle< Graphic3d_TransformPers > & PrsMgr_PresentableObject::TransformPersistence ( ) const
    inline

    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

    ◆ Transparency()

    virtual double 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()

    called instead void PrsMgr_PresentableObject::Update ( bool theToIncludeHidden = false)
    inlineprotected

    Recomputes all presentations of the object.

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

    ◆ 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()

    bool PrsMgr_PresentableObject::UpdatePresentations ( bool theToIncludeHidden = 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 occ::handle< Graphic3d_ViewAffinity > & PrsMgr_PresentableObject::ViewAffinity ( ) const
    inline

    Return view affinity mask.

    ◆ Width()

    double 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

    bool PrsMgr_PresentableObject::hasOwnColor
    protected

    own color flag

    ◆ hasOwnMaterial

    bool PrsMgr_PresentableObject::hasOwnMaterial
    protected

    own material flag

    ◆ myChildren

    NCollection_List<occ::handle<PrsMgr_PresentableObject> > PrsMgr_PresentableObject::myChildren
    protected

    list of children

    ◆ myClipPlanes

    occ::handle<Graphic3d_SequenceOfHClipPlane> PrsMgr_PresentableObject::myClipPlanes
    protected

    sequence of object-specific clipping planes

    ◆ myCombinedParentTransform

    occ::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

    occ::handle<Prs3d_Drawer> PrsMgr_PresentableObject::myDrawer
    protected

    main presentation attributes

    ◆ myDynHilightDrawer

    occ::handle<Prs3d_Drawer> PrsMgr_PresentableObject::myDynHilightDrawer
    protected

    (optional) custom presentation attributes for highlighting detected object

    ◆ myHasOwnPresentations

    bool PrsMgr_PresentableObject::myHasOwnPresentations
    protected

    flag indicating if object should have own presentations

    ◆ myHilightDrawer

    occ::handle<Prs3d_Drawer> PrsMgr_PresentableObject::myHilightDrawer
    protected

    (optional) custom presentation attributes for highlighting selected object

    ◆ myInfiniteState

    bool PrsMgr_PresentableObject::myInfiniteState
    protected

    infinite flag

    ◆ myInvTransformation

    gp_GTrsf PrsMgr_PresentableObject::myInvTransformation
    protected

    inversion of absolute transformation (combined parents + local transformations)

    ◆ myIsMutable

    bool PrsMgr_PresentableObject::myIsMutable
    protected

    mutable flag

    ◆ myLocalTransformation

    occ::handle<TopLoc_Datum3D> PrsMgr_PresentableObject::myLocalTransformation
    protected

    local transformation relative to parent object

    ◆ myOwnWidth

    float PrsMgr_PresentableObject::myOwnWidth
    protected

    custom width value

    ◆ myParent

    PrsMgr_PresentableObject* PrsMgr_PresentableObject::myParent
    protected

    pointer to the parent object

    ◆ myPresentations

    NCollection_Sequence<occ::handle<PrsMgr_Presentation> > PrsMgr_PresentableObject::myPresentations
    protected

    list of presentations

    ◆ myToPropagateVisualState

    bool PrsMgr_PresentableObject::myToPropagateVisualState
    protected

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

    ◆ myTransformation

    occ::handle<TopLoc_Datum3D> PrsMgr_PresentableObject::myTransformation
    protected

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

    ◆ myTransformPersistence

    occ::handle<Graphic3d_TransformPers> PrsMgr_PresentableObject::myTransformPersistence
    protected

    transformation persistence

    ◆ myTypeOfPresentation3d

    PrsMgr_TypeOfPresentation3d PrsMgr_PresentableObject::myTypeOfPresentation3d
    protected

    presentation type

    ◆ myViewAffinity

    occ::handle<Graphic3d_ViewAffinity> PrsMgr_PresentableObject::myViewAffinity
    protected

    view affinity mask

    ◆ theToClearOther

    This method is deprecated bool PrsMgr_PresentableObject::theToClearOther
    protected

    pointer to the parent object


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