|
| AIS_Dimension (const AIS_KindOfDimension theType) |
| Constructor with default parameters values. More...
|
|
Standard_Real | GetValue () const |
| Gets dimension measurement value. If the value to display is not specified by user, then the dimension object is responsible to compute it on its own in model space coordinates. More...
|
|
void | SetCustomValue (const Standard_Real theValue) |
| Sets user-defined dimension value. The user-defined dimension value is specified in model space, and affect by unit conversion during the display. More...
|
|
const gp_Pln & | GetPlane () const |
| Get the dimension plane in which the 2D dimension presentation is computed. By default, if plane is not defined by user, it is computed automatically after dimension geometry is computed. If computed dimension geometry (points) can't be placed on the user-defined plane, dimension geometry was set as invalid (validity flag is set to false) and dimension presentation will not be computed. If user-defined plane allow geometry placement on it, it will be used for computing of the dimension presentation. More...
|
|
const Standard_Integer | GetGeometryType () const |
| Geometry type defines type of shapes on which the dimension is to be built. More...
|
|
virtual void | SetCustomPlane (const gp_Pln &thePlane) |
| Sets user-defined plane where the 2D dimension presentation will be placed. Checks validity of this plane if geometry has been set already. Validity of the plane is checked according to the geometry set and has different criteria for different kinds of dimensions. More...
|
|
void | UnsetCustomPlane () |
| Unsets user-defined plane. Therefore the plane for dimension will be computed automatically. More...
|
|
Standard_Boolean | IsTextPositionCustom () const |
|
virtual void | SetTextPosition (const gp_Pnt &) |
| Fixes the absolute text position and adjusts flyout, plane and text alignment according to it. Updates presentation if the text position is valid. ATTENTION! It does not change vertical text alignment. More...
|
|
virtual const gp_Pnt | GetTextPosition () const |
| Computes absolute text position from dimension parameters (flyout, plane and text alignment). More...
|
|
Handle< Prs3d_DimensionAspect > | DimensionAspect () const |
| Gets the dimension aspect from AIS object drawer. Dimension aspect contains aspects of line, text and arrows for dimension presentation. More...
|
|
void | SetDimensionAspect (const Handle< Prs3d_DimensionAspect > &theDimensionAspect) |
| Sets new dimension aspect for the interactive object drawer. The dimension aspect provides dynamic properties which are generally used during computation of dimension presentations. More...
|
|
AIS_KindOfDimension | KindOfDimension () const |
|
virtual AIS_KindOfInteractive | Type () const |
|
virtual Standard_Boolean | AcceptDisplayMode (const Standard_Integer theMode) const |
| Returns true if the class of objects accepts the display mode theMode. The interactive context can have a default mode of representation for the set of Interactive Objects. This mode may not be accepted by object. More...
|
|
AIS_DisplaySpecialSymbol | DisplaySpecialSymbol () const |
|
void | SetDisplaySpecialSymbol (const AIS_DisplaySpecialSymbol theDisplaySpecSymbol) |
| Specifies whether to display special symbol or not. More...
|
|
Standard_ExtCharacter | SpecialSymbol () const |
|
void | SetSpecialSymbol (const Standard_ExtCharacter theSpecialSymbol) |
| Specifies special symbol. More...
|
|
virtual const TCollection_AsciiString & | GetDisplayUnits () const |
|
virtual const TCollection_AsciiString & | GetModelUnits () const |
|
virtual void | SetDisplayUnits (const TCollection_AsciiString &) |
|
virtual void | SetModelUnits (const TCollection_AsciiString &) |
|
void | UnsetFixedTextPosition () |
| Unsets user defined text positioning and enables text positioning by other parameters: text alignment, extension size, flyout and custom plane. More...
|
|
Standard_Real | SelToleranceForText2d () const |
| Returns selection tolerance for text2d: For 2d text selection detection sensitive point with tolerance is used Important! Only for 2d text. More...
|
|
void | SetSelToleranceForText2d (const Standard_Real theTol) |
| Sets selection tolerance for text2d: For 2d text selection detection sensitive point with tolerance is used to change this tolerance use this method Important! Only for 2d text. More...
|
|
Standard_Real | GetFlyout () const |
|
void | SetFlyout (const Standard_Real theFlyout) |
| Sets flyout value for dimension. More...
|
|
virtual Standard_Boolean | IsValid () const |
| Check that the input geometry for dimension is valid and the presentation can be successfully computed. 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_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...
|
|
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...
|
|
Bnd_Box | BndBoxOfSelected (Handle< SelectMgr_IndexedMapOfOwner > &theOwners) |
| Returns a bounding box of sensitive entities with the owners given if they are a part of activated selection. 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...
|
|
|
Standard_Real | ValueToDisplayUnits () const |
|
TCollection_ExtendedString | GetValueString (Standard_Real &theWidth) const |
| Get formatted value string and its model space width. More...
|
|
void | DrawArrow (const Handle< Prs3d_Presentation > &thePresentation, const gp_Pnt &theLocation, const gp_Dir &theDirection) |
| Performs drawing of 2d or 3d arrows on the working plane. More...
|
|
void | DrawText (const Handle< Prs3d_Presentation > &thePresentation, const gp_Pnt &theTextPos, const gp_Dir &theTextDir, const TCollection_ExtendedString &theText, const Standard_Integer theLabelPosition) |
| Performs drawing of 2d or 3d text on the working plane. More...
|
|
void | DrawExtension (const Handle< Prs3d_Presentation > &thePresentation, const Standard_Real theExtensionSize, const gp_Pnt &theExtensionStart, const gp_Dir &theExtensionDir, const TCollection_ExtendedString &theLabelString, const Standard_Real theLabelWidth, const Standard_Integer theMode, const Standard_Integer theLabelPosition) |
| Performs computing of dimension linear extension with text. More...
|
|
void | DrawLinearDimension (const Handle< Prs3d_Presentation > &thePresentation, const Standard_Integer theMode, const gp_Pnt &theFirstPoint, const gp_Pnt &theSecondPoint, const Standard_Boolean theIsOneSide=Standard_False) |
| Performs computing of linear dimension (for length, diameter, radius and so on). Please note that this method uses base dimension properties, like working plane flyout length, drawer attributes. More...
|
|
void | ComputeLinearFlyouts (const Handle< SelectMgr_Selection > &theSelection, const Handle< SelectMgr_EntityOwner > &theOwner, const gp_Pnt &theFirstPoint, const gp_Pnt &theSecondPoint) |
| Compute selection sensitives for linear dimension flyout lines (length, diameter, radius). Please note that this method uses base dimension properties: working plane and flyout length. More...
|
|
Standard_Boolean | InitCircularDimension (const TopoDS_Shape &theShape, gp_Circ &theCircle, gp_Pnt &theMiddleArcPoint, Standard_Boolean &theIsClosed) |
| Performs initialization of circle and middle arc point from the passed shape which is assumed to contain circular geometry. More...
|
|
void | PointsForArrow (const gp_Pnt &thePeakPnt, const gp_Dir &theDirection, const gp_Dir &thePlane, const Standard_Real theArrowLength, const Standard_Real theArrowAngle, gp_Pnt &theSidePnt1, gp_Pnt &theSidePnt2) |
| Produce points for triangular arrow face. More...
|
|
gp_Pnt | GetTextPositionForLinear (const gp_Pnt &theFirstPoint, const gp_Pnt &theSecondPoint, const Standard_Boolean theIsOneSide=Standard_False) const |
| Compute point of text position for dimension parameters for linear kinds of dimensions (length, radius, diameter). More...
|
|
void | FitTextAlignmentForLinear (const gp_Pnt &theFirstPoint, const gp_Pnt &theSecondPoint, const Standard_Boolean theIsOneSide, const Prs3d_DimensionTextHorizontalPosition &theHorizontalTextPos, Standard_Integer &theLabelPosition, Standard_Boolean &theIsArrowsExternal) const |
| Fits text alignment relatively to the dimension line. More...
|
|
Standard_Boolean | AdjustParametersForLinear (const gp_Pnt &theTextPos, const gp_Pnt &theFirstPoint, const gp_Pnt &theSecondPoint, Standard_Real &theExtensionSize, Prs3d_DimensionTextHorizontalPosition &theAlignment, Standard_Real &theFlyout, gp_Pln &thePlane, Standard_Boolean &theIsPlaneOld) const |
| Adjusts aspect parameters according the text position: extension size, vertical text alignment and flyout. More...
|
|
|
virtual void | ComputePlane () |
| Override this method to compute automatically dimension plane in which the dimension presentation is built. More...
|
|
virtual Standard_Boolean | CheckPlane (const gp_Pln &) const |
| Override this method to check if user-defined plane is valid for the dimension geometry. More...
|
|
virtual Standard_Real | ComputeValue () const |
| Override this method to computed value of dimension. More...
|
|
virtual void | ComputeFlyoutSelection (const Handle< SelectMgr_Selection > &, const Handle< SelectMgr_EntityOwner > &) |
| Override this method to compute selection primitives for flyout lines (if the dimension provides it). This callback is a only a part of base selection computation routine. More...
|
|
virtual void | ComputeSelection (const Handle< SelectMgr_Selection > &theSelection, const Standard_Integer theMode) |
| Base procedure of computing selection (based on selection geometry data). More...
|
|
| 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...
|
|
| SelectMgr_SelectableObject (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView) |
|
| 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=0) |
| 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=0) |
| High-level interface for controlling polygon offsets. More...
|
|
virtual void | SetCombinedParentTransform (const gp_Trsf &theTransformation) |
| 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...
|
|
AIS_Dimension is a base class for 2D presentations of linear (length, diameter, radius) and angular dimensions.
The dimensions provide measurement of quantities, such as lengths or plane angles. The measurement of dimension "value" is done in model space "as is". These "value" are said to be represented in "model units", which can be specified by user. During the display the measured value converted from "model units" to "display units". The display and model units are stored in common Prs3d_Drawer (drawer of the context) to share it between all dimensions. The specified by user units are stored in the dimension's drawer.
As a drawing, the dimension is composed from the following components:
- Attachment (binding) points. The points where the dimension lines attaches to, for length dimensions the distances are measured between these points.
- Main dimension line. The which extends from the attachment points in "up" direction, and which contains text label on it with value string.
- Flyouts. The lines connecting the attachment points with main dimension line.
- Extension. The lines used to extend the main dimension line in the cases when text or arrows do not fit into the main dimension line due to their size.
- Arrows.
Linear dimensions:
extension
line arrow
-->|------- main dimension line -------|<--
| |
|flyout flyout|
| |
+-----------------------------------+
attachment attachment
point point
Angular dimensions:
extension
line
-->|+++++
arrow | +++
| 90(deg) - main dimension line
flyout | +++
| +
o---flyout---
center ^
point | extension
line
Being a 2D drawings, the dimensions are created on imaginary plane, called "dimension plane", which can be thought of as reference system of axes (X,Y,N) for constructing the presentation.
The role of axes of the dimension plane is to guide you through the encapsualted automations of presentation building to help you understand how is the presentation will look and how it will be oriented in model space during construction.
Orientation of dimension line in model space relatively to the base shapes is defined with the flyouts. Flyouts specify length of flyout lines and their orientation relatively to the attachment points on the working plane. For linear dimensions: Direction of flyouts is specified with direction of main dimension line (vector from the first attachment to the second attachment) and the normal of the dimension plane. Positive direction of flyouts is defined by vector multiplication: AttachVector * PlaneNormal. For angular dimensions: Flyouts are defined by vectors from the center point to the attachment points. These vectors directions are supposed to be the positive directions of flyouts. Negative flyouts directions means that these vectors should be reversed (and dimension will be built out of the angle constructed with center and two attach points).
The dimension plane can be constructed automatically by application (where possible, it depends on the measured geometry). It can be also set by user. However, if the user-defined plane does not fit the geometry of the dimension (attach points do not belong to it), the dimension could not be built. If it is not possible to compute automatic plane (for example, in case of length between two points) the user is supposed to specify the custom plane.
Since the dimensions feature automated construction procedures from an arbitrary shapes, the interfaces to check the validness are also implemented. Once the measured geometry is specified, the one can inquire the validness status by calling "IsValid()" method. If the result is TRUE, then all of public parameters should be pre-computed and ready. The presentation should be also computable. Otherwise, the parameters may return invalid values. In this case, the presentation will not be computed and displayed.
The dimension support two local selection modes: main dimension line selection and text label selection. These modes can be used to develop interactive modification of dimension presentations. The component highlighting in these selection modes is provided by AIS_DimensionOwner class. Please note that selection is unavailable until the presentation is computed.
The specific drawing attributes are controlled through Prs3d_DimensionAspect. The one can change color, arrows, text and arrow style and specify positioning of value label by setting corresponding values to the aspect.
Such set of parameters that consists of:
- flyout size and direction,
- user-defined dimension plane,
- horizontal and vertical text alignment can be uniquely replaced with text position in 3d space. Therefore, there are methods to convert this set of parameters to the text position and vice versa:
- If the fixed text position is defined by user, called SetTextPosition (theTextPos) method converts this 3d point to the set of parameters including adjusting of the dimension plane (this plane will be automatic plane, NOT user-defined one). If the fixed text position is set, the flag myIsFixedTextPosition is set to TRUE. ATTENSION! myIsFixedTextPosition fixes all parameters of the set from recomputing inside SetMeasureGeometry() methods. Parameters in dimension aspect (they are horizontal text position and extension size) are adjusted on presentation computing step, user-defined values in dimension aspect are not changed. But plane and flyout as dimension position parameters are changed by SetTextPosition() method according with user-defined text position. If parameters from the set are changed by user with calls of setters, it leads to disabling of fixed text position (myIsFixedTextPosition is set to FALSE). If the fixed text position is set and geometry is changed by user (SetMeasureGeometry() method is called) and the geometry doesn't satisfy computed dimension plane, the dimension is not valid.
- If the set of parameters was set by user (may be without the user-defined plane or with it), it can be converted to the text position by calling the method GetTextPosition(). In this case the text position is NOT fixed, and SetMeasureGeometry() without user-defined plane adjusts the automatic plane according input geometry (if it is possible).