Open CASCADE Technology  7.5.0
Public Member Functions | Protected Member Functions | Protected Attributes

AIS_Trihedron Class Reference

Create a selectable trihedron The trihedron includes 1 origin, 3 axes and 3 labels. Default text of labels are "X", "Y", "Z". Color of origin and any axis, color of arrows and labels may be changed. Visual presentation might be shown in two, shaded and wireframe modes, wireframe by default). There are 4 modes of selection: More...

#include <AIS_Trihedron.hxx>

Inheritance diagram for AIS_Trihedron:
Inheritance graph
[legend]

Public Member Functions

 AIS_Trihedron (const Handle< Geom_Axis2Placement > &theComponent)
 Initializes a trihedron entity. More...
 
void SetDatumDisplayMode (Prs3d_DatumMode theMode)
 Sets Shading or Wireframe display mode, triangle or segment graphic group is used relatively. More...
 
Prs3d_DatumMode DatumDisplayMode () const
 Returns datum display mode. More...
 
const Handle< Geom_Axis2Placement > & Component () const
 Returns the right-handed coordinate system set in SetComponent. More...
 
void SetComponent (const Handle< Geom_Axis2Placement > &theComponent)
 Constructs the right-handed coordinate system aComponent. More...
 
Standard_Boolean HasOwnSize () const
 Returns true if the trihedron object has a size other than the default size of 100 mm. along each axis. More...
 
void SetSize (const Standard_Real theValue)
 Sets the size aValue for the trihedron object. The default value is 100 mm. More...
 
void UnsetSize ()
 Removes any non-default settings for size of this trihedron object. If the object has 1 color, the default size of the drawer is reproduced, otherwise DatumAspect becomes null. More...
 
Standard_Real Size () const
 
virtual Standard_Boolean AcceptDisplayMode (const Standard_Integer theMode) const override
 Returns true if the display mode selected, aMode, is valid for trihedron datums. More...
 
virtual Standard_Integer Signature () const override
 Returns index 3, selection of the planes XOY, YOZ, XOZ. More...
 
virtual AIS_KindOfInteractive Type () const override
 Indicates that the type of Interactive Object is datum. More...
 
void SetColor (const Quantity_Color &theColor) override
 Sets the color theColor for this trihedron object, it changes color of axes. More...
 
void SetTextColor (const Quantity_Color &theColor)
 Sets color of label of trihedron axes. More...
 
Standard_Boolean HasTextColor () const
 Returns true if trihedron has own text color. More...
 
Quantity_Color TextColor () const
 Returns trihedron text color. More...
 
void SetArrowColor (const Quantity_Color &theColor)
 Sets color of arrow of trihedron axes. Used only in wireframe mode. More...
 
Standard_Boolean HasArrowColor () const
 Returns true if trihedron has own arrow color. More...
 
Quantity_Color ArrowColor () const
 Returns trihedron arrow color. More...
 
virtual void UnsetColor () override
 Removes the settings for color. More...
 
void SetDatumPartColor (const Prs3d_DatumParts thePart, const Quantity_Color &theColor)
 Sets color of datum part: origin or some of trihedron axes. If presentation is shading mode, this color is set for both sides of facing model. More...
 
Quantity_Color DatumPartColor (Prs3d_DatumParts thePart)
 Returns color of datum part: origin or some of trihedron axes. More...
 
void SetOriginColor (const Quantity_Color &theColor)
 Sets color of origin. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead") More...
 
void SetXAxisColor (const Quantity_Color &theColor)
 Sets color of x-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead") More...
 
void SetYAxisColor (const Quantity_Color &theColor)
 Sets color of y-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead") More...
 
void SetAxisColor (const Quantity_Color &theColor)
 Sets color of z-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead") More...
 
Standard_Boolean ToDrawArrows () const
 Returns true if arrows are to be drawn. More...
 
void SetDrawArrows (const Standard_Boolean theToDraw)
 Sets whether to draw the arrows in visualization. More...
 
void SetSelectionPriority (Prs3d_DatumParts thePart, Standard_Integer thePriority)
 Sets priority of selection for owner of the given type. More...
 
Standard_Integer SelectionPriority (Prs3d_DatumParts thePart)
 Sets priority of selection for owner of the given type. More...
 
void SetLabel (const Prs3d_DatumParts thePart, const TCollection_ExtendedString &thePriority)
 Sets text label for trihedron axis. Parameter thePart should be XAxis, YAxis or ZAxis. More...
 
const TCollection_ExtendedStringLabel (Prs3d_DatumParts thePart)
 Returns text of axis. Parameter thePart should be XAxis, YAxis or ZAxis. More...
 
