Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
AIS_InteractiveContext Class Reference

The Interactive Context allows you to manage
graphic behavior and selection of Interactive Objects
in one or more viewers. Class methods make this
highly transparent.
It is essential to remember that an Interactive Object
which is already known by the Interactive Context
must be modified using Context methods. You can
only directly call the methods available for an
Interactive Object if it has not been loaded into an
Interactive Context.
You must distinguish two states in the Interactive Context:
More...

#include <AIS_InteractiveContext.hxx>

Inheritance diagram for AIS_InteractiveContext:
Inheritance graph
[legend]

Public Member Functions

 AIS_InteractiveContext (const Handle< V3d_Viewer > &MainViewer)
 Constructs the interactive context object defined by
the principal viewer MainViewer.

 AIS_InteractiveContext (const Handle< V3d_Viewer > &MainViewer, const Handle< V3d_Viewer > &Collector)
 Constructs the interactive context object defined by
the principal viewer MainViewer and the collector
(or trash) viewer.

virtual void Delete () const
 Memory deallocator for transient classes.
Standard_Boolean IsCollectorClosed () const
void CloseCollector ()
void OpenCollector ()
void SetAutoActivateSelection (const Standard_Boolean Auto)
Standard_Boolean GetAutoActivateSelection () const
void Display (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Boolean updateviewer=Standard_True)
 Controls the choice between the using the display
and selection modes of open local context which you
have defined and activating those available by default.
If a local context is open and if updateviewer equals
Standard_False, the Interactive Object anIobj is
displayed in the default active mode. This will be the
object's default display mode, if there is one.
Otherwise, it will be the context mode. The Interactive
Object's default selection mode is activated. In
general, this is 0.
This syntax has the same behavior as local context,
open or closed. If you want to view the object in open
local context without selection, use the syntax below,
setting aSelectionMode to -1.

void Display (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Integer amode, const Standard_Integer aSelectionMode, const Standard_Boolean updateviewer=Standard_True, const Standard_Boolean allowdecomposition=Standard_True)
 Controls the choice between the using the display
and selection modes of open local context which you
have defined and activating those available by default.
If no Local Context is opened. and the Interactive
Object aniobj has no display mode of its own, the
default display mode, 0, is used. Likewise, if aniobj
has no selection mode of its own, the default one, 0, is used.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.
If aSelectionMode equals -1, anIobj will not be
activated: it will be displayed but will not be selectable.
Use this if you want to view the object in open local
context without selection. Note: This option is only
available in Local Context.
If allowDecomposition equals true, anIObj can have
subshapes detected by selection mechanisms. anIObj
must be able to give a shape selection modes which
fit the AIS_Shape selection modes:

void Load (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer SelectionMode=-1, const Standard_Boolean AllowDecomp=Standard_False)
 Allows you to load the Interactive Object aniobj
with a given selection mode SelectionMode, and/or
with the desired decomposition option, whether the
object is visualized or not. If AllowDecomp =
Standard_True and, if the interactive object is of
the "Shape" type, these "standard" selection
modes will be automatically activated as a function
of the modes present in the Local Context.
The loaded objects will be selectable but
displayable in highlighting only when detected by the Selector.
This method is available only when Local Contexts are open.

void Erase (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True, const Standard_Boolean PutInCollector=Standard_False)
 To erase presentations in current local context, or
failing that, in other local contexts which allow erasing.

If putinCollector is True, the object is erased with graphical status Erased,
and put into the Collector. These objects can be retrieved
from Interactive Context by ObjectsInCollector method.
If putinCollector is False, the objects erased with graphical status FullErased,
and not put into the Collector. These objects can be retrieved
from Interactive Context by ErasedObjects method.

Note: objects that are put into the Collector recomute their presentation
for Collector Presentation Manager.

If a local context is open and if updateviewer is
False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void EraseMode (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer aMode, const Standard_Boolean updateviewer=Standard_True)
 Updates viewer contents and returns the display
mode of each aniobj object. Use only if more than
one display mode is active in the main viewer.
This method works only on presentation modes other
than the default mode. Nothing is done if aMode is
the default presentation mode.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void EraseAll (const Standard_Boolean PutInCollector=Standard_False, const Standard_Boolean updateviewer=Standard_True)
 Every erased object goes into the Collector viewer,
depending on PutInCollector value.

void DisplayAll (const Standard_Boolean OnlyFromCollector=Standard_False, const Standard_Boolean updateviewer=Standard_True)
 Displays all erased objects or display all objects from collector

void DisplayFromCollector (const Handle< AIS_InteractiveObject > &anIObj, const Standard_Boolean updateviewer=Standard_True)
 display anIObj from the collector.

void EraseSelected (const Standard_Boolean PutInCollector=Standard_False, const Standard_Boolean updateviewer=Standard_True)
 Erases selected objects if there is no open active local context.
If there is no local context activated and if
updateviewer equals Standard_False, the
presentation of the Interactive Object activates the
selection mode; the object is displayed but no viewer
will be updated.
If a local context is open, this method is neutral.

void DisplaySelected (const Standard_Boolean updateviewer=Standard_True)
 Displays selected objects if a local context is open.
Displays current objects if there is no active local context.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

Standard_Boolean KeepTemporary (const Handle< AIS_InteractiveObject > &anIObj, const Standard_Integer InWhichLocal=-1)
 Changes the status of a temporary object. It will be
kept at the neutral point, i.e. put in the list of
displayed objects along withwith its temporary
attributes. These include display mode and
selection mode, for example.
Returns true if done.
inWhichLocal gives the local context in which anIObj
is displayed. By default, the index -1 refers to the last
Local Context opened.

