OCC Main Page | Visualization | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

Visualization
TKV3d
AIS


AIS_ConnectedInteractive Class Reference

Defines an Interactive Object through a connection to
another Interactive Object, which serves as a
reference, and which is located elsewhere in the viewer.
This allows you to use the Connected Interactive
Object without having to recalculate presentation,
selection or graphic structure. These are deduced
from your reference object.
The relation between the connected interactive object
and its source is generally one of geometric transformation.
Warning
An Interactive entity which is view (or projector)
dependent requires recalculation of views in hidden
parts mode depending on the position of the
projector in each view. You should derive the entity's
inheritance from ConnectedInteractive and redefine
its compute method to enable this type of calculation.
.

#include <AIS_ConnectedInteractive.hxx>

Inheritance diagram for AIS_ConnectedInteractive:

Inheritance graph
[legend]

Public Member Functions

Standard_EXPORT AIS_ConnectedInteractive (const PrsMgr_TypeOfPresentation3d aTypeOfPresentation3d=PrsMgr_TOP_AllView)
 Disconnects the previous view and sets highlight
mode to 0. This highlights the wireframe presentation
aTypeOfPresentation3d.
Top_AllView deactivates hidden line removal.
.
virtual Standard_EXPORT AIS_KindOfInteractive Type () const
 Returns KOI_Object
.
virtual Standard_EXPORT Standard_Integer Signature () const
 Returns 1
.
virtual Standard_EXPORT void Connect (const Handle(AIS_InteractiveObject)&anotherIObj)
 Establishes the connection between the Connected
Interactive Object, anotherIobj, and its reference
entity. If a previous connection with an Interactive
Object already exists, it is removed by Disconnect.
The second syntax also initiates the location of the
Connected Interactive Object.
.
virtual Standard_EXPORT void Connect (const Handle(AIS_InteractiveObject)&anotherIobj, const TopLoc_Location &aLocation)
Standard_Boolean HasConnection () const
 Returns true if there is a connection established
between the presentation and its source reference.
.
const Handle_AIS_InteractiveObject & ConnectedTo () const
 Returns the connection with the reference Interactive Object.
.
Standard_EXPORT void Disconnect ()
 Clears the connection with a source reference. The
presentation will no longer be displayed.
Warning Must be done before deleting the presentation.
.
virtual Standard_EXPORT void Compute (const Handle(Prs3d_Projector)&aProjector, const Handle(Geom_Transformation)&aTrsf, const Handle(Prs3d_Presentation)&aPresentation)
 Computes the presentation according to a point of view
given by <aprojector>.
To be Used when the associated degenerated Presentations
have been transformed by <atrsf> which is not a Pure
Translation. The HLR Prs can't be deducted automatically
WARNING :<atrsf> must be applied
to the object to display before computation !!!
.
virtual Standard_EXPORT void Compute (const Handle(Prs3d_Projector)&aProjector, const Handle(Prs3d_Presentation)&aPresentation)
 Calculates the 3D view aPresentation and its
updates. The latter are managed by
aPresentationManager. Each of the views in the
viewer and every modification such as rotation, for
example, entails recalculation.
It must be redefined to implement hidden line removal
for the object. The user never calls this method
himself. This is done via the InteractiveContext object
and is dependent on the point of view from which the
object is displayed.
.
virtual Standard_EXPORT void Compute (const Handle(PrsMgr_PresentationManager2d)&aPresentationManager, const Handle(Graphic2d_GraphicObject)&aPresentation, const Standard_Integer aMode=0)
 this method should fill the presentation according to the
enumerated mode of the application and to the display parameter
of the application.

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 ...
.
virtual Standard_EXPORT void UpdateLocation ()
 Recomputes the location of the selection aSelection.
.
virtual Standard_EXPORT void UpdateLocation (const Handle(SelectMgr_Selection)&aSel)
 For this class, the location effect is treated in the
compute & computeSelection methods. So the
UpdateLocation Methods are redefined to do nothing else
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Protected Attributes

Handle_AIS_InteractiveObject myReference
Handle_AIS_InteractiveObject myOldReference

Private Member Functions

virtual Standard_EXPORT void Compute (const Handle(PrsMgr_PresentationManager3d)&aPresentationManager, const Handle(Prs3d_Presentation)&aPresentation, const Standard_Integer aMode=0)
 Calculates the view aPresentation and its updates.
