Open CASCADE Technology 6.6.0
Public Member Functions | Protected Attributes
MeshVS_Mesh Class Reference

the main class provides interface to create mesh presentation as a whole

#include <MeshVS_Mesh.hxx>

Inheritance diagram for MeshVS_Mesh:
Inheritance graph
[legend]

Public Member Functions

 MeshVS_Mesh (const Standard_Boolean theIsAllowOverlapped=Standard_False)
 Constructor.
theIsAllowOverlapped is Standard_True, if it is allowed to draw edges overlapped with beams
Its value is stored in drawer

virtual void Destroy ()
 ~MeshVS_Mesh ()
virtual void Compute (const Handle< PrsMgr_PresentationManager3d > &PM, const Handle< Prs3d_Presentation > &Prs, const Standard_Integer DisplayMode)
 Computes presentation using builders added to sequence. Each builder computes
own part of mesh presentation according to its type.

virtual void ComputeSelection (const Handle< SelectMgr_Selection > &Sel, const Standard_Integer SelectMode)
 Computes selection according to SelectMode

virtual void HilightSelected (const Handle< PrsMgr_PresentationManager3d > &PM, const SelectMgr_SequenceOfOwner &Owners)
 Draw selected owners presentation

virtual void HilightOwnerWithColor (const Handle< PrsMgr_PresentationManager3d > &PM, const Quantity_NameOfColor Color, const Handle< SelectMgr_EntityOwner > &Owner)
 Draw hilighted owner presentation

virtual void ClearSelected ()
 Clears internal selection presentation

Standard_Integer GetBuildersCount () const
 How many builders there are in sequence

Handle_MeshVS_PrsBuilder GetBuilder (const Standard_Integer Index) const
 Returns builder by its index in sequence

Handle_MeshVS_PrsBuilder GetBuilderById (const Standard_Integer Id) const
 Returns builder by its ID

Standard_Integer GetFreeId () const
 Returns the smallest positive ID, not occupied by any builder.
This method using when builder is created with ID = -1

void AddBuilder (const Handle< MeshVS_PrsBuilder > &Builder, const Standard_Boolean TreatAsHilighter=Standard_False)
 Adds builder to tale of sequence.
PrsBuilder is builder to be added
If TreatAsHilighter is true, MeshVS_Mesh will use this builder to create
presentation of hilighted and selected owners.
Only one builder can be hilighter, so that if you call this method with
TreatAsHilighter = Standard_True some times, only last builder will be hilighter
WARNING: As minimum one builder must be added as hilighter, otherwise selection cannot be computed

void SetHilighter (const Handle< MeshVS_PrsBuilder > &Builder)
 Changes hilighter ( see above )

Standard_Boolean SetHilighter (const Standard_Integer Index)
 Sets builder with sequence index "Index" as hilighter

Standard_Boolean SetHilighterById (const Standard_Integer Id)
 Sets builder with identificator "Id" as hilighter

Handle_MeshVS_PrsBuilder GetHilighter () const
 Returns hilighter

void RemoveBuilder (const Standard_Integer Index)
 Removes builder from sequence. If it is hilighter, hilighter will be NULL