virtual void ClearSelected () override
 Method which clear all selected owners belonging to this selectable object ( for fast presentation draw ). More...
 
virtual void HilightSelected (const Handle< PrsMgr_PresentationManager3d > &thePM, const SelectMgr_SequenceOfOwner &theOwners) override
 Method which draws selected owners ( for fast presentation draw ). More...
 
virtual void HilightOwnerWithColor (const Handle< PrsMgr_PresentationManager3d > &thePM, const Handle< Prs3d_Drawer > &theStyle, const Handle< SelectMgr_EntityOwner > &theOwner) override
 Method which hilight an owner belonging to this selectable object ( for fast presentation draw ). More...
 
- Public Member Functions inherited from AIS_InteractiveObject
void Redisplay (const Standard_Boolean AllModes=Standard_False)
 Updates the active presentation; if <AllModes> = Standard_True all the presentations inside are recomputed. IMPORTANT: It is preferable to call Redisplay method of corresponding AIS_InteractiveContext instance for cases when it is accessible. This method just redirects call to myCTXPtr, so this class field must be up to date for proper result. More...
 
Standard_Boolean HasInteractiveContext () const
 Indicates whether the Interactive Object has a pointer to an interactive context. More...
 
AIS_InteractiveContextInteractiveContext () const
 Returns the context pointer to the interactive context. More...
 
virtual void SetContext (const Handle< AIS_InteractiveContext > &aCtx)
 Sets the interactive context aCtx and provides a link to the default drawing tool or "Drawer" if there is none. More...
 
Standard_Boolean HasOwner () const
 Returns true if the object has an owner attributed to it. The owner can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of, and takes the form of a transient. More...
 
const Handle< Standard_Transient > & GetOwner () const
 Returns the owner of the Interactive Object. The owner can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of, and takes the form of a transient. There are two types of owners: More...
 
void SetOwner (const Handle< Standard_Transient > &theApplicativeEntity)
 Allows you to attribute the owner theApplicativeEntity to an Interactive Object. This can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of. The owner takes the form of a transient. More...
 
void ClearOwner ()
 Each Interactive Object has methods which allow us to attribute an Owner to it in the form of a Transient. This method removes the owner from the graphic entity. More...
 
virtual Standard_Boolean ProcessDragging (const Handle< AIS_InteractiveContext > &theCtx, const Handle< V3d_View > &theView, const Handle< SelectMgr_EntityOwner > &theOwner, const Graphic3d_Vec2i &theDragFrom, const Graphic3d_Vec2i &theDragTo, const AIS_DragAction theAction)
 Drag object in the viewer. More...
 
Handle< AIS_InteractiveContextGetContext () const
 Returns the context pointer to the interactive context. More...
 
Standard_Boolean HasPresentation () const
 Returns TRUE when this object has a presentation in the current DisplayMode() More...
 
Handle< Prs3d_PresentationPresentation () const
 Returns the current presentation of this object according to the current DisplayMode() More...
 
void SetAspect (const Handle< Prs3d_BasicAspect > &anAspect)
 Sets the graphic basic aspect to the current presentation. More...
 
- Public Member Functions inherited from SelectMgr_SelectableObject
virtual ~SelectMgr_SelectableObject ()
 Clears all selections of the object. More...
 
virtual Standard_Boolean AcceptShapeDecomposition () const
 Informs the graphic context that the interactive Object may be decomposed into sub-shapes for dynamic selection. The most used Interactive Object is AIS_Shape. More...
 
void RecomputePrimitives ()
 Re-computes the sensitive primitives for all modes. IMPORTANT: Do not use this method to update selection primitives except implementing custom selection manager! This method does not take into account necessary BVH updates, but may invalidate the pointers it refers to. TO UPDATE SELECTION properly from outside classes, use method UpdateSelection. More...
 
void RecomputePrimitives (const Standard_Integer theMode)
 Re-computes the sensitive primitives which correspond to the <theMode>th selection mode. IMPORTANT: Do not use this method to update selection primitives except implementing custom selection manager! selection manager! This method does not take into account necessary BVH updates, but may invalidate the pointers it refers to. TO UPDATE SELECTION properly from outside classes, use method UpdateSelection. More...
 
void AddSelection (const Handle< SelectMgr_Selection > &aSelection, const Standard_Integer aMode)
 Adds the selection aSelection with the selection mode index aMode to this framework. More...
 
void ClearSelections (const Standard_Boolean update=Standard_False)
 Empties all the selections in the SelectableObject <update> parameter defines whether all object's selections should be flagged for further update or not. This improved method can be used to recompute an object's selection (without redisplaying the object completely) when some selection mode is activated not for the first time. More...
 
