Open CASCADE Technology  6.9.0

BRepMesh_IncrementalMesh Class Reference

Builds the mesh of a shape with respect of their correctly triangulated parts. More...

#include <BRepMesh_IncrementalMesh.hxx>

Inheritance diagram for BRepMesh_IncrementalMesh:
Inheritance graph
[legend]

Public Member Functions

mesher API
 BRepMesh_IncrementalMesh ()
 Default constructor. More...
 
virtual ~BRepMesh_IncrementalMesh ()
 Destructor. More...
 
 BRepMesh_IncrementalMesh (const TopoDS_Shape &theShape, const Standard_Real theLinDeflection, const Standard_Boolean isRelative=Standard_False, const Standard_Real theAngDeflection=0.5, const Standard_Boolean isInParallel=Standard_False)
 Constructor. Automatically calls method Perform. More...
 
virtual void Perform ()
 Performs meshing ot the shape. More...
 
accessing to parameters.
void SetRelative (const Standard_Boolean isRelative)
 Enables using relative deflection. More...
 
Standard_Boolean IsRelative () const
 Returns relative deflection flag. More...
 
Standard_Boolean IsModified () const
 Returns modified flag. More...
 
Standard_Integer GetStatusFlags () const
 Returns accumulated status flags faced during meshing. More...
 
void SetParallel (const Standard_Boolean isInParallel)
 Request algorithm to launch in multiple threads to improve performance. More...
 
Standard_Boolean IsParallel () const
 Returns the multi-threading usage flag. More...
 
void SetMinSize (const Standard_Real theMinSize)
 Sets min size parameter. More...
 
Standard_Real GetMinSize () const
 Returns min size parameter. More...
 
void SetInternalVerticesMode (const Standard_Boolean isEnabled)
 Enables/disables internal vertices mode (enabled by default). More...
 
Standard_Boolean IsInternalVerticesMode () const
 Returns flag indicating is internal vertices mode enabled/disabled. More...
 
void SetControlSurfaceDeflection (const Standard_Boolean isEnabled)
 Enables/disables control of deflection of mesh from real surface (enabled by default). More...
 
Standard_Boolean IsControlSurfaceDeflection () const
 Returns flag indicating is adaptive reconfiguration of mesh enabled/disabled. More...
 
- Public Member Functions inherited from BRepMesh_DiscretRoot
virtual ~BRepMesh_DiscretRoot ()
 Destructor. More...
 
void SetDeflection (const Standard_Real theDeflection)
 Setup linear deflection. More...
 
Standard_Real Deflection () const
 Returns linear deflection. More...
 
void SetAngle (const Standard_Real theAngle)
 Setup angular deflection. More...
 
Standard_Real Angle () const
 Returns angular deflection. More...
 
void SetShape (const TopoDS_Shape &theShape)
 Set the shape to triangulate. More...
 
const TopoDS_ShapeShape () const
 
Standard_Boolean IsDone () const
 Returns true if triangualtion was performed and has success. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
virtual const
Handle_Standard_Type & 
DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const Handle_Standard_Type &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const Handle_Standard_Type &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

plugin API

Standard_Boolean myRelative
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Boolean myInParallel
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
BRepMesh::DMapOfEdgeListOfTriangulationBool myEdges
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Handle< BRepMesh_FastDiscretmyMesh
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Boolean myModified
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
TopTools_DataMapOfShapeReal myEdgeDeflection
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Real myMaxShapeSize
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Integer myStatus
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
NCollection_Vector< TopoDS_FacemyFaces
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Real myMinSize
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Boolean myInternalVerticesMode
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
Standard_Boolean myIsControlSurfaceDeflection
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
static Standard_Integer Discret (const TopoDS_Shape &theShape, const Standard_Real theLinDeflection, const Standard_Real theAngDeflection, BRepMesh_DiscretRoot *&theAlgo)
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 
static Standard_Boolean IsParallelDefault ()
 Returns multi-threading usage flag set by default in Discret() static method (thus applied only to Mesh Factories). More...
 
static void SetParallelDefault (const Standard_Boolean isInParallel)
 Setup multi-threading usage flag set by default in Discret() static method (thus applied only to Mesh Factories). More...
 
virtual void init ()
 Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters. More...
 

Additional Inherited Members

- Protected Member Functions inherited from BRepMesh_DiscretRoot
 BRepMesh_DiscretRoot ()
 Constructor. More...
 
void setDone ()
 Sets IsDone flag. More...
 
void setNotDone ()
 Clears IsDone flag. More...
 
- Protected Attributes inherited from BRepMesh_DiscretRoot
Standard_Real myDeflection
 
Standard_Real myAngle
 
TopoDS_Shape myShape
 
Standard_Boolean myIsDone
 

Detailed Description

Builds the mesh of a shape with respect of their correctly triangulated parts.

Constructor & Destructor Documentation

BRepMesh_IncrementalMesh::BRepMesh_IncrementalMesh ( )

Default constructor.

virtual BRepMesh_IncrementalMesh::~BRepMesh_IncrementalMesh ( )
virtual