( Don't remember to set it to other after!!! )

void RemoveBuilderById (const Standard_Integer Id)
 Removes builder with identificator Id

Handle_MeshVS_PrsBuilder FindBuilder (const Standard_CString TypeString) const
 Finds builder by its type the string represents

const
MeshVS_DataMapOfIntegerOwner
GetOwnerMaps (const Standard_Boolean IsElement)
 Returns map of owners.

Handle_MeshVS_DataSource GetDataSource () const
 Returns default builders' data source

void SetDataSource (const Handle< MeshVS_DataSource > &aDataSource)
 Sets default builders' data source

Handle_MeshVS_Drawer GetDrawer () const
 Returns default builders' drawer

void SetDrawer (const Handle< MeshVS_Drawer > &aDrawer)
 Sets default builders' drawer

Standard_Boolean IsHiddenElem (const Standard_Integer ID) const
 Returns True if specified element is hidden
By default no elements are hidden

Standard_Boolean IsHiddenNode (const Standard_Integer ID) const
 Returns True if specified node is hidden.
By default all nodes are hidden

Standard_Boolean IsSelectableElem (const Standard_Integer ID) const
 Returns True if specified element is not hidden

Standard_Boolean IsSelectableNode (const Standard_Integer ID) const
 Returns True if specified node is specified as selectable.

const
Handle_TColStd_HPackedMapOfInteger & 
GetHiddenNodes () const
 Returns map of hidden nodes (may be null handle)

void SetHiddenNodes (const Handle< TColStd_HPackedMapOfInteger > &Ids)
 Sets map of hidden nodes, which shall not be displayed individually.
If nodes shared by some elements shall not be drawn,
they should be included into that map

const
Handle_TColStd_HPackedMapOfInteger & 
GetHiddenElems () const
 Returns map of hidden elements (may be null handle)

void SetHiddenElems (const Handle< TColStd_HPackedMapOfInteger > &Ids)
 Sets map of hidden elements

const
Handle_TColStd_HPackedMapOfInteger & 
GetSelectableNodes () const
 Returns map of selectable elements (may be null handle)

void SetSelectableNodes (const Handle< TColStd_HPackedMapOfInteger > &Ids)
 Sets map of selectable nodes.

void UpdateSelectableNodes ()
 Automatically computes selectable nodes; the node is considered
as being selectable if it is either not hidden, or is hidden
but referred by at least one non-hidden element.
Thus all nodes that are visible (either individually, or as ends or
corners of elements) are selectable by default.

MeshVS_MeshSelectionMethod GetMeshSelMethod () const
 Returns set mesh selection method (see MeshVS.cdl)

void SetMeshSelMethod (const MeshVS_MeshSelectionMethod M)
 Sets mesh selection method (see MeshVS.cdl)

virtual Standard_Boolean IsWholeMeshOwner (const Handle< SelectMgr_EntityOwner > &theOwner) const
 Returns True if the given owner represents a whole mesh.

Protected Attributes

MeshVS_DataMapOfIntegerOwner myNodeOwners
MeshVS_DataMapOfIntegerOwner myElementOwners
MeshVS_DataMapOfIntegerOwner my0DOwners
MeshVS_DataMapOfIntegerOwner myLinkOwners
MeshVS_DataMapOfIntegerOwner myFaceOwners
MeshVS_DataMapOfIntegerOwner myVolumeOwners
MeshVS_DataMapOfIntegerOwner myGroupOwners
MeshVS_DataMapOfIntegerOwner myMeshOwners
Handle_MeshVS_Drawer myCurrentDrawer
Handle_MeshVS_Drawer mySelectionDrawer
Handle_MeshVS_Drawer myHilightDrawer
Handle_SelectMgr_EntityOwner myWholeMeshOwner

Constructor & Destructor Documentation

MeshVS_Mesh::MeshVS_Mesh ( const Standard_Boolean  theIsAllowOverlapped = Standard_False)
MeshVS_Mesh::~MeshVS_Mesh ( ) [inline]

Member Function Documentation

void MeshVS_Mesh::AddBuilder ( const Handle< MeshVS_PrsBuilder > &  Builder,
const Standard_Boolean  TreatAsHilighter = Standard_False 
)
virtual void MeshVS_Mesh::ClearSelected ( ) [virtual]

Reimplemented from SelectMgr_SelectableObject.

virtual void MeshVS_Mesh::Compute ( const Handle< PrsMgr_PresentationManager3d > &  PM,
const Handle< Prs3d_Presentation > &  Prs,
const Standard_Integer  DisplayMode 
) [virtual]

Reimplemented from PrsMgr_PresentableObject.

virtual void MeshVS_Mesh::ComputeSelection ( const Handle< SelectMgr_Selection > &  Sel,
const Standard_Integer  SelectMode 
) [virtual]
virtual void MeshVS_Mesh::Destroy ( ) [virtual]
Handle_MeshVS_PrsBuilder MeshVS_Mesh::FindBuilder ( const Standard_CString  TypeString) const
Handle_MeshVS_PrsBuilder MeshVS_Mesh::GetBuilder ( const Standard_Integer  Index) const
Handle_MeshVS_PrsBuilder MeshVS_Mesh::GetBuilderById ( const Standard_Integer  Id) const
Standard_Integer MeshVS_Mesh::GetBuildersCount ( ) const
Handle_MeshVS_DataSource MeshVS_Mesh::GetDataSource ( ) const
Handle_MeshVS_Drawer MeshVS_Mesh::GetDrawer ( ) const
Standard_Integer MeshVS_Mesh::GetFreeId ( ) const
const Handle_TColStd_HPackedMapOfInteger& MeshVS_Mesh::GetHiddenElems ( ) const
const Handle_TColStd_HPackedMapOfInteger& MeshVS_Mesh::GetHiddenNodes ( ) const
Handle_MeshVS_PrsBuilder MeshVS_Mesh::GetHilighter ( ) const
MeshVS_MeshSelectionMethod MeshVS_Mesh::GetMeshSelMethod ( ) const
const MeshVS_DataMapOfIntegerOwner& MeshVS_Mesh::GetOwnerMaps ( const Standard_Boolean  IsElement)
const Handle_TColStd_HPackedMapOfInteger& MeshVS_Mesh::GetSelectableNodes ( ) const
virtual void MeshVS_Mesh::HilightOwnerWithColor ( const Handle< PrsMgr_PresentationManager3d > &  PM,
const Quantity_NameOfColor  Color,
const Handle< SelectMgr_EntityOwner > &  Owner 
) [virtual]

Reimplemented from SelectMgr_SelectableObject.

virtual void MeshVS_Mesh::HilightSelected ( const Handle< PrsMgr_PresentationManager3d > &  PM,
const SelectMgr_SequenceOfOwner Owners 
) [virtual]

Reimplemented from SelectMgr_SelectableObject.

Standard_Boolean MeshVS_Mesh::IsHiddenElem ( const Standard_Integer  ID) const
Standard_Boolean MeshVS_Mesh::IsHiddenNode ( const Standard_Integer  ID) const
Standard_Boolean MeshVS_Mesh::IsSelectableElem ( const Standard_Integer  ID) const
Standard_Boolean MeshVS_Mesh::IsSelectableNode ( const Standard_Integer  ID) const
virtual Standard_Boolean MeshVS_Mesh::IsWholeMeshOwner ( const Handle< SelectMgr_EntityOwner > &  theOwner) const [virtual]
void MeshVS_Mesh::RemoveBuilder ( const Standard_Integer  Index)
void MeshVS_Mesh::RemoveBuilderById ( const Standard_Integer  Id)
void MeshVS_Mesh::SetDataSource ( const Handle< MeshVS_DataSource > &  aDataSource)
void MeshVS_Mesh::SetDrawer ( const Handle< MeshVS_Drawer > &  aDrawer)
void MeshVS_Mesh::SetHiddenElems ( const Handle< TColStd_HPackedMapOfInteger > &  Ids)
void MeshVS_Mesh::SetHiddenNodes ( const Handle< TColStd_HPackedMapOfInteger > &  Ids)
Standard_Boolean MeshVS_Mesh::SetHilighter ( const Standard_Integer  Index)
void MeshVS_Mesh::SetHilighter ( const Handle< MeshVS_PrsBuilder > &  Builder)
Standard_Boolean MeshVS_Mesh::SetHilighterById ( const Standard_Integer  Id)
void MeshVS_Mesh::SetMeshSelMethod ( const MeshVS_MeshSelectionMethod  M)
void MeshVS_Mesh::SetSelectableNodes ( const Handle< TColStd_HPackedMapOfInteger > &  Ids)
void MeshVS_Mesh::UpdateSelectableNodes ( )

Field Documentation

Handle_MeshVS_Drawer MeshVS_Mesh::myCurrentDrawer [protected]
Handle_MeshVS_Drawer MeshVS_Mesh::myHilightDrawer [protected]
Handle_MeshVS_Drawer MeshVS_Mesh::mySelectionDrawer [protected]
Handle_SelectMgr_EntityOwner MeshVS_Mesh::myWholeMeshOwner [protected]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines