A framework to supply the structure of the object to be selected. At the first pick, this structure is created by calling the appropriate algorithm and retaining this framework for further picking. This abstract framework is inherited in Application Interactive Services (AIS), notably in AIS_InteractiveObject. Consequently, 3D selection 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...
|
virtual | ~SelectMgr_SelectableObject () |
| Clears all selections of the object. More...
|
|
virtual void | ComputeSelection (const Handle< SelectMgr_Selection > &aSelection, const Standard_Integer aMode)=0 |
| Recovers and calculates any sensitive primitive, aSelection, available in Shape mode, specified by aMode. As a rule, these are sensitive faces. This method is defined as virtual. This enables you to implement it in the creation of a new class of AIS Interactive Object. You need to do this and in so doing, redefine this method, if you create a class which enriches the list of signatures and types. 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 aMode) const |
| Returns the selection Selection having the selection mode aMode. More...
|
|
virtual 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...
|
|
void | Init () |
| Begins the iteration scanning for sensitive primitives. More...
|
|
Standard_Boolean | More () const |
| Continues the iteration scanning for sensitive primitives. More...
|
|
void | Next () |
| Continues the iteration scanning for sensitive primitives. More...
|
|
const Handle< SelectMgr_Selection > & | CurrentSelection () const |
| Returns the current selection in this framework. 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 | HilightSelected (const Handle< PrsMgr_PresentationManager3d > &PM, const SelectMgr_SequenceOfOwner &Seq) |
| Method which draws selected owners ( for fast presentation draw ) More...
|
|
virtual void | ClearSelected () |
| Method which clear all selected owners belonging to this selectable object ( for fast presentation draw ) More...
|
|
virtual void | HilightOwnerWithColor (const Handle< PrsMgr_PresentationManager3d > &thePM, const Handle< Graphic3d_HighlightStyle > &theStyle, const Handle< SelectMgr_EntityOwner > &theOwner) |
| Method which hilight an owner belonging to this selectable object ( for fast presentation draw ) 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 newAutoHilight) |
| Set AutoHilight property to true or false Sets up Transform Persistence Mode for this object. More...
|
|
Handle< Prs3d_Presentation > | GetHilightPresentation (const Handle< PrsMgr_PresentationManager3d > &TheMgr) |
|
Handle< Prs3d_Presentation > | GetSelectPresentation (const Handle< PrsMgr_PresentationManager3d > &TheMgr) |
|
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...
|
|
virtual void | BoundingBox (Bnd_Box &theBndBox)=0 |
| Returns bounding box of selectable object by storing its minimum and maximum 3d coordinates to output parameters. 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...
|
|
virtual void | SetHilightAttributes (const Handle< Prs3d_Drawer > &theDrawer) |
| Initializes the hilight drawing tool theDrawer. More...
|
|
const Handle< Prs3d_Drawer > & | HilightAttributes () const |
| Returns the hilight attributes settings. More...
|
|
virtual void | UnsetHilightAttributes () |
| Clears settings provided by the hilight drawing tool theDrawer. More...
|
|
void | SetAssemblyOwner (const Handle< SelectMgr_EntityOwner > &theOwner, const Standard_Integer theMode=-1) |
| Sets common entity owner for assembly sensitive object entities. More...
|
|
const Handle< SelectMgr_EntityOwner > & | GetAssemblyOwner () const |
| Returns common entity owner if the object is an assembly. 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. More...
|
|
virtual Handle< SelectMgr_EntityOwner > | GlobalSelOwner () const |
| Returns the owner of mode for selection of object as a whole. More...
|
|
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 |
|
virtual void | SetTransformPersistence (const Handle< Graphic3d_TransformPers > &theTrsfPers) |
| Sets up Transform Persistence for this object. 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. More...
|
|
void | SetLocalTransformation (const gp_Trsf &theTrsf) |
| Sets local transformation to theTransformation. More...
|
|
void | SetLocalTransformation (const Handle< Geom_Transformation > &theTrsf) |
| Sets local transformation to theTransformation. 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). More...
|
|
const gp_Trsf & | LocalTransformation () const |
| Return the local transformation. More...
|
|
const gp_Trsf & | Transformation () const |
| Return the transformation taking into account transformation of parent object(s). More...
|
|
const gp_GTrsf & | InversedTransformation () const |
|
virtual void | UpdateTransformation (const Handle< Prs3d_Presentation > &P) |
|
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 | Delete () const override |
| Memory deallocator for transient classes. 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 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...
|
|
|
| SelectMgr_SelectableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView) |
|
void | setGlobalSelMode (const Standard_Integer theMode) |
|
virtual void | updateSelection (const Standard_Integer theMode) |
|
| 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...
|
|
A framework to supply the structure of the object to be selected. At the first pick, this structure is created by calling the appropriate algorithm and retaining this framework for further picking. This abstract framework is inherited in Application Interactive Services (AIS), notably in AIS_InteractiveObject. Consequently, 3D selection 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.