const Handle< SelectMgr_Selection > & Selection (const Standard_Integer theMode) const
 Returns the selection having specified selection mode or NULL. More...
 
Standard_Boolean HasSelection (const Standard_Integer theMode) const
 Returns true if a selection corresponding to the selection mode theMode was computed for this object. More...
 
const SelectMgr_SequenceOfSelectionSelections () const
 Return the sequence of selections. More...
 
void ResetTransformation () override
 resets local transformation to identity. More...
 
virtual void UpdateTransformation () override
 Recomputes the location of the selection aSelection. More...
 
virtual void UpdateTransformations (const Handle< SelectMgr_Selection > &aSelection)
 Updates locations in all sensitive entities from <aSelection> and in corresponding entity owners. More...
 
virtual void ClearDynamicHighlight (const Handle< PrsMgr_PresentationManager > &theMgr)
 Method that needs to be implemented when the object manages selection and dynamic highlighting on its own. Clears or invalidates dynamic highlight presentation. By default it clears immediate draw of given presentation manager. More...
 
virtual Standard_Boolean IsAutoHilight () const
 If returns True, the old mechanism for highlighting selected objects is used (HilightSelected Method may be empty). If returns False, the HilightSelected method will be fully responsible for highlighting selected entity owners belonging to this selectable object. More...
 
virtual void SetAutoHilight (const Standard_Boolean theAutoHilight)
 Set AutoHilight property to true or false. More...
 
Handle< Prs3d_PresentationGetHilightPresentation (const Handle< PrsMgr_PresentationManager > &thePrsMgr)
 Creates or returns existing presentation for highlighting detected object. More...
 
Handle< Prs3d_PresentationGetSelectPresentation (const Handle< PrsMgr_PresentationManager > &thePrsMgr)
 Creates or returns existing presentation for highlighting selected object. More...
 
virtual void ErasePresentations (Standard_Boolean theToRemove)
 Removes presentations returned by GetHilightPresentation() and GetSelectPresentation(). More...
 
virtual void SetZLayer (const Graphic3d_ZLayerId theLayerId) override
 Set Z layer ID and update all presentations of the selectable object. The layers mechanism allows drawing objects in higher layers in overlay of objects in lower layers. More...
 
void UpdateSelection (const Standard_Integer theMode=-1)
 Sets update status FULL to selections of the object. Must be used as the only method of UpdateSelection from outer classes to prevent BVH structures from being outdated. More...
 
void SetAssemblyOwner (const Handle< SelectMgr_EntityOwner > &theOwner, const Standard_Integer theMode=-1)
 Sets common entity owner for assembly sensitive object entities. More...
 
Bnd_Box BndBoxOfSelected (const Handle< SelectMgr_IndexedMapOfOwner > &theOwners)
 Returns a bounding box of sensitive entities with the owners given if they are a part of activated selection. More...
 
Standard_Integer GlobalSelectionMode () const
 Returns the mode for selection of object as a whole; 0 by default. More...
 
virtual Handle< SelectMgr_EntityOwnerGlobalSelOwner () const
 Returns the owner of mode for selection of object as a whole. More...
 
virtual const Handle< SelectMgr_EntityOwner > & GetAssemblyOwner () const
 Returns common entity owner if the object is an assembly. More...
 
- Public Member Functions inherited from PrsMgr_PresentableObject
PrsMgr_PresentationsPresentations ()
 Return presentations. More...
 
Graphic3d_ZLayerId ZLayer () const
 Get ID of Z layer for main presentation. 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 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 HasDisplayMode () const
 Returns true if the Interactive Object has display mode setting overriding global setting (within Interactive Context). More...
 
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(). More...
 
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. More...
 
void UnsetDisplayMode ()
 Removes display mode settings from the interactive object. More...
 
Standard_Boolean HasHilightMode () const
 Returns true if the Interactive Object is in highlight mode. More...
 
Standard_Integer HilightMode () const
 Returns highlight display mode. This is obsolete method for backward compatibility - use ::HilightAttributes() and ::DynamicHilightAttributes() instead. More...
 
void SetHilightMode (const Standard_Integer theMode)
 Sets highlight display mode. This is obsolete method for backward compatibility - use ::HilightAttributes() and ::DynamicHilightAttributes() instead. More...
 
void UnsetHilightMode ()
 Unsets highlight display mode. More...
 
virtual Standard_Integer DefaultDisplayMode () const
 Returns the default display mode. More...
 
Standard_Boolean ToBeUpdated (Standard_Boolean theToIncludeHidden=Standard_False) const
 Returns TRUE if any active presentation has invalidation flag. More...
 
void SetToUpdate (Standard_Integer theMode)
 Flags presentation to be updated; UpdatePresentations() will recompute these presentations. More...
 
void SetToUpdate ()
 flags all the Presentations to be Updated. More...
 
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. More...
 
void SetInfiniteState (const Standard_Boolean theFlag=Standard_True)
 Sets if object should be considered as infinite. More...
 
PrsMgr_TypeOfPresentation3d TypeOfPresentation3d () const
 Returns information on whether the object accepts display in HLR mode or not. More...
 
void SetTypeOfPresentation (const PrsMgr_TypeOfPresentation3d theType)
 Set type of presentation. More...
 
const Handle< Prs3d_Drawer > & Attributes () const
 Returns the attributes settings. More...
 
virtual void SetAttributes (const Handle< Prs3d_Drawer > &theDrawer)
 Initializes 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...
 
void SynchronizeAspects ()
 Synchronize presentation aspects after their modification. 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...
 
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. 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< 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. More...
 
Standard_Boolean HasTransformation () const
 Returns true if object has a transformation that is different from the identity. More...
 
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. More...
 
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. More...
 
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. More...
 
const gp_GTrsfInversedTransformation () const
 Return inversed transformation. More...
 
const Handle< TopLoc_Datum3D > & CombinedParentTransformation () const
 Return combined parent transformation. More...
 
const Handle< Graphic3d_SequenceOfHClipPlane > & ClipPlanes () const
 Get clip planes. 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...
 
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. More...
 
virtual void RemoveClipPlane (const Handle< Graphic3d_ClipPlane > &thePlane)
 Removes previously added clip plane. More...
 
PrsMgr_PresentableObjectParent () const
 Returns parent of current object in scene hierarchy. More...
 
const PrsMgr_ListOfPresentableObjectsChildren () const
 Returns children of the current object. More...
 
virtual void AddChild (const Handle< PrsMgr_PresentableObject > &theObject)
 Makes theObject child of current object in scene hierarchy. More...
 
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. More...
 
virtual void RemoveChild (const Handle< PrsMgr_PresentableObject > &theObject)
 Removes theObject from children of current object in scene hierarchy. More...
 
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. More...
 
Standard_Boolean HasOwnPresentations () const
 Returns true if object should have own presentations. More...
 
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. More...
 
void SetIsoOnTriangulation (const Standard_Boolean theIsEnabled)
 Enables or disables on-triangulation build of isolines according to the flag given. More...
 
Aspect_TypeOfFacingModel CurrentFacingModel () const
 Returns the current facing model which is in effect. More...
 
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. More...
 
Standard_Boolean HasColor () const
 Returns true if the Interactive Object has color. More...
 
virtual void Color (Quantity_Color &theColor) const
 Returns the color setting of the Interactive Object. More...
 
Standard_Boolean HasWidth () const
 Returns true if the Interactive Object has width. More...
 
Standard_Real Width () const
 Returns the width setting of the Interactive Object. More...
 
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. More...
 
virtual void UnsetWidth ()
 Reset width to default value. More...
 
Standard_Boolean HasMaterial () const
 Returns true if the Interactive Object has a setting for material. More...
 
virtual Graphic3d_NameOfMaterial Material () const
 Returns the current material setting as enumeration value. More...
 
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. More...
 
virtual void UnsetMaterial ()
 Removes the setting for material. More...
 
Standard_Boolean IsTransparent () const
 Returns true if there is a transparency setting. More...
 
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. More...
 
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. More...
 
virtual void UnsetTransparency ()
 Removes the transparency setting. The object is opaque by default. More...
 
virtual Standard_Boolean HasPolygonOffsets () const
 Returns Standard_True if <myDrawer> has non-null shading aspect. More...
 
virtual void PolygonOffsets (Standard_Integer &aMode, Standard_ShortReal &aFactor, Standard_ShortReal &aUnits) const
 Retrieves current polygon offsets settings from <myDrawer>. More...
 
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. More...
 
virtual void UnsetAttributes ()
 Clears settings provided by the drawing tool aDrawer. More...
 
void ToBeUpdated (TColStd_ListOfInteger &ListOfMode) const
 gives the list of modes which are flagged "to be updated". More...
 
void SetClipPlanes (const Graphic3d_SequenceOfHClipPlane &thePlanes)
 
void SetTransformPersistence (const Graphic3d_TransModeFlags theMode, const gp_Pnt &thePoint=gp_Pnt(0.0, 0.0, 0.0))
 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...
 
Graphic3d_TransModeFlags GetTransformPersistenceMode () const
 Gets Transform Persistence Mode for this object. More...
 
gp_Pnt GetTransformPersistencePoint () const
 Gets point of transform persistence for this object. More...
 
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. More...
 
