# Visualization
TKV3d
AIS

# AIS_InteractiveObject Class Reference

Defines a class of objects with display and selection services.
Entities which are visualized and selected are
Interactive Objects. You can make use of classes of
standard Interactive Objects for which all necessary
methods have already been programmed, or you can
implement your own classes of Interactive Objects.
Specific attributes of entities such as arrow aspect for
dimensions must be loaded in a Drawer. This Drawer
is then applied to the Interactive Object in view.
There are four types of Interactive Object in AIS: the
construction element or Datum, the Relation, which
includes both dimensions and constraints, the Object,
and finally, when the object is of an unknown type, the None type.
Inside these categories, a signature, or index,
provides the possibility of additional characterization.
By default, the Interactive Object has a None type
and a signature of 0. If you want to give a particular
type and signature to your interactive object, you must
redefine the methods, Signature and Type.
Warning
In the case of attribute methods, methods for
standard attributes are virtual. They must be
redefined by the inheriting classes. Setcolor for a
point and Setcolor for a plane, for example, do not
affect the same attributes in the Drawer.
.

`#include <AIS_InteractiveObject.hxx>`

Inheritance diagram for AIS_InteractiveObject:

[legend]

## Public Member Functions

virtual Standard_EXPORT AIS_KindOfInteractive | Type () const
| Returns the kind of Interactive Object: - None - Datum - Relation - Object By default, the interactive object has a None type. Because specific shapes entail different behavior according to their sub-shapes, you may need to create a Local Context. This will allow you to specify the additional characteristics which you need to handle these shapes. .
virtual Standard_EXPORT 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:
- Point signature 1
- Axis signature 2
- Trihedron signature 3
- PlaneTrihedron signature 4
- Line signature 5
- Circle signature 6
- Plane signature 7.
.

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 ...
.

Standard_EXPORT 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.
Standard_EXPORT Aspect_TypeOfFacingModel | CurrentFacingModel () const
| Returns the current facing model which is in effect. .
virtual Standard_EXPORT void | SetColor (const Quantity_Color &aColor)
virtual Standard_EXPORT 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)
virtual Standard_EXPORT 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. .
virtual Standard_EXPORT 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. .
virtual Standard_EXPORT void | UnsetWidth ()
virtual Standard_EXPORT Standard_Boolean | AcceptDisplayMode (const Standard_Integer aMode) const
| Returns true if the class of objects accepts the display mode aMode. The interactive context can have a default mode of representation for the set of Interactive Objects. This mode may not be accepted by a given class of objects. Consequently, this virtual method allowing us to get information about the class in question must be implemented. .
virtual Standard_EXPORT Standard_Integer | DefaultDisplayMode () const
| Returns the default display mode. This method is to be implemented when the main mode is not mode 0. .
Standard_EXPORT void | Redisplay (const Standard_Boolean AllModes=Standard_False)
| Updates the active presentation; if <allmodes> = Standard_True all the presentations inside are recomputed. .
Standard_EXPORT 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... .
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. .
Standard_EXPORT Standard_Boolean | HasInteractiveContext () const
| Indicates whether the Interactive Object has a pointer to an interactive context. .
Standard_EXPORT Handle_AIS_InteractiveContext | GetContext () const
| Returns the context pointer to the interactive context. .
virtual Standard_EXPORT 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. .
Standard_EXPORT 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. .
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: - Direct owners, decomposition shapes such as edges, wires, and faces. - Users, presentable objects connecting to sensitive primitives, or a shape which has been decomposed. .
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. .
Standard_EXPORT 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. .
Standard_EXPORT Standard_Boolean | HasUsers () const
const TColStd_ListOfTransient & | Users () const
Standard_EXPORT void | AddUser (const Handle(Standard_Transient)&aUser)
Standard_EXPORT void | ClearUsers ()
Standard_Boolean | HasDisplayMode () const
| Returns true if the Interactive Object has a display mode setting. Otherwise, it is displayed in Neutral Point. .
Standard_EXPORT 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: - AIS_WireFrame - AIS_Shaded - AIS_QuickHLR - AIS_ExactHLR This range can, however, be extended through the creation of new display modes. .
void | UnsetDisplayMode ()
| Removes display mode settings from the interactive object. .
Standard_Integer | DisplayMode () const
| Returns the display mode setting of the Interactive Object. The range of possibilities is the following: - AIS_WireFrame - AIS_Shaded - AIS_QuickHLR - AIS_ExactHLR This range can, however, be extended through the creation of new display modes. .
Standard_EXPORT 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:
- mode 0 - selection of the shape itself
- mode 1 - selection of vertices
- mode 2 - selection of edges
- mode 3 - selection of wires
- mode 4 - selection of faces
- mode 5 - selection of shells
- mode 6 - selection of solids
- mode 7 - selection of compounds
For trihedra, on the other hand, the selection modes are the following four:
- mode 0 - selection of a trihedron
- mode 1 - selection of its origin
- mode 2 - selection of its axes
- mode 3 - selection of its planes
.