The latter are managed by aPresentationManager.
The display mode aMode is 0 by default.
this method is redefined virtual;
when the instance is connected to another
InteractiveObject,this method doesn't
compute anything, but just uses the
presentation of this last object, with
a transformation if there's one stored.
.
virtual Standard_EXPORT void ComputeSelection (const Handle(SelectMgr_Selection)&aSelection, const Standard_Integer aMode)
 Recovers and calculates any sensitive primitive,
aSelection, available in Shape mode, specified by
aMode. As a rule, these are sensitive faces.
This method is defined as virtual. This enables you to
implement it in the creation of a new class of
Interactive Object. You need to do this and in so
doing, redefine this method, if you create a class
which enriches the list of signatures and types.
.

Constructor & Destructor Documentation

Standard_EXPORT AIS_ConnectedInteractive::AIS_ConnectedInteractive const PrsMgr_TypeOfPresentation3d  aTypeOfPresentation3d = PrsMgr_TOP_AllView  ) 
 


Member Function Documentation

Standard_Boolean AIS_ConnectedInteractive::AcceptShapeDecomposition  )  const [inline, virtual]
 

Reimplemented from AIS_InteractiveObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Compute const Handle(PrsMgr_PresentationManager3d)&  aPresentationManager,
const Handle(Prs3d_Presentation)&  aPresentation,
const Standard_Integer  aMode = 0
[private, virtual]
 

Reimplemented from PrsMgr_PresentableObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Compute const Handle(PrsMgr_PresentationManager2d)&  aPresentationManager,
const Handle(Graphic2d_GraphicObject)&  aPresentation,
const Standard_Integer  aMode = 0
[virtual]
 

Reimplemented from PrsMgr_PresentableObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Compute const Handle(Prs3d_Projector)&  aProjector,
const Handle(Prs3d_Presentation)&  aPresentation
[virtual]
 

Reimplemented from PrsMgr_PresentableObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Compute const Handle(Prs3d_Projector)&  aProjector,
const Handle(Geom_Transformation)&  aTrsf,
const Handle(Prs3d_Presentation)&  aPresentation
[virtual]
 

Reimplemented from PrsMgr_PresentableObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::ComputeSelection const Handle(SelectMgr_Selection)&  aSelection,
const Standard_Integer  aMode
[private, virtual]
 

Implements SelectMgr_SelectableObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Connect const Handle(AIS_InteractiveObject)&  anotherIobj,
const TopLoc_Location &  aLocation
[virtual]
 

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::Connect const Handle(AIS_InteractiveObject)&  anotherIObj  )  [virtual]
 

Reimplemented in AIS_ConnectedShape.

const Handle_AIS_InteractiveObject& AIS_ConnectedInteractive::ConnectedTo  )  const
 

Standard_EXPORT void AIS_ConnectedInteractive::Disconnect  ) 
 

Standard_EXPORT const AIS_ConnectedInteractive::Handle Standard_Type   )  const
 

Reimplemented from AIS_InteractiveObject.

Reimplemented in AIS_ConnectedShape.

Standard_Boolean AIS_ConnectedInteractive::HasConnection  )  const [inline]
 

virtual Standard_EXPORT Standard_Integer AIS_ConnectedInteractive::Signature  )  const [virtual]
 

Reimplemented from AIS_InteractiveObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT AIS_KindOfInteractive AIS_ConnectedInteractive::Type  )  const [virtual]
 

Reimplemented from AIS_InteractiveObject.

Reimplemented in AIS_ConnectedShape.

virtual Standard_EXPORT void AIS_ConnectedInteractive::UpdateLocation const Handle(SelectMgr_Selection)&  aSel  )  [virtual]
 

Reimplemented from SelectMgr_SelectableObject.

virtual Standard_EXPORT void AIS_ConnectedInteractive::UpdateLocation  )  [virtual]
 

Reimplemented from SelectMgr_SelectableObject.


Field Documentation

Handle_AIS_InteractiveObject AIS_ConnectedInteractive::myOldReference [protected]
 

Handle_AIS_InteractiveObject AIS_ConnectedInteractive::myReference [protected]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:55:07 2008 for OpenCASCADE by  doxygen 1.4.1