void SetPropagateVisualState (const Standard_Boolean theFlag)
 Change the value of the flag "propagate visual state". More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (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_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. 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...
 

Protected Member Functions

void Compute (const Handle< PrsMgr_PresentationManager3d > &thePrsMgr, const Handle< Prs3d_Presentation > &thePrs, const Standard_Integer theMode) override
 Compute trihedron presentation. More...
 
virtual void ComputeSelection (const Handle< SelectMgr_Selection > &theSelection, const Standard_Integer theMode) override
 Compute selection. More...
 
virtual void DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const override
 Dumps the content of me into the stream. More...
 
Handle< Select3D_SensitiveEntitycreateSensitiveEntity (const Prs3d_DatumParts thePart, const Handle< SelectMgr_EntityOwner > &theOwner) const
 Creates a sensitive entity for the datum part that will be used in selection owner creation. More...
 
void computePresentation (const Handle< PrsMgr_PresentationManager3d > &thePrsMgr, const Handle< Prs3d_Presentation > &thePrs)
 Computes presentation for display mode equal 1. More...
 
void setOwnDatumAspect ()
 Returns own datum aspect of trihedron, create this aspect if it was not created yet. More...
 
Handle< Graphic3d_ArrayOfPrimitivesarrayOfPrimitives (Prs3d_DatumParts thePart) const
 Returns primitives. More...
 
void updatePrimitives (const Handle< Prs3d_DatumAspect > &theAspect, Prs3d_DatumMode theMode, const gp_Pnt &theOrigin, const gp_Dir &theXDir, const gp_Dir &theYDir, const gp_Dir &theZDir)
 Updates graphic groups for the current datum mode Parameters of datum position and orientation. More...
 
- Protected Member Functions inherited from AIS_InteractiveObject
 AIS_InteractiveObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
 The TypeOfPresention3d means that the interactive object may have a presentation dependant of the view of Display. More...
 
- Protected Member Functions inherited from SelectMgr_SelectableObject
 SelectMgr_SelectableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
 Protected empty constructor. More...
 
void setGlobalSelMode (const Standard_Integer theMode)
 Override global selection mode. More...
 
virtual void UpdateClipping () override
 Update clipping planes state. More...
 
virtual void updateSelection (const Standard_Integer theMode)
 Sets update status FULL to selections of the object. Must be used as the only method of UpdateSelection from outer classes to prevent BVH structures from being outdated. More...
 
- Protected Member Functions inherited from PrsMgr_PresentableObject
void Update (Standard_Boolean theToIncludeHidden=Standard_False)
 Recomputes all presentations of the object. More...
 
void Update (Standard_Integer theMode, Standard_Boolean theToClearOther)
 Recomputes the presentation in the given mode. More...
 
 PrsMgr_PresentableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
 Protected empty constructor. More...
 
virtual ~PrsMgr_PresentableObject ()
 Destructor. More...
 
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). More...
 
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. More...
 
Standard_Boolean UpdatePresentations (Standard_Boolean theToIncludeHidden=Standard_False)
 Recomputes invalidated presentations of the object. More...
 
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. More...
 
virtual void setLocalTransformation (const Handle< TopLoc_Datum3D > &theTransformation)
 Sets local transformation to theTransformation. More...
 
void recomputeComputed () const
 Recompute computed (HLR) presentations (when view is in computed mode). More...
 
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. More...
 

Protected Attributes

Standard_Boolean myHasOwnSize
 
Standard_Boolean myHasOwnTextColor
 
Standard_Boolean myHasOwnArrowColor
 
Standard_Boolean myHasOwnDatumAspect
 
Prs3d_DatumMode myTrihDispMode
 
Handle< Geom_Axis2PlacementmyComponent
 
NCollection_DataMap< Prs3d_DatumParts, Standard_IntegermySelectionPriority
 
NCollection_DataMap< Prs3d_DatumParts, TCollection_ExtendedStringmyLabel
 
NCollection_DataMap< Prs3d_DatumParts, Handle< Graphic3d_Group > > myPartToGroup
 
NCollection_List< Prs3d_DatumPartsmySelectedParts
 
Handle< Graphic3d_AspectLine3dmyHiddenLineAspect
 
NCollection_DataMap< Prs3d_DatumParts, Handle< Graphic3d_ArrayOfPrimitives > > myPrimitives
 
- Protected Attributes inherited from AIS_InteractiveObject
AIS_InteractiveContextmyCTXPtr
 pointer to Interactive Context, where object is currently displayed; More...
 
Handle< Standard_TransientmyOwner
 application-specific owner object More...
 
- Protected Attributes inherited from SelectMgr_SelectableObject
SelectMgr_SequenceOfSelection myselections
 list of selections More...
 