Standard_EXPORT Standard_Integer | SelectionMode () const
| Returns the selection mode of the interactive object. .
Standard_EXPORT 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. .
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. .
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:
- priority 1 - a trihedron
- priority 5 - its origin
- priority 3 - its axes
- priority 2 - its planes
.

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. .
void | UnsetSelectionPriority ()
| Removes the setting for selection priority. SelectionPriority then returns -1. .
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. .
Standard_Boolean | HasHilightMode () const
| Returns true if the Interactive Object is in highlight mode. .
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:
- SetHilightMode
- UnSetHilightMode
In the case of a shape, whether it is visualized in
wireframe presentation or with shading, we want to
systematically highlight the wireframe presentation.
Consequently, we set the highlight mode to 0.
.

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. .
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. .
Standard_Boolean | HasColor () const
| Returns true if the Interactive Object has color. .
virtual Quantity_NameOfColor | Color () const
| Returns the color setting of the Interactive Object. .
virtual void | Color (Quantity_Color &aColor) const
Standard_Boolean | HasWidth () const
| Returns true if the Interactive Object has width. .
Standard_EXPORT Standard_Real | Width () const
| Returns the width setting of the Interactive Object. .
Standard_EXPORT Standard_Boolean | HasMaterial () const
| Returns true if the Interactive Object has a setting for material. .
virtual Standard_EXPORT Graphic3d_NameOfMaterial | Material () const
| Returns the current material setting. This will be on of the following materials: - Brass - Bronze - Gold - Pewter - Silver - Stone. .
virtual Standard_EXPORT 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. .
virtual Standard_EXPORT 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. .
virtual Standard_EXPORT void | UnsetMaterial ()
| Removes the setting for material. .
virtual Standard_EXPORT 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. .
Standard_Boolean | IsTransparent () const
| Returns true if there is a transparency setting. .
virtual Standard_EXPORT 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. .
virtual Standard_EXPORT void | UnsetTransparency ()
| Removes the transparency setting. The object is opaque by default. .
virtual Standard_EXPORT void | SetAttributes (const Handle(AIS_Drawer)&aDrawer)
| Initializes the drawing tool aDrawer. .
const Handle_AIS_Drawer & | Attributes () const
| Returns the attributes settings. .
virtual Standard_EXPORT void | UnsetAttributes ()
| Clears settings provided by the drawing tool aDrawer. .
void | State (const Standard_Integer theState)
Standard_Integer | State () const
virtual Standard_EXPORT void | SetDegenerateModel (const Aspect_TypeOfDegenerateModel aModel=Aspect_TDM_WIREFRAME, const Quantity_Ratio aRatio=0.0)

Sets the model of degeneration for the shaded representation
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(..)
Category: Methods to manage the object degeneration
.

