Defines a class of objects with display and selection services. Entities which are visualized and selected are Interactive Objects. You can make use of classes of standard Interactive Objects for which all necessary methods have already been programmed, or you can implement your own classes of Interactive Objects. Specific attributes of entities such as arrow aspect for dimensions must be loaded in a Drawer. This Drawer is then applied to the Interactive Object in view. There are four types of Interactive Object in AIS: the construction element or Datum, the Relation, which includes both dimensions and constraints, the Object, and finally, when the object is of an unknown type, the None type. Inside these categories, a signature, or index, provides the possibility of additional characterization. By default, the Interactive Object has a None type and a signature of 0. If you want to give a particular type and signature to your interactive object, you must redefine the methods, Signature and Type. Warning In the case of attribute methods, methods for standard attributes are virtual. They must be redefined by the inheriting classes. Setcolor for a point and Setcolor for a plane, for example, do not affect the same attributes in the Drawer.
More...
|
virtual AIS_KindOfInteractive | Type () const |
| Returns the kind of Interactive Object: More...
|
|
virtual Standard_Integer | Signature () const |
| Specifies additional characteristics of Interactive Objects. A signature is, in fact, an index with integer values assigned different properties. This method is frequently used in conjuction with Type to give a particular type and signature to an Interactive Object. By default, the Interactive Object has a None type and a signature of 0. Among the datums, this signature is attributed to the shape The remaining datums have the following default signatures: 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. Activation methods for standard selection modes are proposed in the Interactive Context. These include selection by vertex or by edges. For datums with the same behavior as AIS_Shape, such as vetices and edges, we must redefine the virtual method so that AcceptShapeDecomposition returns false. Rule for selection : Mode 0 : Selection of the interactive Object itself Mode 1 : Selection of vertices Mode 2 : Selection Of Edges Mode 3 : Selection Of Wires Mode 4 : Selection Of Faces ... More...
|
|
void | SetCurrentFacingModel (const Aspect_TypeOfFacingModel aModel=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...
|
|
Aspect_TypeOfFacingModel | CurrentFacingModel () const |
| Returns the current facing model which is in effect. More...
|
|
virtual void | SetColor (const Quantity_Color &aColor) |
|
virtual void | SetColor (const Quantity_NameOfColor aColor) |
| only the interactive obj knowns which Drawer attribute is affected by the color (ex: for a wire, it's the wireaspect field of the drawer, but for a vertex, only the point aspect field is affected by the color) WARNING : Do not forget to set the corresponding fields here (hasOwnColor and myOwnColor) More...
|
|
virtual void | UnsetColor () |
| Removes color settings. Only the Interactive Object knows which Drawer attribute is affected by the color setting. For a wire, for example, wire aspect is the attribute affected. For a vertex, however, only point aspect is affected by the color setting. More...
|
|
virtual void | SetWidth (const Standard_Real aValue) |
| 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 () |
|
virtual Standard_Boolean | AcceptDisplayMode (const Standard_Integer aMode) const |
| Returns true if the class of objects accepts the display mode aMode. The interactive context can have a default mode of representation for the set of Interactive Objects. This mode may not be accepted by a given class of objects. Consequently, this virtual method allowing us to get information about the class in question must be implemented. More...
|
|
virtual Standard_Integer | DefaultDisplayMode () const |
| Returns the default display mode. This method is to be implemented when the main mode is not mode 0. More...
|
|
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...
|
|
void | SetInfiniteState (const Standard_Boolean aFlag=Standard_True) |
| Sets the infinite state flag aFlage. if <aFlag> = True , the interactiveObject is considered as infinite, i.e. its graphic presentations are not taken in account for View FitAll... More...
|
|
Standard_Boolean | IsInfinite () const |
| Returns true if the interactive object is infinite. In this case, its graphic presentations are not taken into account in the fit-all view. More...
|
|
Standard_Boolean | HasInteractiveContext () const |
| Indicates whether the Interactive Object has a pointer to an interactive context. More...
|
|
Handle< AIS_InteractiveContext > | GetContext () 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 > &ApplicativeEntity) |
| Allows you to attribute the owner ApplicativeEntity 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...
|
|
Standard_Boolean | HasUsers () const |
|
const TColStd_ListOfTransient & | Users () const |
|
void | AddUser (const Handle< Standard_Transient > &aUser) |
|
void | ClearUsers () |
|
Standard_Boolean | HasDisplayMode () const |
| Returns true if the Interactive Object has a display mode setting. Otherwise, it is displayed in Neutral Point. More...
|
|
void | SetDisplayMode (const Standard_Integer aMode) |
| Sets the display mode aMode for the interactive object. An object can have its own temporary display mode, which is different from that proposed by the interactive context. The range of possibilities currently proposed is the following: More...
|
|
void | UnsetDisplayMode () |
| Removes display mode settings from the interactive object. More...
|
|
Standard_Integer | DisplayMode () const |
| Returns the display mode setting of the Interactive Object. The range of possibilities is the following: More...
|
|
Standard_Boolean | HasSelectionMode () const |
| Allows you to change the selection mode of an Interactive Object. The default selection mode setting is 0. For shapes, for example, the selection modes are as follows: More...
|
|
Standard_Integer | SelectionMode () const |
| Returns the selection mode of the interactive object. More...
|
|
void | SetSelectionMode (const Standard_Integer aMode) |
| You can change the default selection mode index aMode of an Interactive Object. This is only of interest if you decide that mode 0 adopted by convention will not do. More...
|
|
void | UnsetSelectionMode () |
| You can change the default selection mode index of an Interactive Object. This is only of interest if you decide that the 0 mode adopted by convention will not do. More...
|
|
Standard_Integer | SelectionPriority () const |
| Returns the selection priority setting. -1 indicates that there is none. You can modify the selection priority of an owner to make one entity more selectionable than another one. The default selection priority for an owner is 5, for example. To increase selection priority, choose a setting between 5 and 10. An entity with priority 7 will take priority over one with a setting of 6 if both objects are selected at the same time. You could give vertices priority 8, edges priority 7, faces priority 6, and shapes priority 5. If a vertex, an edge and a face are simultaneously detected during selection, only the vertex will then be highlighted. For trihedra, for example, the default priorities are the following four: More...
|
|
void | SetSelectionPriority (const Standard_Integer aPriority) |
| Allows you to provide a setting aPriority for selection priority. You can modify selection priority of an owner to make one entity more selectionable than another one. The default selection priority for an owner is 5, for example. To increase selection priority, choose a setting between 5 and 10. An entity with priority 7 will take priority over one with a setting of 6. More...
|
|
void | UnsetSelectionPriority () |
| Removes the setting for selection priority. SelectionPriority then returns -1. More...
|
|
Standard_Boolean | HasSelectionPriority () const |
| Returns true if there is a setting for selection priority. You can modify selection priority of an owner to make one entity more selectionable than another one. The default selection priority for an owner is 5, for example. To increase selection priority, choose a setting between 5 and 10. An entity with priority 7 will take priority over one with a setting of 6. More...
|
|
Standard_Boolean | HasHilightMode () const |
| Returns true if the Interactive Object is in highlight mode. More...
|
|
Standard_Integer | HilightMode () const |
| Returns the setting for highlight mode. At dynamic detection, the presentation echoed by the Interactive Context, is by default the presentation already on the screen. You can specify a Highlight presentation mode which is valid no matter what the active representation of the object. It makes no difference whether this choice is temporary or definitive. To do this, we use the following functions: More...
|
|
void | SetHilightMode (const Standard_Integer anIndex) |
| Sets the highlight mode anIndex for the interactive object. If, for example, you want to systematically highlight the wireframe presentation of a shape - whether visualized in wireframe presentation or with shading - you set the highlight mode to 0. More...
|
|
void | UnsetHilightMode () |
| Allows the user to take a given Prs for hilight ex : for a shape which would be displayed in shading mode the hilight Prs is the wireframe mode. if No specific hilight mode is defined, the displayed Prs will be the hilighted one. More...
|
|
Standard_Boolean | HasColor () const |
| Returns true if the Interactive Object has color. More...
|
|
virtual Quantity_NameOfColor | Color () const |
| Returns the color setting of the Interactive Object. More...
|
|
virtual void | Color (Quantity_Color &aColor) const |
|
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...
|
|
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. This will be on of the following materials: More...
|
|
virtual void | SetMaterial (const Graphic3d_NameOfMaterial aName) |
| Sets the name aName for material defining this display attribute for the interactive object. Material aspect determines shading aspect, color and transparency of visible entities. 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...
|
|
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...
|
|
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 | UnsetTransparency () |
| Removes the transparency setting. The object is opaque by default. More...
|
|
virtual void | UnsetAttributes () |
| Clears settings provided by the drawing tool aDrawer. More...
|
|
void | State (const Standard_Integer theState) |
|
Standard_Integer | State () const |
|
Standard_Boolean | HasPresentation () const |
| Returns TRUE when this object has a presentation in the current DisplayMode() More...
|
|
Handle< Prs3d_Presentation > | Presentation () const |
| Returns the current presentation of this object according to the current DisplayMode() More...
|
|
void | SetAspect (const Handle< Prs3d_BasicAspect > &anAspect, const Standard_Boolean globalChange=Standard_True) |
| Sets the graphic basic aspect to the current presentation. When <globalChange> is TRUE , the full object presentation is changed. When <globalChange> is FALSE , only the current group of the object presentation is changed. 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. It modifies all existing presentations of <anObj> (if any), so it is reasonable to call this method after <anObj> has been displayed. Otherwise, Compute() method should pass Graphic3d_AspectFillArea3d aspect from <myDrawer> to Graphic3d_Group to make polygon offsets work. 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 | BoundingBox (Bnd_Box &theBndBox) |
| Returns bounding box of object correspondingly to its current display mode. 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...
|
|
Standard_Boolean | HasSelection (const Standard_Integer aMode) const |
| Returns true if a selection corresponding to the selection mode aMode is present in this framework. 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 () |
| resets local transformation to identity. More...
|
|
virtual void | UpdateTransformation () |
| 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 Quantity_NameOfColor theColor, 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) |
| 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 | 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 | 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...
|
|
PrsMgr_Presentations & | Presentations () |
|
PrsMgr_TypeOfPresentation3d | TypeOfPresentation3d () const |
| Returns information on whether the object accepts display in HLR mode or not. More...
|
|
virtual void | SetTransformPersistence (const Graphic3d_TransModeFlags &aFlag, const gp_Pnt &APoint) |
| 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 APoint parameter (except Graphic3d_TMF_TriedronPers flag. More...
|
|
void | SetTransformPersistence (const Graphic3d_TransModeFlags &aFlag) |
| Calls previous method with point (0,0,0) 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...
|
|
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...
|
|
virtual void | SetLocalTransformation (const gp_Trsf &theTransformation) |
| 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 gp_Trsf & | LocalTransformation () const |
|
const gp_Trsf & | Transformation () const |
|
const gp_Trsf & | 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 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 substracted from limit to predict the maximum possible number of object clipping planes. More...
|
|
const
Graphic3d_SequenceOfHClipPlane & | GetClipPlanes () 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...
|
|
const 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...
|
|
const Standard_Boolean | HasOwnPresentations () const |
| Returns true if object should have own presentations. More...
|
|
const
PrsMgr_PresentableObjectPointer | Parent () const |
| Returns parent of current object in scene hierarchy. More...
|
|
virtual void | Delete () const |
| 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
Handle_Standard_Type & | DynamicType () const |
| Returns a type information object about this object. More...
|
|
Standard_Boolean | IsInstance (const 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 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...
|
|
virtual Handle_Standard_Transient | This () const |
| Returns a Handle which references this object. Must never be called to objects created in stack. More...
|
|
Standard_Integer | GetRefCount () const |
| Get the reference counter of this object. More...
|
|