void Clear (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes the interactive object aniobj from all viewers.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void ClearPrs (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer aMode=0, const Standard_Boolean updateviewer=Standard_True)
 Empties the graphic presentation of the mode
indexed by aMode.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.
Warning
Removes anIobj. anIobj is still active if it was
previously activated.

void Remove (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes aniobj from every viewer. aniobj is no
longer referenced in the Context.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void RemoveAll (const Standard_Boolean updateviewer=Standard_True)
 Removes all the objects from all opened Local Contexts
and from the Neutral Point

void Hilight (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Updates the display in the viewer to take dynamic
detection into account. On dynamic detection by the
mouse cursor, sensitive primitives are highlighted.
The highlight color of entities detected by mouse
movement is white by default.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void HilightWithColor (const Handle< AIS_InteractiveObject > &aniobj, const Quantity_NameOfColor aCol, const Standard_Boolean updateviewer=Standard_True)
 Changes the color of all the lines of the object in view,
aniobj. It paints these lines the color passed as the
argument, aCol.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void Unhilight (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes hilighting from the entity aniobj. Updates the viewer.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetDisplayPriority (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Integer aPriority)
 Sets the display priority aPriority of the seen parts
presentation of the entity anIobj.

void SetZLayer (const Handle< AIS_InteractiveObject > &theIObj, const Standard_Integer theLayerId)
 Set Z layer id for interactive object. The layer can be
specified for displayed object only. The Z layers can be used to display
temporarily presentations of some object in front of the other objects
in the scene. The ids for Z layers are generated by V3d_Viewer.
Note that Z layers differ from under-/overlayer in V3d_View:
under-/overlayer are intended for specific 2D drawings that appear
behind/in front of all 3D presentations, while SetZLayer() method
applies to regular 3D presentations and does not imply any specific
drawing methods.

Standard_Integer GetZLayer (const Handle< AIS_InteractiveObject > &theIObj) const
 Get Z layer id set for displayed interactive object.
If the object doesn't exists in context or has no computed presentations,
the method returns -1.

void Redisplay (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True, const Standard_Boolean allmodes=Standard_False)
 Recomputes the seen parts presentation of the entity
aniobj. If allmodes equals true, all presentations are
present in the object even if unseen.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void Redisplay (const AIS_KindOfInteractive aTypeOfObject, const Standard_Integer Signature=-1, const Standard_Boolean updateviewer=Standard_True)
 Recomputes the Prs/Selection of displayed objects of
a given type and a given signature.
if signature = -1 doesnt take signature criterion.

void RecomputePrsOnly (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Boolean updateviewer=Standard_True, const Standard_Boolean allmodes=Standard_False)
 Recomputes the displayed presentations, flags the others
Doesn't update presentations

void RecomputeSelectionOnly (const Handle< AIS_InteractiveObject > &anIObj)
 Recomputes the active selections, flags the others
Doesn't update presentations

void Update (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Boolean updateviewer=Standard_True)
 Checks which presentations are flagged "to be recomputed"
and recomputes them if they are displayed.
This method doesn't force any Computation.
Recomputes Flagged selections if they are activated.

void SetDisplayMode (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer aMode, const Standard_Boolean updateviewer=Standard_True)
 Sets the display mode of seen Interactive Objects.
aMode provides the display mode index of the entity aniobj.
If updateviewer equals Standard_True, the
predominant mode aMode will overule the context mode.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object returns to the default selection mode; the
object is displayed but no viewer will be updated.
Note that display mode 3 is only used if you have an
AIS_Textured Shape.

void UnsetDisplayMode (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Unsets the display mode of seen Interactive Objects.
aMode provides the display mode index of the entity aniobj.
If updateviewer equals Standard_True, the
predominant mode aMode will overule the context mode.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object returns to the default selection mode; the
object is displayed but no viewer will be updated.

void SetSelectionMode (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer aMode)
 Sets the selection mode of Interactive Objects.
aMode provides the selection mode index of the entity aniobj.

void UnsetSelectionMode (const Handle< AIS_InteractiveObject > &aniobj)
 Removes selection mode from Interactive Objects.
aMode provides the selection mode index of the entity aniobj.

void SetSensitivityMode (const StdSelect_SensitivityMode aMode)
 Sets the selection sensitivity mode. SM_WINDOW mode
uses the specified pixel tolerance to compute the sensitivity
value, SM_VIEW mode allows to define the sensitivity manually.

StdSelect_SensitivityMode SensitivityMode () const
 Returns the selection sensitivity mode.

void SetSensitivity (const Standard_Real aPrecision)
 Sets the sensitivity aPrecision
according to the view size for the current context or local
context if any is activated.
Sets the sensitivity aPrecision in pixels for the current context
or local context if any is activated. By default, this
sensitivity is equal to 4 pixels.
When a local context is open, the defined sensitivity applies to
this local context instead of the main context.

Standard_Real Sensitivity () const
 Returns the selection sensitivity value.

void SetPixelTolerance (const Standard_Integer aPrecision=4)
 Define the current selection pixel sensitivity
for this context or local context if any one is activated.
Warning: When a local context is open the sensitivity is apply on it
instead on the main context.

Standard_Integer PixelTolerance () const
 Returns the pixel tolerance.

void SetLocation (const Handle< AIS_InteractiveObject > &aniobj, const TopLoc_Location &aLocation)
 Puts the location aLocation on the initial graphic
representation and the selection for the entity aniobj.
In other words, aniobj is visible and selectable at a
position other than initial position.
Graphic and selection primitives are not recomputed.
To clean the view correctly, you must reset the previous location.

void ResetLocation (const Handle< AIS_InteractiveObject > &aniobj)
 Puts the entity aniobj back into its initial position.

Standard_Boolean HasLocation (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns true if the entity aniobj has a location.

const TopLoc_LocationLocation (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns the location of the entity aniobj.

void SetCurrentFacingModel (const Handle< AIS_InteractiveObject > &aniobj, 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.

void SetColor (const Handle< AIS_InteractiveObject > &aniobj, const Quantity_NameOfColor aColor, const Standard_Boolean updateviewer=Standard_True)
void SetColor (const Handle< AIS_InteractiveObject > &aniobj, const Quantity_Color &aColor, const Standard_Boolean updateviewer=Standard_True)
 Sets the color of the selected entity.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnsetColor (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes the color selection for the selected entity.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

virtual void SetWidth (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real aValue, const Standard_Boolean updateviewer=Standard_True)
 Sets the width of the entity aniobj.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

virtual void UnsetWidth (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes the width setting of the entity aniobj.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetMaterial (const Handle< AIS_InteractiveObject > &aniobj, const Graphic3d_NameOfMaterial aName, const Standard_Boolean updateviewer=Standard_True)
 Provides the type of material setting for the view of
the entity aniobj.
The range of settings includes: BRASS, BRONZE,
GOLD, PEWTER, SILVER, STONE.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnsetMaterial (const Handle< AIS_InteractiveObject > &anObj, const Standard_Boolean updateviewer=Standard_True)
 Removes the type of material setting for viewing the
entity aniobj.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetTransparency (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real aValue=0.6, const Standard_Boolean updateviewer=Standard_True)
 Provides the transparency settings for viewing the
entity aniobj. The transparency value aValue may be
between 0.0, opaque, and 1.0, fully transparent.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnsetTransparency (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes the transparency settings for viewing the
entity aniobj. The transparency value aValue may be
between 0.0, opaque, and 1.0, fully transparent.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetDegenerateModel (const Handle< AIS_InteractiveObject > &aniobj, const Aspect_TypeOfDegenerateModel aModel=Aspect_TDM_WIREFRAME, const Quantity_Ratio aRatio=0.0)
 Sets the model of degeneration for the shaded representation
of the object <aniobj>
according to the degenerate ratio >= 0. & <= 1. where :
<aRatio> = 0. indicate that all polygons of the object
will be displayed.
<aRatio> = 1. indicate that no polygons will be displayed !!
When <ARatio> is > 0 & < 1. the corresponding amount
of object polygons will be displayed with a random method.
Warning: the degenerate structure is shown only when
the animation and degenerate flags are set to TRUE
in V3d_View::SetAnimationMode(..)

void SetDegenerateModel (const Aspect_TypeOfDegenerateModel aModel, const Quantity_Ratio aSkipRatio=0.0)
 Defines the degenerate method to apply on the shaded
representation of all objects.

void SetLocalAttributes (const Handle< AIS_InteractiveObject > &aniobj, const Handle< AIS_Drawer > &aDrawer, const Standard_Boolean updateviewer=Standard_True)
 Sets the attributes of the interactive object aniobj by
plugging the attribute manager aDrawer into the local
context. The graphic attributes of aDrawer such as
visualization mode, color, and material, are then used
to display aniobj.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnsetLocalAttributes (const Handle< AIS_InteractiveObject > &anObj, const Standard_Boolean updateviewer=Standard_True)
 Removes the settings for local attributes of the entity
anObj and returns to the Neutral Point attributes or
those of the previous local context.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetPolygonOffsets (const Handle< AIS_InteractiveObject > &anObj, const Standard_Integer aMode, const Standard_ShortReal aFactor=1.0, const Standard_ShortReal aUnits=0.0, const Standard_Boolean updateviewer=Standard_True)
 Sets up polygon offsets for the given AIS_InteractiveObject.
It simply calls anObj->SetPolygonOffsets()

Standard_Boolean HasPolygonOffsets (const Handle< AIS_InteractiveObject > &anObj) const
 simply calls anObj->HasPolygonOffsets()

void PolygonOffsets (const Handle< AIS_InteractiveObject > &anObj, Standard_Integer &aMode, Standard_ShortReal &aFactor, Standard_ShortReal &aUnits) const
 Retrieves current polygon offsets settings for <anObj>.

void SetTrihedronSize (const Standard_Real aSize, const Standard_Boolean updateviewer=Standard_True)
 Sets the size aSize of the trihedron.
Is used to change the default value 100 mm for
display of trihedra.
Use of this function in one of your own interactive
objects requires a call to the Compute function of the
new class. This will recalculate the presentation for
every trihedron displayed.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

Standard_Real TrihedronSize () const
 returns the current value of trihedron size.

void SetPlaneSize (const Standard_Real aSizeX, const Standard_Real aSizeY, const Standard_Boolean updateviewer=Standard_True)
 Sets the plane size defined by the length in the X
direction XSize and that in the Y direction YSize.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetPlaneSize (const Standard_Real aSize, const Standard_Boolean updateviewer=Standard_True)
 Sets the plane size aSize.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.
May be used if PlaneSize returns true.

Standard_Boolean PlaneSize (Standard_Real &XSize, Standard_Real &YSize) const
 Returns true if the length in the X direction XSize is
the same as that in the Y direction YSize.

AIS_DisplayStatus DisplayStatus (const Handle< AIS_InteractiveObject > &anIobj) const
 Returns the display status of the entity anIobj.
This will be one of the following:

const TColStd_ListOfIntegerDisplayedModes (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns the list of active display modes for the entity aniobj.

Standard_Boolean IsDisplayed (const Handle< AIS_InteractiveObject > &anIobj) const
 Returns true if anIobj is displayed in the interactive context.

Standard_Boolean IsDisplayed (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Integer aMode) const
Standard_Boolean IsHilighted (const Handle< AIS_InteractiveObject > &aniobj) const
Standard_Boolean IsHilighted (const Handle< AIS_InteractiveObject > &anIobj, Standard_Boolean &WithColor, Quantity_NameOfColor &theHiCol) const
 if <anIObj> is hilighted with a specific color
<WithColor> will be returned TRUE
<theHiCol> gives the name of the hilightcolor

Standard_Boolean IsInCollector (const Handle< AIS_InteractiveObject > &anIObj) const
 Returns true if the entity anIobj is in the Collector viewer.

Standard_Integer DisplayPriority (const Handle< AIS_InteractiveObject > &anIobj) const
 Returns the display priority of the entity anIobj. This
will be display mode of anIobj if it is in the main
viewer, and the highlight mode if it is in the Collector viewer.

Standard_Boolean HasColor (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns true if a view of the Interactive Object aniobj has color.

Quantity_NameOfColor Color (const Handle< AIS_InteractiveObject > &aniobj) const
void Color (const Handle< AIS_InteractiveObject > &aniobj, Quantity_Color &acolor) const
 Returns the color Color of the entity aniobj in the interactive context.

virtual Standard_Real Width (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns the width of the Interactive Object aniobj in
the interactive context.

void Status (const Handle< AIS_InteractiveObject > &anObj, TCollection_ExtendedString &astatus) const
 Returns the status astatus of the Interactive Context
for the view of the Interactive Object anObj.

void UpdateCurrentViewer ()
 Updates the current viewer, the viewer in Neutral Point.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void UpdateCollector ()
 Updates the Collector viewer.

Standard_Integer DisplayMode () const
 Returns the display mode setting.
Note that mode 3 is only used.

Quantity_NameOfColor HilightColor () const
 Returns the name of the color used to show
highlighted entities, that is, entities picked out by the mouse.

Quantity_NameOfColor SelectionColor () const
 Returns the name of the color used to show selected entities.
By default, this is Quantity_NOC_GRAY80.

Quantity_NameOfColor PreSelectionColor () const
 Returns the name of the color used to show preselection.
By default, this is Quantity_NOC_GREEN.

Quantity_NameOfColor DefaultColor () const
 Returns the name of the color used by default.
By default, this is Quantity_NOC_GOLDENROD.

Quantity_NameOfColor SubIntensityColor () const
 Returns the name of the color used to show that an
object is not currently selected.
By default, this is Quantity_NOC_GRAY40.

void SetHilightColor (const Quantity_NameOfColor aHiCol)
 Sets the color used to show highlighted entities, that
is, entities picked by the mouse.
By default, this is Quantity_NOC_CYAN1.

void SelectionColor (const Quantity_NameOfColor aCol)
 Sets the color used to show selected entities.
By default, this is Quantity_NOC_GRAY80.

void SetPreselectionColor (const Quantity_NameOfColor aCol)
 Allows you to set the color used to show preselection.
By default, this is Quantity_NOC_GREEN.
A preselected entity is one which has been selected
as the domain of application of a function such as a fillet.

void SetSubIntensityColor (const Quantity_NameOfColor aCol)
 Sets the color used to show that an object is not currently selected.
By default, this is Quantity_NOC_GRAY40.

void SetDisplayMode (const AIS_DisplayMode AMode, const Standard_Boolean updateviewer=Standard_True)
 Sets the display mode of seen Interactive Objects.
aMode provides the display mode index of the entity aniobj.
If updateviewer equals Standard_True, the
predominant mode aMode will overule the context mode.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object returns to the default selection mode; the
object is displayed but no viewer will be updated.
Note that display mode 3 is only used if you have an
AIS_Textured Shape.

void SetDeviationCoefficient (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real aCoefficient, const Standard_Boolean updateviewer=Standard_True)
 Sets the deviation coefficient aCoefficient.
Drawings of curves or patches are made with respect
to a maximal chordal deviation. A Deviation coefficient
is used in the shading display mode. The shape is
seen decomposed into triangles. These are used to
calculate reflection of light from the surface of the
object. The triangles are formed from chords of the
curves in the shape. The deviation coefficient
aCoefficient gives the highest value of the angle with
which a chord can deviate from a tangent to a curve.
If this limit is reached, a new triangle is begun.
This deviation is absolute and is set through the
method: SetMaximalChordialDeviation. The default
value is 0.001.
In drawing shapes, however, you are allowed to ask
for a relative deviation. This deviation will be:
SizeOfObject * DeviationCoefficient.
default 0.001

void SetDeviationAngle (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real anAngle, const Standard_Boolean updateviewer=Standard_True)
void SetAngleAndDeviation (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real anAngle, const Standard_Boolean updateviewer=Standard_True)
 Calls the AIS_Shape SetAngleAndDeviation to set
both Angle and Deviation coefficients

void SetHLRDeviationCoefficient (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real aCoefficient, const Standard_Boolean updateviewer=Standard_True)
 Sets the deviation coefficient aCoefficient for
removal of hidden lines created by different
viewpoints in different presentations. The Default value is 0.02.

void SetHLRDeviationAngle (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real anAngle, const Standard_Boolean updateviewer=Standard_True)
void SetHLRAngleAndDeviation (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Real anAngle, const Standard_Boolean updateviewer=Standard_True)
 Computes a HLRAngle and a
HLRDeviationCoefficient by means of the angle
anAngle and sets the corresponding methods in the
default drawing tool with these values.


void SetDeviationCoefficient (const Standard_Real aCoefficient)
 Sets the deviation coefficient aCoefficient.
Drawings of curves or patches are made with respect
to a maximal chordal deviation. A Deviation coefficient
is used in the shading display mode. The shape is
seen decomposed into triangles. These are used to
calculate reflection of light from the surface of the
object. The triangles are formed from chords of the
curves in the shape. The deviation coefficient
aCoefficient gives the highest value of the angle with
which a chord can deviate from a tangent to a curve.
If this limit is reached, a new triangle is begun.
This deviation is absolute and is set through the
method: SetMaximalChordialDeviation. The default
value is 0.001.
In drawing shapes, however, you are allowed to ask
for a relative deviation. This deviation will be:
SizeOfObject * DeviationCoefficient.
default 0.001

Standard_Real DeviationCoefficient () const
 Returns the deviation coefficient.
Drawings of curves or patches are made with respect
to a maximal chordal deviation. A Deviation coefficient
is used in the shading display mode. The shape is
seen decomposed into triangles. These are used to
calculate reflection of light from the surface of the
object. The triangles are formed from chords of the
curves in the shape. The deviation coefficient gives
the highest value of the angle with which a chord can
deviate from a tangent to a curve. If this limit is
reached, a new triangle is begun.
This deviation is absolute and is set through
AIS_Drawer::SetMaximalChordialDeviation. The
default value is 0.001.
In drawing shapes, however, you are allowed to ask
for a relative deviation. This deviation will be:
SizeOfObject * DeviationCoefficient.

void SetDeviationAngle (const Standard_Real anAngle)
 default 6degrees

Standard_Real DeviationAngle () const
void SetHLRDeviationCoefficient (const Standard_Real aCoefficient)
 Sets the deviation coefficient aCoefficient for
removal of hidden lines created by different
viewpoints in different presentations. The Default value is 0.02.

Standard_Real HLRDeviationCoefficient () const
 Returns the real number value of the hidden line
removal deviation coefficient.
A Deviation coefficient is used in the shading display
mode. The shape is seen decomposed into triangles.
These are used to calculate reflection of light from the
surface of the object.
The triangles are formed from chords of the curves in
the shape. The deviation coefficient give the highest
value of the angle with which a chord can deviate
from a tangent to a curve. If this limit is reached, a
new triangle is begun.
To find the hidden lines, hidden line display mode
entails recalculation of the view at each different
projector perspective.
Because hidden lines entail calculations of more than
usual complexity to decompose them into these
triangles, a deviation coefficient allowing greater
tolerance is used. This increases efficiency in calculation.
The Default value is 0.02.

void SetHLRAngle (const Standard_Real anAngle)
 Sets the HLR angle anAngle.

Standard_Real HLRAngle () const
 Returns the real number value of the deviation angle
in hidden line removal views in this interactive context.
The default value is 20*PI/180.

void SetHLRAngleAndDeviation (const Standard_Real anAngle)
 compute with anangle a HLRAngle and a HLRDeviationCoefficient
and set them in myHLRAngle and in myHLRDeviationCoefficient
of myDefaultDrawer ;
anAngle is in radian ; ( 1 deg < angle in deg < 20 deg)

Handle_Prs3d_LineAspect HiddenLineAspect () const
 Initializes hidden line aspect in the default drawing tool, or Drawer.
The default values are:
Color: Quantity_NOC_YELLOW
Type of line: Aspect_TOL_DASH
Width: 1.

void SetHiddenLineAspect (const Handle< Prs3d_LineAspect > &anAspect) const
 Sets the hidden line aspect anAspect.
anAspect defines display attributes for hidden lines in
HLR projections.

Standard_Boolean DrawHiddenLine () const
 returns Standard_True if the hidden lines are to be drawn.
By default the hidden lines are not drawn.

void EnableDrawHiddenLine () const
void DisableDrawHiddenLine () const
void SetIsoNumber (const Standard_Integer NbIsos, const AIS_TypeOfIso WhichIsos=AIS_TOI_Both)
 Sets the number of U and V isoparameters displayed.

Standard_Integer IsoNumber (const AIS_TypeOfIso WhichIsos=AIS_TOI_Both)
 Returns the number of U and V isoparameters displayed.

void IsoOnPlane (const Standard_Boolean SwitchOn)
 Returns True if drawing isoparameters on planes is enabled.

Standard_Boolean IsoOnPlane () const
 Returns True if drawing isoparameters on planes is enabled.
//! if <forUIsos> = False,

void SetSelectedAspect (const Handle< Prs3d_BasicAspect > &anAspect, const Standard_Boolean globalChange=Standard_True, const Standard_Boolean updateViewer=Standard_True)
 Sets the graphic basic aspect to the current presentation of
ALL selected objects.
When <globalChange> is TRUE , the full object presentation
is changed.
When <globalChange> is FALSE , only the current group
of the object presentation is changed.
Updates the viewer or collector when <updateViewer> is TRUE

AIS_StatusOfDetection MoveTo (const Standard_Integer XPix, const Standard_Integer YPix, const Handle< V3d_View > &aView)
 Relays mouse position in pixels XPix and YPix to the
interactive context selectors. This is done by the view
aView passing this position to the main viewer and updating it.
Functions in both Neutral Point and local contexts.

Standard_Boolean HasNextDetected () const
 returns True if other entities were detected in the
last mouse detection

Standard_Integer HilightNextDetected (const Handle< V3d_View > &aView)
 if more than 1 object is detected by the selector,
only the "best" owner is hilighted at the mouse position.
This Method allows the user to hilight one after another
the other detected entities.
if The method select is called, the selected entity
will be the hilighted one!
returns the Rank of hilighted entity
WARNING : Loop Method. When all the detected entities
have been hilighted , the next call will hilight
the first one again

Standard_Integer HilightPreviousDetected (const Handle< V3d_View > &aView)
 Same as previous methods in reverse direction...

AIS_StatusOfPick Select (const Standard_Integer XPMin, const Standard_Integer YPMin, const Standard_Integer XPMax, const Standard_Integer YPMax, const Handle< V3d_View > &aView, const Standard_Boolean updateviewer=Standard_True)
 Selects everything found in the bounding rectangle
defined by the pixel minima and maxima, XPMin,
YPMin, XPMax, and YPMax in the view, aView
The objects detected are passed to the main viewer,
which is then updated.

AIS_StatusOfPick Select (const TColgp_Array1OfPnt2d &Polyline, const Handle< V3d_View > &aView, const Standard_Boolean updateviewer=Standard_True)
 polyline selection; clears the previous picked list

AIS_StatusOfPick Select (const Standard_Boolean updateviewer=Standard_True)
 Stores and hilights the previous detected; Unhilights
the previous picked.

AIS_StatusOfPick ShiftSelect (const Standard_Boolean updateviewer=Standard_True)
 adds the last detected to the list of previous picked.
if the last detected was already declared as picked,
removes it from the Picked List.

AIS_StatusOfPick ShiftSelect (const TColgp_Array1OfPnt2d &Polyline, const Handle< V3d_View > &aView, const Standard_Boolean updateviewer=Standard_True)
 adds the last detected to the list of previous picked.
if the last detected was already declared as picked,
removes it from the Picked List.

AIS_StatusOfPick ShiftSelect (const Standard_Integer XPMin, const Standard_Integer YPMin, const Standard_Integer XPMax, const Standard_Integer YPMax, const Handle< V3d_View > &aView, const Standard_Boolean updateviewer=Standard_True)
 rectangle of selection ; adds new detected entities into the
picked list, removes the detected entities that were already stored...

void SetToHilightSelected (const Standard_Boolean toHilight)
 Specify whether selected object must be hilighted when mouse cursor
is moved above it (in MoveTo method). By default this value is false and
selected object is not hilighted in this case.

Standard_Boolean ToHilightSelected () const
 Return value specified whether selected object must be hilighted
when mouse cursor is moved above it

void SetCurrentObject (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Updates the view of the current object in open context.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void AddOrRemoveCurrentObject (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Allows you to add a current object to the list of current
objects or remove it from that list.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UpdateCurrent ()
 Updates the list of current objects, i.e. hilights new
current objects, removes hilighting from former current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.


Standard_Boolean WasCurrentTouched () const
 Returns the current selection touched by the cursor.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void SetOkCurrent ()
Standard_Boolean IsCurrent (const Handle< AIS_InteractiveObject > &aniobj) const
 Returns true if there is a non-null interactive object in Neutral Point.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void InitCurrent ()
 Initializes a scan of the current selected objects in
Neutral Point.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Standard_Boolean MoreCurrent () const
 Returns true if there is another object found by the
scan of the list of current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void NextCurrent ()
 Continues the scan to the next object in the list of
current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Handle_AIS_InteractiveObject Current () const
 Returns the current interactive object.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Standard_Integer NbCurrents ()
Handle_AIS_InteractiveObject FirstCurrentObject ()
 Returns the first current object in the list of current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void HilightCurrents (const Standard_Boolean updateviewer=Standard_True)
 Highlights current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnhilightCurrents (const Standard_Boolean updateviewer=Standard_True)
 Removes highlighting from current objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void ClearCurrents (const Standard_Boolean updateviewer=Standard_True)
 Empties previous current objects in order to get the
current objects detected by the selector using
UpdateCurrent.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetSelected (const Handle< AIS_InteractiveObject > &aniObj, const Standard_Boolean updateviewer=Standard_True)
 Puts the interactive object aniObj in the list of
selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SetSelectedCurrent ()
 puts the selected list in the current objects List.

void UpdateSelected (const Standard_Boolean updateviewer=Standard_True)
 updates the list of selected objects
i.e. hilights the new selected
unhilights old selected objects

void AddOrRemoveSelected (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Allows you to add a selected object to the list of
selected objects or remove it from that list. This entity
can be an Interactive Object aniobj or its owner
aShape as can be seen in the two syntaxes above.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void HilightSelected (const Standard_Boolean updateviewer=Standard_True)
 Highlights selected objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void UnhilightSelected (const Standard_Boolean updateviewer=Standard_True)
 Removes highlighting from selected objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void ClearSelected (const Standard_Boolean updateviewer=Standard_True)
 Empties previous selected objects in order to get the
selected objects detected by the selector using
UpdateSelected.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void AddOrRemoveSelected (const TopoDS_Shape &aShape, const Standard_Boolean updateviewer=Standard_True)
 No right to Add a selected Shape (Internal Management
of shape Selection).
A Previous selected shape may only be removed.

void AddOrRemoveSelected (const Handle< SelectMgr_EntityOwner > &anOwner, const Standard_Boolean updateviewer=Standard_True)
 allows to add/remove in the selected list the entities
represented by <anOwner> in the selection process.

Standard_Boolean IsSelected (const Handle< AIS_InteractiveObject > &aniobj) const
 Finds the selected object aniobj in local context and
returns its name.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void InitSelected ()
 Initializes a scan of the selected objects in local context.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Standard_Boolean MoreSelected () const
 Returns true if there is another object found by the
scan of the list of selected objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

void NextSelected ()
 Continues the scan to the next object in the list of
selected objects.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Standard_Integer NbSelected ()
Standard_Boolean HasSelectedShape () const
 Returns true if the interactive context has a shape
selected in it which results from the decomposition of
another entity in local context.
If HasSelectedShape returns true, SelectedShape
returns the shape which has been shown to be
selected. Interactive returns the Interactive Object
from which the shape has been selected.
If HasSelectedShape returns false, Interactive
returns the interactive entity selected by the click of the mouse.

TopoDS_Shape SelectedShape () const
 
   Returns the selected shape in the open local context. <br>

Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Handle_SelectMgr_EntityOwner SelectedOwner () const
 Returns the owner of the selected entity resulting
from the decomposition of another entity in local context.

void EntityOwners (SelectMgr_IndexedMapOfOwner &theOwners, const Handle< AIS_InteractiveObject > &theIObj, const Standard_Integer theMode=-1) const
 Returns a collection containing all entity owners
created for the interactive object <theIObj> in
the selection mode theMode (in all active modes
if the Mode == -1)

Handle_AIS_InteractiveObject Interactive () const
 Returns the location of the selected Interactive Object.

Handle_AIS_InteractiveObject SelectedInteractive () const
Standard_Boolean HasApplicative () const
 Returns true if the applicative object has an owner
from Interactive attributed to it.

Handle_Standard_Transient Applicative () const
 Returns the owner of the applicative entity detected
in interactive context. The owner can be a shape for
a set of sub-shapes or a sub-shape for sub-shapes
which it is composed of.

Standard_Boolean HasDetected () const
 Returns true if there is a mouse-detected entity in local context.
If there is no open local context, the objects selected
are called current objects; selected objects if there is
one. Iterators allow entities to be recovered in either
case. This method is one of a set which allows you to
manipulate the objects which have been placed in these two lists.

Standard_Boolean HasDetectedShape () const
 Returns true if there is a detected shape in local context.
If there is no open local context, the objects selected
are called current objects; selected objects if there is
one. Iterators allow entities to be recovered in either
case. This method is one of a set which allows you to
manipulate the objects which have been placed in these two lists.

const TopoDS_ShapeDetectedShape () const
 Returns the shape detected in local context.
If there is no open local context, the objects selected
are called current objects; selected objects if there is
one. Iterators allow entities to be recovered in either
case. This method is one of a set which allows you to
manipulate the objects which have been placed in these two lists.

Handle_AIS_InteractiveObject DetectedInteractive () const
 Returns the interactive objects last detected in open context.
If there is no open local context, the objects selected
are called current objects; selected objects if there is
one. Iterators allow entities to be recovered in either
case. This method is one of a set which allows you to
manipulate the objects which have been placed in these two lists.

Handle_SelectMgr_EntityOwner DetectedOwner () const
 returns the owner of the detected sensitive primitive.

void InitDetected ()
Standard_Boolean MoreDetected () const
void NextDetected ()
const TopoDS_ShapeDetectedCurrentShape () const
Handle_AIS_InteractiveObject DetectedCurrentObject () const
Standard_Integer OpenLocalContext (const Standard_Boolean UseDisplayedObjects=Standard_True, const Standard_Boolean AllowShapeDecomposition=Standard_True, const Standard_Boolean AcceptEraseOfObjects=Standard_False, const Standard_Boolean BothViewers=Standard_False)
 Opens local contexts and specifies how this is to be
done. The options listed above function in the following manner:

void CloseLocalContext (const Standard_Integer Index=-1, const Standard_Boolean updateviewer=Standard_True)
 Allows you to close local contexts. For greater
security, you should close the context with the
index Index given on opening.
When you close a local context, the one before,
which is still on the stack, reactivates. If none is
left, you return to Neutral Point.
If a local context is open and if updateviewer
equals Standard_False, the presentation of the
Interactive Object activates the selection mode; the
object is displayed but no viewer will be updated.
Warning
When the index isn't specified, the current context
is closed. This option can be dangerous, as other
Interactive Functions can open local contexts
without necessarily warning the user.

Standard_Integer IndexOfCurrentLocal () const
 returns -1 if no opened local context.

void CloseAllContexts (const Standard_Boolean updateviewer=Standard_True)
 Allows you to close all local contexts at one go and
return to Neutral Point.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void ResetOriginalState (const Standard_Boolean updateviewer=Standard_True)
 to be used only with no opened
local context.. displays and activates objects in their
original state before local contexts were opened...

void ClearLocalContext (const AIS_ClearMode TheMode=AIS_CM_All)
 clears Objects/Filters/Activated Modes list in the current opened
local context.

void UseDisplayedObjects ()
void NotUseDisplayedObjects ()
 when a local Context is opened, one is able to
use/not use the displayed objects at neutral point
at anytime.

Standard_Boolean BeginImmediateDraw ()
 initializes the list of presentations to be displayed
returns False if No Local COnte

Standard_Boolean ImmediateAdd (const Handle< AIS_InteractiveObject > &anIObj, const Standard_Integer aMode=0)
 returns True if <anIObj> has been stored in the list.

Standard_Boolean ImmediateRemove (const Handle< AIS_InteractiveObject > &anIObj, const Standard_Integer aMode=0)
 returns True if <anIObj> has been removed from the list.

Standard_Boolean EndImmediateDraw (const Handle< V3d_View > &aView, const Standard_Boolean DoubleBuf=Standard_False)
 returns True if the immediate display has been done.

Standard_Boolean EndImmediateDraw (const Standard_Boolean DoubleBuf=Standard_False)
 Uses the First Active View of Main Viewer!!!
returns True if the immediate display has been done.

Standard_Boolean IsImmediateModeOn () const
void Drag (const Handle< V3d_View > &aView, const Handle< AIS_InteractiveObject > &anObject, const Handle< Geom_Transformation > &aTranformation, const Standard_Boolean postConcatenate=Standard_False, const Standard_Boolean update=Standard_False, const Standard_Boolean zBuffer=Standard_False)
 Transforms the current presentation of the object <anObject>
using the transient graphic space of the view <aView> in
immediat mode graphics.

void SetAutomaticHilight (const Standard_Boolean aStatus)
 Sets the highlighting status aStatus of detected and
selected entities.
Whether you are in Neutral Point or local context, this
is automatically managed by the Interactive Context.
This function allows you to disconnect the automatic mode.

Standard_Boolean AutomaticHilight () const
 Returns true if the automatic highlight mode is active
in an open context.

void SetZDetection (const Standard_Boolean aStatus=Standard_False)
 Enables/Disables the Z detection.
If TRUE the detection echo can be partially hidden by the
detected object.

Standard_Boolean ZDetection () const
 Retrieves the Z detection state.

void Activate (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Integer aMode=0)
 Activates the selection mode aMode whose index is
given, for the given interactive entity anIobj.

void Deactivate (const Handle< AIS_InteractiveObject > &anIObj)
 Deactivates all the activated selection modes
of an object.

void Deactivate (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Integer aMode)
 Deactivates all the activated selection modes of the
interactive object anIobj with a given selection mode aMode.

void ActivatedModes (const Handle< AIS_InteractiveObject > &anIobj, TColStd_ListOfInteger &theList) const
 Returns the list of activated selection modes in an open context.

void SetShapeDecomposition (const Handle< AIS_InteractiveObject > &anIobj, const Standard_Boolean aStatus)
 to be Used only with opened local context and
if <anIobj> is of type shape...
if <aStatus> = True <anIobj> will be sensitive to
shape selection modes activation.
= False, <anIobj> will not be senstive
any more.


void SetTemporaryAttributes (const Handle< AIS_InteractiveObject > &anObj, const Handle< Prs3d_Drawer > &aDrawer, const Standard_Boolean updateviewer=Standard_True)
 Sets the temporary graphic attributes of the entity
anObj. These are provided by the attribute manager
aDrawer and are valid for a particular local context only.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SubIntensityOn (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Highlights, and removes highlights from, the displayed
object aniobj which is displayed at Neutral Point with
subintensity color; available only for active local
context. There is no effect if there is no local context.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SubIntensityOff (const Handle< AIS_InteractiveObject > &aniobj, const Standard_Boolean updateviewer=Standard_True)
 Removes the subintensity option for the entity aniobj.
If a local context is open and if updateviewer equals
Standard_False, the presentation of the Interactive
Object activates the selection mode; the object is
displayed but no viewer will be updated.

void SubIntensityOn (const Standard_Boolean updateviewer=Standard_True)
 hilights/unhilights displayed objects which are displayed at
neutral state with subintensity color;
available only for active local context.
No effect if no local context.

void SubIntensityOff (const Standard_Boolean updateviewer=Standard_True)
 removes subintensity option for all objects.

void AddFilter (const Handle< SelectMgr_Filter > &aFilter)
 Allows you to add the filter aFilter to Neutral Point or
to a local context if one or more selection modes have been activated.
Only type filters may be active in Neutral Point.

void RemoveFilter (const Handle< SelectMgr_Filter > &aFilter)
 Removes a filter from Neutral Point or a local context
if one or more selection modes have been activated.
Only type filters are activated in Neutral Point.

void RemoveFilters ()
 Remove a filter to Neutral Point or a local context if
one or more selection modes have been activated.
Only type filters are active in Neutral Point.

void ActivateStandardMode (const TopAbs_ShapeEnum aStandardActivation)
 Provides an alternative to the Display methods when
activating specific selection modes. This has the
effect of activating the corresponding selection mode
aStandardActivation for all objects in Local Context
which accept decomposition into sub-shapes.
Every new Object which has been loaded into the
interactive context and which answers these
decomposition criteria is automatically activated
according to these modes.
Warning
If you have opened a local context by loading an
object with the default options
(<AllowShapeDecomposition>= Standard_True), all
objects of the "Shape" type are also activated with
the same modes. You can act on the state of these
"Standard" objects by using SetShapeDecomposition(Status).

void DeactivateStandardMode (const TopAbs_ShapeEnum aStandardActivation)
 Provides an alternative to the Display methods when
deactivating specific selection modes. This has the
effect of deactivating the corresponding selection
mode aStandardActivation for all objects in Local
Context which accept decomposition into sub-shapes.

const TColStd_ListOfIntegerActivatedStandardModes () const
 Returns the list of activated standard selection modes
available in a local context.

const SelectMgr_ListOfFilterFilters () const
 Returns the list of filters active in a local context.

const Handle_Prs3d_Drawer & DefaultDrawer () const
 Returns the default attribute manager.
This contains all the color and line attributes which
can be used by interactive objects which do not have
their own attributes.

const Handle_V3d_Viewer & CurrentViewer () const
 Returns the current viewer.

void DisplayedObjects (AIS_ListOfInteractive &aListOfIO, const Standard_Boolean OnlyFromNeutral=Standard_False) const
 Returns the list of displayed objects of a particular
Type WhichKind and Signature WhichSignature. By
Default, WhichSignature equals -1. This means that
there is a check on type only.

void DisplayedObjects (const AIS_KindOfInteractive WhichKind, const Standard_Integer WhichSignature, AIS_ListOfInteractive &aListOfIO, const Standard_Boolean OnlyFromNeutral=Standard_False) const
 gives the list of displayed objects of a particular
Type and signature.
by Default, <WhichSignature> = -1 means
control only on <WhichKind>.

const Handle_V3d_Viewer & Collector () const
void ObjectsInCollector (AIS_ListOfInteractive &aListOfIO) const
 Returns the list aListOfIO of erased objects of a
particular Type WhichKind and Signature WhichSignature.
By Default, WhichSignature equals 1. This means
that there is a check on type only.

void ObjectsInCollector (const AIS_KindOfInteractive WhichKind, const Standard_Integer WhichSignature, AIS_ListOfInteractive &aListOfIO) const
 gives the list of erased objects of a particular
Type and signature
by Default, <WhichSignature> = -1 means
control only on <WhichKind>.

void ErasedObjects (AIS_ListOfInteractive &theListOfIO) const
 Returns the list theListOfIO of erased objects (but not placed into collecter)
particular Type WhichKind and Signature WhichSignature.
By Default, WhichSignature equals 1. This means
that there is a check on type only.

void ErasedObjects (const AIS_KindOfInteractive WhichKind, const Standard_Integer WhichSignature, AIS_ListOfInteractive &theListOfIO) const
 gives the list of erased objects (but not placed into collecter)
Type and signature
by Default, <WhichSignature> = -1 means
control only on <WhichKind>.

void ObjectsByDisplayStatus (const AIS_DisplayStatus theStatus, AIS_ListOfInteractive &theListOfIO) const
 Returns the list theListOfIO of objects with indicated display status
particular Type WhichKind and Signature WhichSignature.
By Default, WhichSignature equals 1. This means
that there is a check on type only.

void ObjectsByDisplayStatus (const AIS_KindOfInteractive WhichKind, const Standard_Integer WhichSignature, const AIS_DisplayStatus theStatus, AIS_ListOfInteractive &theListOfIO) const
 gives the list of objects with indicated display status
Type and signature
by Default, <WhichSignature> = -1 means
control only on <WhichKind>.

void ObjectsInside (AIS_ListOfInteractive &aListOfIO, const AIS_KindOfInteractive WhichKind=AIS_KOI_None, const Standard_Integer WhichSignature=-1) const
 fills <aListOfIO> with objects of a particular
Type and Signature with no consideration of display status.
by Default, <WhichSignature> = -1 means
control only on <WhichKind>.
if <WhichKind> = AIS_KOI_None and <WhichSignature> = -1,
all the objects are put into the list.

Standard_Boolean HasOpenedContext () const
 Returns true if there is an open context.

const TCollection_AsciiStringCurrentName () const
 Returns the name of the current selected entity in Neutral Point.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

const TCollection_AsciiStringSelectionName () const
 Returns the name of the current selected entity in
open local context.
Objects selected when there is no open local context
are called current objects; those selected in open
local context, selected objects.

Standard_CString DomainOfMainViewer () const
 Returns the domain name of the main viewer.

Standard_CString DomainOfCollector () const
 Returns the domain name of the Collector viewer.

Handle_AIS_LocalContext LocalContext () const
 This method is only intended for advanced operation, particularly with
the aim to improve performance when many objects have to be selected
together. Otherwise, you should use other (non-internal) methods of
class AIS_InteractiveContext without trying to obtain an instance of
AIS_LocalContext.

const
Handle_SelectMgr_SelectionManager & 
SelectionManager () const
const
Handle_PrsMgr_PresentationManager3d & 
MainPrsMgr () const
const
Handle_PrsMgr_PresentationManager3d & 
CollectorPrsMgr () const
const
Handle_StdSelect_ViewerSelector3d & 
MainSelector () const
Handle_StdSelect_ViewerSelector3d LocalSelector () const
const
Handle_StdSelect_ViewerSelector3d & 
CollectorSelector () const
Standard_Integer PurgeDisplay (const Standard_Boolean CollectorToo=Standard_False)
 Clears all the structures which don't
belong to objects displayed at neutral point
only effective when no Local Context is opened...
returns the number of removed structures from the viewers.

Standard_Integer HighestIndex () const
void DisplayActiveAreas (const Handle< V3d_View > &aView)
void ClearActiveAreas (const Handle< V3d_View > &aView)
void DisplayActiveSensitive (const Handle< V3d_View > &aView)
void ClearActiveSensitive (const Handle< V3d_View > &aView)
void DisplayActiveSensitive (const Handle< AIS_InteractiveObject > &anObject, const Handle< V3d_View > &aView)
void DisplayActiveAreas (const Handle< AIS_InteractiveObject > &anObject, const Handle< V3d_View > &aView)
Standard_Boolean IsInLocal (const Handle< AIS_InteractiveObject > &anObject, Standard_Integer &TheIndex) const
 returns if possible,
the first local context where the object is seen


Detailed Description

  1. You must keep in mind the fact that when you open
    a Local Context with default options:

Constructor & Destructor Documentation


Member Function Documentation

const Handle_V3d_Viewer& AIS_InteractiveContext::Collector ( ) const
const Handle_PrsMgr_PresentationManager3d& AIS_InteractiveContext::CollectorPrsMgr ( ) const
const Handle_StdSelect_ViewerSelector3d& AIS_InteractiveContext::CollectorSelector ( ) const
Handle_AIS_InteractiveObject AIS_InteractiveContext::Current ( ) const
const Handle_V3d_Viewer& AIS_InteractiveContext::CurrentViewer ( ) const
const Handle_Prs3d_Drawer& AIS_InteractiveContext::DefaultDrawer ( ) const
virtual void AIS_InteractiveContext::Delete ( ) const [virtual]

Reimplemented from MMgt_TShared.

Handle_AIS_InteractiveObject AIS_InteractiveContext::DetectedCurrentObject ( ) const
Handle_AIS_InteractiveObject AIS_InteractiveContext::DetectedInteractive ( ) const
Handle_SelectMgr_EntityOwner AIS_InteractiveContext::DetectedOwner ( ) const
  • vertices: 1
  • edges: 2
  • wires: 3.
  • DS_Displayed displayed in main viewer
  • DS_Erased erased in the Collector
  • DS_FullErased erased everywhere but in the Collector
  • DS_Temporary temporarily displayed
  • DS_None nowhere displayed.
Handle_AIS_InteractiveObject AIS_InteractiveContext::FirstCurrentObject ( )
Handle_Prs3d_LineAspect AIS_InteractiveContext::HiddenLineAspect ( ) const
Handle_AIS_InteractiveObject AIS_InteractiveContext::Interactive ( ) const
Handle_AIS_LocalContext AIS_InteractiveContext::LocalContext ( ) const
Handle_StdSelect_ViewerSelector3d AIS_InteractiveContext::LocalSelector ( ) const
const Handle_PrsMgr_PresentationManager3d& AIS_InteractiveContext::MainPrsMgr ( ) const
const Handle_StdSelect_ViewerSelector3d& AIS_InteractiveContext::MainSelector ( ) const
  • UseDisplayedObjects -allows you to load or not
    load the interactive objects visualized at Neutral
    Point in the local context which you open. If false,
    the local context is empty after being opened. If
    true, the objects at Neutral Point are loaded by their
    default selection mode.
  • AllowShapeDecomposition -AIS_Shape allows or
    prevents decomposition in standard shape location
    mode of objects at Neutral Point which are
    type-"privileged". This Flag is only taken into
    account when UseDisplayedObjects is true.
  • AcceptEraseOfObjects -authorises other local
    contexts to erase the interactive objects present in
    this context. This option is rarely used.
  • BothViewers - Has no use currently defined.
    This method returns the index of the created local
    context. It should be kept and used to close the context.
    Opening a local context allows you to prepare an
    environment for temporary presentations and
    selections which will disappear once the local context is closed.
    You can open several local contexts, but only the last
    one will be active.
Handle_AIS_InteractiveObject AIS_InteractiveContext::SelectedInteractive ( ) const
Handle_SelectMgr_EntityOwner AIS_InteractiveContext::SelectedOwner ( ) const
const Handle_SelectMgr_SelectionManager& AIS_InteractiveContext::SelectionManager ( ) const

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