Handle< Prs3d_PresentationmySelectionPrs
 optional presentation for highlighting selected object More...
 
Handle< Prs3d_PresentationmyHilightPrs
 optional presentation for highlighting detected object More...
 
Standard_Integer myGlobalSelMode
 global selection mode More...
 
Standard_Boolean myAutoHilight
 auto-highlighting flag defining More...
 
- Protected Attributes inherited from PrsMgr_PresentableObject
PrsMgr_PresentableObjectmyParent
 pointer to the parent object More...
 
PrsMgr_Presentations myPresentations
 list of presentations More...
 
Handle< Graphic3d_SequenceOfHClipPlanemyClipPlanes
 sequence of object-specific clipping planes More...
 
Handle< Prs3d_DrawermyDrawer
 main presentation attributes More...
 
Handle< Prs3d_DrawermyHilightDrawer
 (optional) custom presentation attributes for highlighting selected object More...
 
Handle< Prs3d_DrawermyDynHilightDrawer
 (optional) custom presentation attributes for highlighting detected object More...
 
Handle< Graphic3d_TransformPersmyTransformPersistence
 transformation persistence More...
 
Handle< TopLoc_Datum3DmyLocalTransformation
 local transformation relative to parent object More...
 
Handle< TopLoc_Datum3DmyTransformation
 absolute transformation of this object (combined parents + local transformations) More...
 
Handle< TopLoc_Datum3DmyCombinedParentTransform
 transformation of parent object (combined for all parents) More...
 
PrsMgr_ListOfPresentableObjects myChildren
 list of children More...
 
gp_GTrsf myInvTransformation
 inversion of absolute transformation (combined parents + local transformations) More...
 
PrsMgr_TypeOfPresentation3d myTypeOfPresentation3d
 presentation type More...
 
Aspect_TypeOfFacingModel myCurrentFacingModel
 current facing model More...
 
Standard_ShortReal myOwnWidth
 custom width value More...
 
Standard_Boolean hasOwnColor
 own color flag More...
 
Standard_Boolean hasOwnMaterial
 own material flag More...
 
Standard_Boolean myInfiniteState
 infinite flag More...
 
Standard_Boolean myIsMutable
 mutable flag More...
 
Standard_Boolean myHasOwnPresentations
 flag indicating if object should have own presentations More...
 
Standard_Boolean myToPropagateVisualState
 flag indicating if visual state (display/erase/color) should be propagated to all children 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...
 
- Static Protected Member Functions inherited from PrsMgr_PresentableObject
static const gp_TrsfgetIdentityTrsf ()
 Return the identity transformation. More...
 

Detailed Description

Create a selectable trihedron The trihedron includes 1 origin, 3 axes and 3 labels. Default text of labels are "X", "Y", "Z". Color of origin and any axis, color of arrows and labels may be changed. Visual presentation might be shown in two, shaded and wireframe modes, wireframe by default). There are 4 modes of selection:

Warning! For the presentation of trihedron, the default unit of length is the millimetre, and the default value for the representation of the axes is 100. If you modify these dimensions, you must temporarily recover the Drawer. From inside it, you take the aspect in which the values for length are stocked. For trihedron, this is Prs3d_Drawer_LineAspect. You change the values inside this Aspect and recalculate the presentation.

Constructor & Destructor Documentation

◆ AIS_Trihedron()

AIS_Trihedron::AIS_Trihedron ( const Handle< Geom_Axis2Placement > &  theComponent)

Initializes a trihedron entity.

Member Function Documentation

◆ AcceptDisplayMode()

virtual Standard_Boolean AIS_Trihedron::AcceptDisplayMode ( const Standard_Integer  theMode) const
inlineoverridevirtual

Returns true if the display mode selected, aMode, is valid for trihedron datums.

Reimplemented from PrsMgr_PresentableObject.

◆ arrayOfPrimitives()

Handle< Graphic3d_ArrayOfPrimitives > AIS_Trihedron::arrayOfPrimitives ( Prs3d_DatumParts  thePart) const
protected

Returns primitives.

◆ ArrowColor()

Quantity_Color AIS_Trihedron::ArrowColor ( ) const

Returns trihedron arrow color.

◆ ClearSelected()

virtual void AIS_Trihedron::ClearSelected ( )
overridevirtual

Method which clear all selected owners belonging to this selectable object ( for fast presentation draw ).

Reimplemented from SelectMgr_SelectableObject.

◆ Component()

const Handle< Geom_Axis2Placement >& AIS_Trihedron::Component ( ) const
inline

Returns the right-handed coordinate system set in SetComponent.

◆ Compute()

void AIS_Trihedron::Compute ( const Handle< PrsMgr_PresentationManager3d > &  thePrsMgr,
const Handle< Prs3d_Presentation > &  thePrs,
const Standard_Integer  theMode 
)
overrideprotectedvirtual