virtual Standard_EXPORT Aspect_TypeOfDegenerateModel | DegenerateModel (Quantity_Ratio &aRatio) const
| returns the current degeneration model and ratio for the polygons
Standard_EXPORT void | SetTransformation (const Handle(Geom_Transformation)&aTranformation, const Standard_Boolean postConcatenate=Standard_False, const Standard_Boolean updateSelection=Standard_True)
| Transforms all presentations of the object and replace the actual transformation matrix if <postconcatenate> is FALSE. Note that the selection must be updated only at the end of object animation when <updateselection> is TRUE .
Standard_EXPORT void | UnsetTransformation ()
| Deactivate the current transformation .
Standard_EXPORT Handle_Geom_Transformation | Transformation ()
| Returns the current transformation associated to the first available presentation of this object. .
Standard_EXPORT Standard_Boolean | HasTransformation () const
| Returns TRUE when this object is transformed .
Standard_EXPORT Standard_Boolean | HasPresentation () const
| Returns TRUE when this object has a presentation in the current DisplayMode() .
Standard_EXPORT Handle_Prs3d_Presentation | Presentation () const
| Returns the current presentation of this object according to the current DisplayMode() .
Standard_EXPORT 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. .
virtual Standard_EXPORT void | SetPolygonOffsets (const Standard_Integer aMode, const Standard_Real aFactor=1.0, const Standard_Real 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. .
virtual Standard_EXPORT Standard_Boolean | HasPolygonOffsets () const
| Returns Standard_True if <mydrawer> has non-null shading aspect .
virtual Standard_EXPORT void | PolygonOffsets (Standard_Integer &aMode, Standard_Real &aFactor, Standard_Real &aUnits) const
| Retrieves current polygon offsets settings from <mydrawer>. .
Standard_EXPORT const | Handle (Standard_Type)&DynamicType() const

## Protected Member Functions

Standard_EXPORT | 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 .
virtual Standard_EXPORT void | Fill (const Handle(PrsMgr_PresentationManager)&aPresentationManager, const Handle(PrsMgr_Presentation)&aPresentation, const Standard_Integer aMode=0)
| High-level interface for controlling polygon offsets .

## Protected Attributes

Handle_AIS_Drawer | myDrawer
Standard_Real | myTransparency
Quantity_Color | myOwnColor
Graphic3d_NameOfMaterial | myOwnMaterial
Standard_Integer | myHilightMode
Standard_Real | myOwnWidth
Standard_Boolean | myInfiniteState
Standard_Boolean | hasOwnColor
Standard_Boolean | hasOwnMaterial
Aspect_TypeOfFacingModel | myCurrentFacingModel
Standard_Boolean | myRecomputeEveryPrs
TColStd_ListOfInteger | myToRecomputeModes

## Private Member Functions

virtual Standard_EXPORT Standard_Boolean | RecomputeEveryPrs () const
Standard_EXPORT void | MustRecomputePrs (const Standard_Integer aMode) const
Standard_EXPORT const TColStd_ListOfInteger & | ListOfRecomputeModes () const
Standard_EXPORT void | SetRecomputeOk ()

## Private Attributes

AIS_PToContext | myCTXPtr
Handle_Standard_Transient | myOwner
TColStd_ListOfTransient | myUsers
Standard_Integer | mySelPriority
Standard_Integer | myDisplayMode
Standard_Integer | mySelectionMode
Standard_Integer | mystate
Standard_Boolean | myHasTransformation

## Constructor & Destructor Documentation

Standard_EXPORT AIS_InteractiveObject::AIS_InteractiveObject | ( | const PrsMgr_TypeOfPresentation3d | aTypeOfPresentation3d = `PrsMgr_TOP_AllView` | ) | `[protected]`

## Member Function Documentation

virtual Standard_EXPORT Standard_Boolean AIS_InteractiveObject::AcceptDisplayMode | ( | const Standard_Integer | aMode | ) | const`[virtual]`

| Reimplemented in AIS_Axis, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_Relation, and AIS_Trihedron.

Standard_Boolean AIS_InteractiveObject::AcceptShapeDecomposition | ( |  | ) | const`[inline, virtual]`

| Reimplemented in AIS_ConnectedInteractive, AIS_ConnectedShape, AIS_MultipleConnectedShape, and AIS_Shape.

Standard_EXPORT void AIS_InteractiveObject::AddUser | ( | const Handle(Standard_Transient)& | aUser | ) |

const Handle_AIS_Drawer& AIS_InteractiveObject::Attributes | ( |  | ) | const

Standard_EXPORT void AIS_InteractiveObject::ClearOwner | ( |  | ) |

Standard_EXPORT void AIS_InteractiveObject::ClearUsers | ( |  | ) |

void AIS_InteractiveObject::Color | ( | Quantity_Color & | aColor | ) | const`[inline, virtual]`

| Reimplemented in AIS_Shape.

Quantity_NameOfColor AIS_InteractiveObject::Color | ( |  | ) | const`[inline, virtual]`

| Reimplemented in AIS_Shape.

Standard_EXPORT Aspect_TypeOfFacingModel AIS_InteractiveObject::CurrentFacingModel | ( |  | ) | const

virtual Standard_EXPORT Standard_Integer AIS_InteractiveObject::DefaultDisplayMode | ( |  | ) | const`[virtual]`

virtual Standard_EXPORT Aspect_TypeOfDegenerateModel AIS_InteractiveObject::DegenerateModel | ( | Quantity_Ratio & | aRatio | ) | const`[virtual]`

Standard_Integer AIS_InteractiveObject::DisplayMode | ( |  | ) | const`[inline]`

virtual Standard_EXPORT void AIS_InteractiveObject::Fill | ( | const Handle(PrsMgr_PresentationManager)& | aPresentationManager,
|  | const Handle(PrsMgr_Presentation)& | aPresentation,
|  | const Standard_Integer | aMode = `0`
| ) | `[protected, virtual]`

| Reimplemented from PrsMgr_PresentableObject.

Standard_EXPORT Handle_AIS_InteractiveContext AIS_InteractiveObject::GetContext | ( |  | ) | const

const Handle_Standard_Transient& AIS_InteractiveObject::GetOwner | ( |  | ) | const

Standard_EXPORT const AIS_InteractiveObject::Handle | ( | Standard_Type |  | ) | const

Reimplemented from SelectMgr_SelectableObject.

Reimplemented in AIS_AngleDimension, AIS_Axis, AIS_Chamf2dDimension, AIS_Chamf3dDimension, AIS_Circle, AIS_ConcentricRelation, AIS_ConnectedInteractive, AIS_ConnectedShape, AIS_DiameterDimension, AIS_EllipseRadiusDimension, AIS_EqualDistanceRelation, AIS_EqualRadiusRelation, AIS_FixRelation, AIS_IdenticRelation, AIS_LengthDimension, AIS_Line, AIS_MaxRadiusDimension, AIS_MidPointRelation, AIS_MinRadiusDimension, AIS_MultipleConnectedInteractive, AIS_MultipleConnectedShape, AIS_OffsetDimension, AIS_ParallelRelation, AIS_PerpendicularRelation, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_RadiusDimension, AIS_Relation, AIS_Shape, AIS_SymmetricRelation, AIS_TangentRelation, AIS_TexturedShape, AIS_Trihedron, MeshVS_Mesh, and Voxel_Prs.

Standard_Boolean AIS_InteractiveObject::HasColor | ( |  | ) | const`[inline]`

Standard_Boolean AIS_InteractiveObject::HasDisplayMode | ( |  | ) | const`[inline]`

Standard_Boolean AIS_InteractiveObject::HasHilightMode | ( |  | ) | const`[inline]`

Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasInteractiveContext | ( |  | ) | const

Standard_Boolean AIS_InteractiveObject::HasMaterial | ( |  | ) | const`[inline]`

Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasOwner | ( |  | ) | const

virtual Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasPolygonOffsets | ( |  | ) | const`[virtual]`

Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasPresentation | ( |  | ) | const

Standard_Boolean AIS_InteractiveObject::HasSelectionMode | ( |  | ) | const`[inline]`

Standard_Boolean AIS_InteractiveObject::HasSelectionPriority | ( |  | ) | const`[inline]`

Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasTransformation | ( |  | ) | const

Standard_EXPORT Standard_Boolean AIS_InteractiveObject::HasUsers | ( |  | ) | const

Standard_Boolean AIS_InteractiveObject::HasWidth | ( |  | ) | const`[inline]`

Standard_Integer AIS_InteractiveObject::HilightMode | ( |  | ) | const`[inline]`

Standard_Boolean AIS_InteractiveObject::IsInfinite | ( |  | ) | const`[inline]`

Standard_Boolean AIS_InteractiveObject::IsTransparent | ( |  | ) | const`[inline]`

Standard_EXPORT const TColStd_ListOfInteger& AIS_InteractiveObject::ListOfRecomputeModes | ( |  | ) | const`[private]`

Graphic3d_NameOfMaterial AIS_InteractiveObject::Material | ( |  | ) | const`[inline, virtual]`

| Reimplemented in AIS_Shape.

Standard_EXPORT void AIS_InteractiveObject::MustRecomputePrs | ( | const Standard_Integer | aMode | ) | const`[private]`

virtual Standard_EXPORT void AIS_InteractiveObject::PolygonOffsets | ( | Standard_Integer & | aMode,
|  | Standard_Real & | aFactor,
|  | Standard_Real & | aUnits
| ) | const`[virtual]`

Standard_EXPORT Handle_Prs3d_Presentation AIS_InteractiveObject::Presentation | ( |  | ) | const

virtual Standard_EXPORT Standard_Boolean AIS_InteractiveObject::RecomputeEveryPrs | ( |  | ) | const`[private, virtual]`

Standard_EXPORT void AIS_InteractiveObject::Redisplay | ( | const Standard_Boolean | AllModes = `Standard_False` | ) |

Standard_Integer AIS_InteractiveObject::SelectionMode | ( |  | ) | const`[inline]`

Standard_Integer AIS_InteractiveObject::SelectionPriority | ( |  | ) | const`[inline]`

Standard_EXPORT void AIS_InteractiveObject::SetAspect | ( | const Handle(Prs3d_BasicAspect)& | anAspect,
|  | const Standard_Boolean | globalChange = `Standard_True`
| ) |

virtual Standard_EXPORT void AIS_InteractiveObject::SetAttributes | ( | const Handle(AIS_Drawer)& | aDrawer | ) | `[virtual]`

virtual Standard_EXPORT void AIS_InteractiveObject::SetColor | ( | const Quantity_NameOfColor | aColor | ) | `[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_Relation, AIS_Shape, and AIS_Trihedron.

virtual Standard_EXPORT void AIS_InteractiveObject::SetColor | ( | const Quantity_Color & | aColor | ) | `[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_Relation, AIS_Shape, AIS_Trihedron, and Voxel_Prs.

virtual Standard_EXPORT void AIS_InteractiveObject::SetContext | ( | const Handle(AIS_InteractiveContext)& | aCtx | ) | `[virtual]`

| Reimplemented in AIS_Plane, and AIS_Trihedron.

Standard_EXPORT void AIS_InteractiveObject::SetCurrentFacingModel | ( | const Aspect_TypeOfFacingModel | aModel = `Aspect_TOFM_BOTH_SIDE` | ) |

virtual Standard_EXPORT void AIS_InteractiveObject::SetDegenerateModel | ( | const Aspect_TypeOfDegenerateModel | aModel = `Aspect_TDM_WIREFRAME`,
|  | const Quantity_Ratio | aRatio = `0.0`
| ) | `[virtual]`

Standard_EXPORT void AIS_InteractiveObject::SetDisplayMode | ( | const Standard_Integer | aMode | ) |

void AIS_InteractiveObject::SetHilightMode | ( | const Standard_Integer | anIndex | ) | `[inline]`

Standard_EXPORT void AIS_InteractiveObject::SetInfiniteState | ( | const Standard_Boolean | aFlag = `Standard_True` | ) |

virtual Standard_EXPORT void AIS_InteractiveObject::SetMaterial | ( | const Graphic3d_MaterialAspect & | aName | ) | `[virtual]`

| Reimplemented in AIS_Shape.

virtual Standard_EXPORT void AIS_InteractiveObject::SetMaterial | ( | const Graphic3d_NameOfMaterial | aName | ) | `[virtual]`

| Reimplemented in AIS_Shape.

void AIS_InteractiveObject::SetOwner | ( | const Handle(Standard_Transient)& | ApplicativeEntity | ) | `[inline]`

virtual Standard_EXPORT void AIS_InteractiveObject::SetPolygonOffsets | ( | const Standard_Integer | aMode,
|  | const Standard_Real | aFactor = `1.0`,
|  | const Standard_Real | aUnits = `0.0`
| ) | `[virtual]`

Standard_EXPORT void AIS_InteractiveObject::SetRecomputeOk | ( |  | ) | `[private]`

Standard_EXPORT void AIS_InteractiveObject::SetSelectionMode | ( | const Standard_Integer | aMode | ) |

void AIS_InteractiveObject::SetSelectionPriority | ( | const Standard_Integer | aPriority | ) | `[inline]`

Standard_EXPORT void AIS_InteractiveObject::SetTransformation | ( | const Handle(Geom_Transformation)& | aTranformation,
|  | const Standard_Boolean | postConcatenate = `Standard_False`,
|  | const Standard_Boolean | updateSelection = `Standard_True`
| ) |

virtual Standard_EXPORT void AIS_InteractiveObject::SetTransparency | ( | const Standard_Real | aValue = `0.6` | ) | `[virtual]`

| Reimplemented in AIS_Shape, and Voxel_Prs.

virtual Standard_EXPORT void AIS_InteractiveObject::SetWidth | ( | const Standard_Real | aValue | ) | `[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, and AIS_Shape.

virtual Standard_EXPORT Standard_Integer AIS_InteractiveObject::Signature | ( |  | ) | const`[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_ConnectedInteractive, AIS_ConnectedShape, AIS_Line, AIS_MultipleConnectedInteractive, AIS_MultipleConnectedShape, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_Shape, and AIS_Trihedron.

Standard_Integer AIS_InteractiveObject::State | ( |  | ) | const`[inline]`

void AIS_InteractiveObject::State | ( | const Standard_Integer | theState | ) | `[inline]`

Standard_EXPORT Handle_Geom_Transformation AIS_InteractiveObject::Transformation | ( |  | ) |

virtual Standard_EXPORT Standard_Real AIS_InteractiveObject::Transparency | ( |  | ) | const`[virtual]`

| Reimplemented in AIS_Shape.

virtual Standard_EXPORT AIS_KindOfInteractive AIS_InteractiveObject::Type | ( |  | ) | const`[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_ConnectedInteractive, AIS_ConnectedShape, AIS_Line, AIS_MultipleConnectedInteractive, AIS_MultipleConnectedShape, AIS_Plane, AIS_PlaneTrihedron, AIS_Point, AIS_Relation, AIS_Shape, and AIS_Trihedron.

virtual Standard_EXPORT void AIS_InteractiveObject::UnsetAttributes | ( |  | ) | `[virtual]`

virtual Standard_EXPORT void AIS_InteractiveObject::UnsetColor | ( |  | ) | `[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Plane, AIS_Point, AIS_Relation, AIS_Shape, and AIS_Trihedron.

void AIS_InteractiveObject::UnsetDisplayMode | ( |  | ) | `[inline]`

void AIS_InteractiveObject::UnsetHilightMode | ( |  | ) | `[inline]`

virtual Standard_EXPORT void AIS_InteractiveObject::UnsetMaterial | ( |  | ) | `[virtual]`

| Reimplemented in AIS_Shape.

void AIS_InteractiveObject::UnsetSelectionMode | ( |  | ) | `[inline]`

void AIS_InteractiveObject::UnsetSelectionPriority | ( |  | ) | `[inline]`

Standard_EXPORT void AIS_InteractiveObject::UnsetTransformation | ( |  | ) |

virtual Standard_EXPORT void AIS_InteractiveObject::UnsetTransparency | ( |  | ) | `[virtual]`

| Reimplemented in AIS_Shape.

virtual Standard_EXPORT void AIS_InteractiveObject::UnsetWidth | ( |  | ) | `[virtual]`

| Reimplemented in AIS_Axis, AIS_Circle, AIS_Line, AIS_Shape, and AIS_Trihedron.

const TColStd_ListOfTransient & AIS_InteractiveObject::Users | ( |  | ) | const`[inline]`

Standard_Real AIS_InteractiveObject::Width | ( |  | ) | const`[inline]`

## Field Documentation

Standard_Boolean AIS_InteractiveObject::hasOwnColor `[protected]`

Standard_Boolean AIS_InteractiveObject::hasOwnMaterial `[protected]`

AIS_PToContext AIS_InteractiveObject::myCTXPtr `[private]`

Aspect_TypeOfFacingModel AIS_InteractiveObject::myCurrentFacingModel `[protected]`

Standard_Integer AIS_InteractiveObject::myDisplayMode `[private]`

Handle_AIS_Drawer AIS_InteractiveObject::myDrawer `[protected]`

Standard_Boolean AIS_InteractiveObject::myHasTransformation `[private]`

Standard_Integer AIS_InteractiveObject::myHilightMode `[protected]`

Standard_Boolean AIS_InteractiveObject::myInfiniteState `[protected]`

Quantity_Color AIS_InteractiveObject::myOwnColor `[protected]`

Handle_Standard_Transient AIS_InteractiveObject::myOwner `[private]`

Graphic3d_NameOfMaterial AIS_InteractiveObject::myOwnMaterial `[protected]`

Standard_Real AIS_InteractiveObject::myOwnWidth `[protected]`

Standard_Boolean AIS_InteractiveObject::myRecomputeEveryPrs `[protected]`

Standard_Integer AIS_InteractiveObject::mySelectionMode `[private]`

Standard_Integer AIS_InteractiveObject::mySelPriority `[private]`

Standard_Integer AIS_InteractiveObject::mystate `[private]`

TColStd_ListOfInteger AIS_InteractiveObject::myToRecomputeModes `[protected]`

Standard_Real AIS_InteractiveObject::myTransparency `[protected]`

TColStd_ListOfTransient AIS_InteractiveObject::myUsers `[private]`

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

- AIS_InteractiveObject.hxx
- AIS_InteractiveObject.lxx