Open CASCADE Technology
7.3.0
|
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 frameworkfor further display. This abstract framework is inherited in Application Interactive Services (AIS), notably in: More...
#include <PrsMgr_PresentableObject.hxx>
Public Member Functions | |
PrsMgr_Presentations & | Presentations () |
PrsMgr_TypeOfPresentation3d | TypeOfPresentation3d () const |
Returns information on whether the object accepts display in HLR mode or not. More... | |
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. More... | |
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. More... | |
Standard_DEPRECATED ("This method is deprecated - SetTransformPersistence() taking Graphic3d_TransformPers should be called instead") void SetTransformPersistence(const Graphic3d_TransModeFlags theMode | |
Sets up Transform Persistence Mode for this object. This function used to lock in object position, rotation and / or zooming relative to camera position. Object will be drawn in the origin setted by thePoint parameter (except Graphic3d_TMF_TriedronPers flag. More... | |
void | SetTypeOfPresentation (const PrsMgr_TypeOfPresentation3d aType) |
void | SetToUpdate (const Standard_Integer aMode) |
flags the Prs of mode <AMode> to be Updated. the Update will be done when needed. More... | |
void | SetToUpdate () |
flags all the Presentations to be Updated. More... | |
void | ToBeUpdated (TColStd_ListOfInteger &ListOfMode) const |
gives the list of modes which are flagged "to be updated". More... | |
const Handle< Geom_Transformation > & | 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. More... | |
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. More... | |
void | SetLocalTransformation (const Handle< Geom_Transformation > &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. More... | |
Standard_Boolean | HasTransformation () const |
Returns true if object has a transformation that is different from the identity. More... | |
const Handle< Geom_Transformation > & | 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. More... | |
const gp_Trsf & | LocalTransformation () 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. More... | |
const gp_Trsf & | Transformation () 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. More... | |
const gp_GTrsf & | InversedTransformation () const |
virtual void | ResetTransformation () |
resets local transformation to identity. More... | |
virtual void | UpdateTransformation () |
virtual void | UpdateTransformation (const Handle< Prs3d_Presentation > &P) |
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. More... | |
Graphic3d_ZLayerId | ZLayer () const |
Get ID of Z layer. More... | |
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 substracted from limit to predict the maximum possible number of object clipping planes. More... | |
virtual void | RemoveClipPlane (const Handle< Graphic3d_ClipPlane > &thePlane) |
Removes previously added clip plane. More... | |
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. More... | |
Standard_DEPRECATED ("This method is deprecated - overload taking Handle should be used instead") void SetClipPlanes(const Graphic3d_SequenceOfHClipPlane &thePlanes) | |
const Handle< Graphic3d_SequenceOfHClipPlane > & | ClipPlanes () const |
Get clip planes. More... | |
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. More... | |
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). More... | |
virtual void | AddChild (const Handle< PrsMgr_PresentableObject > &theObject) |
Makes theObject child of current object in scene hierarchy. More... | |
virtual void | RemoveChild (const Handle< PrsMgr_PresentableObject > &theObject) |
Removes theObject from children of current object in scene hierarchy. More... | |
const PrsMgr_ListOfPresentableObjects & | Children () const |
Returns children of the current object. More... | |
Standard_Boolean | HasOwnPresentations () const |
Returns true if object should have own presentations. More... | |
PrsMgr_PresentableObjectPointer | Parent () const |
Returns parent of current object in scene hierarchy. More... | |
virtual void | SetAttributes (const Handle< Prs3d_Drawer > &theDrawer) |
Initializes the drawing tool theDrawer. More... | |
const Handle< Prs3d_Drawer > & | Attributes () const |
Returns the attributes settings. More... | |
virtual void | UnsetAttributes () |
Clears settings provided by the drawing tool theDrawer. More... | |
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. More... | |
virtual void | SetHilightAttributes (const Handle< Prs3d_Drawer > &theDrawer) |
Initializes the hilight drawing tool theDrawer. More... | |
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. More... | |
virtual void | SetDynamicHilightAttributes (const Handle< Prs3d_Drawer > &theDrawer) |
Initializes the dynamic hilight drawing tool. More... | |
virtual void | UnsetHilightAttributes () |
Clears settings provided by the hilight drawing tool theDrawer. More... | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual void | Delete () const |
Memory deallocator for transient classes. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
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. More... | |
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. More... | |
Standard_Transient * | This () 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. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
Data Fields | |
const gp_Pnt & | thePoint |
Protected Member Functions | |
PrsMgr_PresentableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView) | |
virtual | ~PrsMgr_PresentableObject () |
virtual void | Compute (const Handle< PrsMgr_PresentationManager3d > &aPresentationManager, const Handle< Prs3d_Presentation > &aPresentation, const Standard_Integer aMode) |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. aPresentableObject has the display mode aMode; this has the default value of 0, that is, the wireframe display mode. More... | |
virtual void | Compute (const Handle< Prs3d_Projector > &aProjector, const Handle< Prs3d_Presentation > &aPresentation) |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation. It must be redefined to implement hidden line removal for the object. The user never calls this method himself. This is done via the InteractiveContext object and is dependent on the point of view from which the object is displayed. More... | |
virtual void | Compute (const Handle< Prs3d_Projector > &aProjector, const Handle< Geom_Transformation > &aTrsf, const Handle< Prs3d_Presentation > &aPresentation) |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. A point of view is provided by the projector aProjector, and the geometric transformation which has transformed associated presentable objects is specified by aTrsf. This function is to be used in case where a hidden line removal display cannot be calculated automatically. This occurs when associated presentable objects have been transformed geometrically, but not translated. Warning The transformation aTrsf must be applied to the object before computation. More... | |
void | Update (const Standard_Boolean AllModes=Standard_False) |
recomputes all presentations of the object. More... | |
void | Update (const Standard_Integer aMode, const Standard_Boolean ClearOther) |
Recomputes the presentation in the given mode. If ClearOther is true, other presentation will be cleared. More... | |
virtual void | Fill (const Handle< PrsMgr_PresentationManager > &aPresentationManager, const Handle< PrsMgr_Presentation > &aPresentation, const Standard_Integer aMode) |
High-level interface for controlling polygon offsets. More... | |
virtual void | SetCombinedParentTransform (const Handle< Geom_Transformation > &theTrsf) |
Sets myCombinedParentTransform to theTransformation. Thus object receives transformation from parent node and able to derive its own. More... | |
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. More... | |
virtual void | setLocalTransformation (const Handle< Geom_Transformation > &theTransformation) |
Sets local transformation to theTransformation. More... | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
Static Public Member Functions inherited from Standard_Transient | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
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 frameworkfor further display. This abstract framework is inherited in Application Interactive Services (AIS), notably in:
|
protected |
|
protectedvirtual |
|
virtual |
Makes theObject child of current object in scene hierarchy.
|
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 substracted from limit to predict the maximum possible number of object clipping planes.
thePlane | [in] the clip plane to be appended to map of clip planes. |
|
inline |
Returns the attributes settings.
|
inline |
Returns children of the current object.
|
inline |
Get clip planes.
|
protectedvirtual |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. aPresentableObject has the display mode aMode; this has the default value of 0, that is, the wireframe display mode.
Reimplemented in AIS_ColorScale, AIS_AngleDimension, AIS_Manipulator, AIS_Shape, AIS_LengthDimension, AIS_Trihedron, AIS_TexturedShape, AIS_DiameterDimension, AIS_RadiusDimension, AIS_RubberBand, AIS_MultipleConnectedInteractive, AIS_PointCloud, AIS_ConnectedInteractive, AIS_PlaneTrihedron, AIS_ColoredShape, AIS_Point, MeshVS_Mesh, XCAFPrs_AISObject, QABugs_PresentableObject, and StdSelect_Shape.
|
protectedvirtual |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. Each of the views in the viewer and every modification such as rotation, for example, entails recalculation. It must be redefined to implement hidden line removal for the object. The user never calls this method himself. This is done via the InteractiveContext object and is dependent on the point of view from which the object is displayed.
Reimplemented in AIS_Shape, AIS_Trihedron, AIS_ConnectedInteractive, and AIS_MultipleConnectedInteractive.
|
protectedvirtual |
Calculates the 3D view aPresentation and its updates. The latter are managed by aPresentationManager. A point of view is provided by the projector aProjector, and the geometric transformation which has transformed associated presentable objects is specified by aTrsf. This function is to be used in case where a hidden line removal display cannot be calculated automatically. This occurs when associated presentable objects have been transformed geometrically, but not translated. Warning The transformation aTrsf must be applied to the object before computation.
Reimplemented in AIS_Shape, AIS_Trihedron, AIS_Plane, AIS_ConnectedInteractive, AIS_FixRelation, AIS_Axis, AIS_EqualDistanceRelation, AIS_PlaneTrihedron, AIS_Chamf2dDimension, AIS_SymmetricRelation, AIS_TangentRelation, AIS_Chamf3dDimension, AIS_IdenticRelation, AIS_ParallelRelation, AIS_PerpendicularRelation, AIS_MaxRadiusDimension, AIS_MultipleConnectedInteractive, AIS_OffsetDimension, AIS_ConcentricRelation, AIS_MinRadiusDimension, AIS_MidPointRelation, AIS_Point, AIS_EqualRadiusRelation, StdSelect_Shape, AIS_Circle, and AIS_Line.
|
inline |
Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalDynamic and Prs3d_TypeOfHighlight_Dynamic defined within AIS_InteractiveContext.
|
protectedvirtual |
High-level interface for controlling polygon offsets.
|
inline |
Returns true if object should have own presentations.
|
inline |
Returns true if object has a transformation that is different from the identity.
|
inline |
Returns the hilight attributes settings. When not NULL, overrides both Prs3d_TypeOfHighlight_LocalSelected and Prs3d_TypeOfHighlight_Selected defined within AIS_InteractiveContext.
|
inline |
|
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).
|
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.
|
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.
|
inline |
Returns parent of current object in scene hierarchy.
|
inline |
|
virtual |
Removes theObject from children of current object in scene hierarchy.
|
virtual |
Removes previously added clip plane.
thePlane | [in] the clip plane to be removed from map of clip planes. |
|
virtual |
resets local transformation to identity.
Reimplemented in SelectMgr_SelectableObject.
|
virtual |
Initializes the drawing tool theDrawer.
|
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.
|
protectedvirtual |
Sets myCombinedParentTransform to theTransformation. Thus object receives transformation from parent node and able to derive its own.
|
inlinevirtual |
Initializes the dynamic hilight drawing tool.
|
inlinevirtual |
Initializes the hilight drawing tool theDrawer.
|
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.
|
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.
|
protectedvirtual |
Sets local transformation to theTransformation.
Reimplemented in AIS_Manipulator.
|
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.
void PrsMgr_PresentableObject::SetToUpdate | ( | const Standard_Integer | aMode | ) |
flags the Prs of mode <AMode> to be Updated. the Update will be done when needed.
void PrsMgr_PresentableObject::SetToUpdate | ( | ) |
flags all the Presentations to be Updated.
|
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.
Reimplemented in AIS_Manipulator.
void PrsMgr_PresentableObject::SetTypeOfPresentation | ( | const PrsMgr_TypeOfPresentation3d | aType | ) |
|
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.
PrsMgr_PresentableObject::Standard_DEPRECATED | ( | "This method is deprecated - SetTransformPersistence() taking Graphic3d_TransformPers should be called instead" | ) | const |
Sets up Transform Persistence Mode for this object. This function used to lock in object position, rotation and / or zooming relative to camera position. Object will be drawn in the origin setted by thePoint parameter (except Graphic3d_TMF_TriedronPers flag.
|
inline |
void PrsMgr_PresentableObject::ToBeUpdated | ( | TColStd_ListOfInteger & | ListOfMode | ) | const |
gives the list of modes which are flagged "to be updated".
|
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.
|
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.
|
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.
|
inline |
Returns information on whether the object accepts display in HLR mode or not.
|
virtual |
Clears settings provided by the drawing tool theDrawer.
Reimplemented in AIS_InteractiveObject.
|
inlinevirtual |
Clears settings provided by the hilight drawing tool theDrawer.
|
protected |
recomputes all presentations of the object.
|
protected |
Recomputes the presentation in the given mode. If ClearOther is true, other presentation will be cleared.
|
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.
|
virtual |
Reimplemented in SelectMgr_SelectableObject.
|
virtual |
Graphic3d_ZLayerId PrsMgr_PresentableObject::ZLayer | ( | ) | const |
Get ID of Z layer.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
const gp_Pnt& PrsMgr_PresentableObject::thePoint |