Compute trihedron presentation.

Implements PrsMgr_PresentableObject.

◆ computePresentation()

void AIS_Trihedron::computePresentation ( const Handle< PrsMgr_PresentationManager3d > &  thePrsMgr,
const Handle< Prs3d_Presentation > &  thePrs 
)
protected

Computes presentation for display mode equal 1.

◆ ComputeSelection()

virtual void AIS_Trihedron::ComputeSelection ( const Handle< SelectMgr_Selection > &  theSelection,
const Standard_Integer  theMode 
)
overrideprotectedvirtual

Compute selection.

Implements SelectMgr_SelectableObject.

◆ createSensitiveEntity()

Handle< Select3D_SensitiveEntity > AIS_Trihedron::createSensitiveEntity ( const Prs3d_DatumParts  thePart,
const Handle< SelectMgr_EntityOwner > &  theOwner 
) const
protected

Creates a sensitive entity for the datum part that will be used in selection owner creation.

◆ DatumDisplayMode()

Prs3d_DatumMode AIS_Trihedron::DatumDisplayMode ( ) const
inline

Returns datum display mode.

◆ DatumPartColor()

Quantity_Color AIS_Trihedron::DatumPartColor ( Prs3d_DatumParts  thePart)

Returns color of datum part: origin or some of trihedron axes.

◆ DumpJson()

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

Dumps the content of me into the stream.

Reimplemented from AIS_InteractiveObject.

◆ HasArrowColor()

Standard_Boolean AIS_Trihedron::HasArrowColor ( ) const
inline

Returns true if trihedron has own arrow color.

◆ HasOwnSize()

Standard_Boolean AIS_Trihedron::HasOwnSize ( ) const
inline

Returns true if the trihedron object has a size other than the default size of 100 mm. along each axis.

◆ HasTextColor()

Standard_Boolean AIS_Trihedron::HasTextColor ( ) const
inline

Returns true if trihedron has own text color.

◆ HilightOwnerWithColor()

virtual void AIS_Trihedron::HilightOwnerWithColor ( const Handle< PrsMgr_PresentationManager3d > &  thePM,
const Handle< Prs3d_Drawer > &  theStyle,
const Handle< SelectMgr_EntityOwner > &  theOwner 
)
overridevirtual

Method which hilight an owner belonging to this selectable object ( for fast presentation draw ).

Reimplemented from SelectMgr_SelectableObject.

◆ HilightSelected()

virtual void AIS_Trihedron::HilightSelected ( const Handle< PrsMgr_PresentationManager3d > &  thePM,
const SelectMgr_SequenceOfOwner theOwners 
)
overridevirtual

Method which draws selected owners ( for fast presentation draw ).

Reimplemented from SelectMgr_SelectableObject.

◆ Label()

const TCollection_ExtendedString& AIS_Trihedron::Label ( Prs3d_DatumParts  thePart)
inline

Returns text of axis. Parameter thePart should be XAxis, YAxis or ZAxis.

◆ SelectionPriority()

Standard_Integer AIS_Trihedron::SelectionPriority ( Prs3d_DatumParts  thePart)
inline

Sets priority of selection for owner of the given type.

◆ SetArrowColor()

void AIS_Trihedron::SetArrowColor ( const Quantity_Color theColor)

Sets color of arrow of trihedron axes. Used only in wireframe mode.

◆ SetAxisColor()

void AIS_Trihedron::SetAxisColor ( const Quantity_Color theColor)

Sets color of z-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead")

◆ SetColor()

void AIS_Trihedron::SetColor ( const Quantity_Color theColor)
overridevirtual

Sets the color theColor for this trihedron object, it changes color of axes.

Reimplemented from PrsMgr_PresentableObject.

◆ SetComponent()

void AIS_Trihedron::SetComponent ( const Handle< Geom_Axis2Placement > &  theComponent)

Constructs the right-handed coordinate system aComponent.

◆ SetDatumDisplayMode()

void AIS_Trihedron::SetDatumDisplayMode ( Prs3d_DatumMode  theMode)
inline

Sets Shading or Wireframe display mode, triangle or segment graphic group is used relatively.

◆ SetDatumPartColor()

void AIS_Trihedron::SetDatumPartColor ( const Prs3d_DatumParts  thePart,
const Quantity_Color theColor 
)

Sets color of datum part: origin or some of trihedron axes. If presentation is shading mode, this color is set for both sides of facing model.

◆ SetDrawArrows()

void AIS_Trihedron::SetDrawArrows ( const Standard_Boolean  theToDraw)

Sets whether to draw the arrows in visualization.