Destructor.

BRepMesh_IncrementalMesh::BRepMesh_IncrementalMesh ( const TopoDS_Shape theShape,
const Standard_Real  theLinDeflection,
const Standard_Boolean  isRelative = Standard_False,
const Standard_Real  theAngDeflection = 0.5,
const Standard_Boolean  isInParallel = Standard_False 
)

Constructor. Automatically calls method Perform.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
isRelativeif TRUE deflection used for discretization of each edge will be <theLinDeflection> * <size of="" edge>="">. Deflection used for the faces will be the maximum deflection of their edges.
theAngDeflectionangular deflection.
isInParallelif TRUE shape will be meshed in parallel.

Member Function Documentation

static Standard_Integer BRepMesh_IncrementalMesh::Discret ( const TopoDS_Shape theShape,
const Standard_Real  theLinDeflection,
const Standard_Real  theAngDeflection,
BRepMesh_DiscretRoot *&  theAlgo 
)
static

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Real BRepMesh_IncrementalMesh::GetMinSize ( ) const
inline

Returns min size parameter.

Standard_Integer BRepMesh_IncrementalMesh::GetStatusFlags ( ) const
inline

Returns accumulated status flags faced during meshing.

virtual void BRepMesh_IncrementalMesh::init ( )
protectedvirtual

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.

Reimplemented from BRepMesh_DiscretRoot.

Standard_Boolean BRepMesh_IncrementalMesh::IsControlSurfaceDeflection ( ) const
inline

Returns flag indicating is adaptive reconfiguration of mesh enabled/disabled.

Standard_Boolean BRepMesh_IncrementalMesh::IsInternalVerticesMode ( ) const
inline

Returns flag indicating is internal vertices mode enabled/disabled.

Standard_Boolean BRepMesh_IncrementalMesh::IsModified ( ) const
inline

Returns modified flag.

Standard_Boolean BRepMesh_IncrementalMesh::IsParallel ( ) const
inline

Returns the multi-threading usage flag.

static Standard_Boolean BRepMesh_IncrementalMesh::IsParallelDefault ( )
static

Returns multi-threading usage flag set by default in Discret() static method (thus applied only to Mesh Factories).

Standard_Boolean BRepMesh_IncrementalMesh::IsRelative ( ) const
inline

Returns relative deflection flag.

virtual void BRepMesh_IncrementalMesh::Perform ( )
virtual

Performs meshing ot the shape.

Implements BRepMesh_DiscretRoot.

void BRepMesh_IncrementalMesh::SetControlSurfaceDeflection ( const Standard_Boolean  isEnabled)
inline

Enables/disables control of deflection of mesh from real surface (enabled by default).

void BRepMesh_IncrementalMesh::SetInternalVerticesMode ( const Standard_Boolean  isEnabled)
inline

Enables/disables internal vertices mode (enabled by default).

void BRepMesh_IncrementalMesh::SetMinSize ( const Standard_Real  theMinSize)
inline

Sets min size parameter.

void BRepMesh_IncrementalMesh::SetParallel ( const Standard_Boolean  isInParallel)
inline

Request algorithm to launch in multiple threads to improve performance.

static void BRepMesh_IncrementalMesh::SetParallelDefault ( const Standard_Boolean  isInParallel)
static

Setup multi-threading usage flag set by default in Discret() static method (thus applied only to Mesh Factories).

void BRepMesh_IncrementalMesh::SetRelative ( const Standard_Boolean  isRelative)
inline

Enables using relative deflection.

Parameters
isRelativeif TRUE deflection used for discretization of each edge will be <theLinDeflection> * <size of="" edge>="">. Deflection used for the faces will be the maximum deflection of their edges.

Field Documentation

TopTools_DataMapOfShapeReal BRepMesh_IncrementalMesh::myEdgeDeflection
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
BRepMesh::DMapOfEdgeListOfTriangulationBool BRepMesh_IncrementalMesh::myEdges
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
NCollection_Vector<TopoDS_Face> BRepMesh_IncrementalMesh::myFaces
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Boolean BRepMesh_IncrementalMesh::myInParallel
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Boolean BRepMesh_IncrementalMesh::myInternalVerticesMode
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Boolean BRepMesh_IncrementalMesh::myIsControlSurfaceDeflection
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Real BRepMesh_IncrementalMesh::myMaxShapeSize
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Handle< BRepMesh_FastDiscret > BRepMesh_IncrementalMesh::myMesh
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Real BRepMesh_IncrementalMesh::myMinSize
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Boolean BRepMesh_IncrementalMesh::myModified
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Boolean BRepMesh_IncrementalMesh::myRelative
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.
Standard_Integer BRepMesh_IncrementalMesh::myStatus
protected

Plugin interface for the Mesh Factories. Initializes meshing algorithm with the given parameters.

Parameters
theShapeshape to be meshed.
theLinDeflectionlinear deflection.
theAngDeflectionangular deflection.
[out]theAlgopointer to initialized algorithm.

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