◆ SetLabel()

void AIS_Trihedron::SetLabel ( const Prs3d_DatumParts  thePart,
const TCollection_ExtendedString thePriority 
)
inline

Sets text label for trihedron axis. Parameter thePart should be XAxis, YAxis or ZAxis.

◆ SetOriginColor()

void AIS_Trihedron::SetOriginColor ( const Quantity_Color theColor)

Sets color of origin. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead")

◆ setOwnDatumAspect()

void AIS_Trihedron::setOwnDatumAspect ( )
protected

Returns own datum aspect of trihedron, create this aspect if it was not created yet.

◆ SetSelectionPriority()

void AIS_Trihedron::SetSelectionPriority ( Prs3d_DatumParts  thePart,
Standard_Integer  thePriority 
)
inline

Sets priority of selection for owner of the given type.

◆ SetSize()

void AIS_Trihedron::SetSize ( const Standard_Real  theValue)

Sets the size aValue for the trihedron object. The default value is 100 mm.

◆ SetTextColor()

void AIS_Trihedron::SetTextColor ( const Quantity_Color theColor)

Sets color of label of trihedron axes.

◆ SetXAxisColor()

void AIS_Trihedron::SetXAxisColor ( const Quantity_Color theColor)

Sets color of x-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead")

◆ SetYAxisColor()

void AIS_Trihedron::SetYAxisColor ( const Quantity_Color theColor)

Sets color of y-axis. Standard_DEPRECATED("This method is deprecated - SetColor() should be called instead")

◆ Signature()

virtual Standard_Integer AIS_Trihedron::Signature ( ) const
inlineoverridevirtual

Returns index 3, selection of the planes XOY, YOZ, XOZ.

Reimplemented from AIS_InteractiveObject.

◆ Size()

Standard_Real AIS_Trihedron::Size ( ) const

◆ TextColor()

Quantity_Color AIS_Trihedron::TextColor ( ) const

Returns trihedron text color.

◆ ToDrawArrows()

Standard_Boolean AIS_Trihedron::ToDrawArrows ( ) const

Returns true if arrows are to be drawn.

◆ Type()

virtual AIS_KindOfInteractive AIS_Trihedron::Type ( ) const
inlineoverridevirtual

Indicates that the type of Interactive Object is datum.

Reimplemented from AIS_InteractiveObject.

◆ UnsetColor()

virtual void AIS_Trihedron::UnsetColor ( )
overridevirtual

Removes the settings for color.

Reimplemented from PrsMgr_PresentableObject.

◆ UnsetSize()

void AIS_Trihedron::UnsetSize ( )

Removes any non-default settings for size of this trihedron object. If the object has 1 color, the default size of the drawer is reproduced, otherwise DatumAspect becomes null.

◆ updatePrimitives()

void AIS_Trihedron::updatePrimitives ( const Handle< Prs3d_DatumAspect > &  theAspect,
Prs3d_DatumMode  theMode,
const gp_Pnt theOrigin,
const gp_Dir theXDir,
const gp_Dir theYDir,
const gp_Dir theZDir 
)
protected

Updates graphic groups for the current datum mode Parameters of datum position and orientation.

Field Documentation

◆ myComponent

Handle< Geom_Axis2Placement > AIS_Trihedron::myComponent
protected

◆ myHasOwnArrowColor

Standard_Boolean AIS_Trihedron::myHasOwnArrowColor
protected

◆ myHasOwnDatumAspect

Standard_Boolean AIS_Trihedron::myHasOwnDatumAspect
protected

◆ myHasOwnSize

Standard_Boolean AIS_Trihedron::myHasOwnSize
protected

◆ myHasOwnTextColor

Standard_Boolean AIS_Trihedron::myHasOwnTextColor
protected

◆ myHiddenLineAspect

Handle< Graphic3d_AspectLine3d > AIS_Trihedron::myHiddenLineAspect
protected

◆ myLabel

◆ myPartToGroup

NCollection_DataMap<Prs3d_DatumParts, Handle< Graphic3d_Group > > AIS_Trihedron::myPartToGroup
protected

◆ myPrimitives

NCollection_DataMap<Prs3d_DatumParts, Handle< Graphic3d_ArrayOfPrimitives > > AIS_Trihedron::myPrimitives
protected

◆ mySelectedParts

NCollection_List<Prs3d_DatumParts> AIS_Trihedron::mySelectedParts
protected

◆ mySelectionPriority

NCollection_DataMap<Prs3d_DatumParts, Standard_Integer> AIS_Trihedron::mySelectionPriority
protected

◆ myTrihDispMode

Prs3d_DatumMode AIS_Trihedron::myTrihDispMode
protected

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