Open Inventor Release 2024.1.0
 
Loading...
Searching...
No Matches
MiClipLineExtractIj Class Referenceabstract

MeshViz Clip line extractor for structured surface meshes More...

#include <MeshVizXLM/extractors/MiClipLineExtractIj.h>

+ Inheritance diagram for MiClipLineExtractIj:

Public Member Functions

virtual ~MiClipLineExtractIj ()
 
virtual const MeXLineMeshUnstructuredextractLine (const MbVec3< double > &normal, double distance, const MiCellFilterIj *cellFilter=NULL)=0
 Computes a 3D polyline as the result of the intersection of the surface mesh and the given plane.
 
virtual const MeXLineMeshUnstructuredextractLine (const MbVec3d &direction, const std::vector< MbVec3d > &polyline, const MiCellFilterIj *cellFilter=NULL)=0
 Computes a 3D polyline as the result of the intersection of several planes and the surface mesh.
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIj &inputSet)=0
 Extracts a scalar set from the surface mesh.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIj &inputSet)=0
 Extracts a vector set from the surface mesh.
 
virtual const MeXLineMeshUnstructuredgetExtract () const =0
 Returns the result of the extraction as a mesh.
 
- Public Member Functions inherited from MiBaseExtractor
virtual ~MiBaseExtractor ()
 
virtual void setExtractorCallback (MiExtractorCallback *extractorCallback)=0
 Set the user defined extractor callback which will be called before each extraction, during each extraction and after each extraction.
 
virtual SoDEPRECATED void setExtractorCallback (MiExtractorCallback &extractorCallback)
 

Static Public Member Functions

static MiClipLineExtractIjgetNewInstance (const MiSurfaceMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 Factory method returning a new instance of a class implementing this interface.
 
static MiClipLineExtractIjgetNewInstance (const MiSurfaceMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 
static MiClipLineExtractIjgetNewInstance (const MiSurfaceMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 

Detailed Description

MeshViz Clip line extractor for structured surface meshes

A clip line is the intersection of a plane or a list of planes with the surface mesh. The extracted line is an unstructured line.

Definition at line 47 of file MiClipLineExtractIj.h.

Constructor & Destructor Documentation

◆ ~MiClipLineExtractIj()

virtual MiClipLineExtractIj::~MiClipLineExtractIj ( )
inlinevirtual

Definition at line 50 of file MiClipLineExtractIj.h.

Member Function Documentation

◆ extractLine() [1/2]

virtual const MeXLineMeshUnstructured & MiClipLineExtractIj::extractLine ( const MbVec3< double > &  normal,
double  distance,
const MiCellFilterIj cellFilter = NULL 
)
pure virtual

Computes a 3D polyline as the result of the intersection of the surface mesh and the given plane.

Parameters
normalVector normal to the plane
distancePosition of the plane relatively to the origin along the normal
cellFilterThe cell filter object.
Returns
An unstructured line mesh representing the clip line

◆ extractLine() [2/2]

virtual const MeXLineMeshUnstructured & MiClipLineExtractIj::extractLine ( const MbVec3d direction,
const std::vector< MbVec3d > &  polyline,
const MiCellFilterIj cellFilter = NULL 
)
pure virtual

Computes a 3D polyline as the result of the intersection of several planes and the surface mesh.

The arbitrary planes (or fences) are defined by a polyline and a direction. The clip line extracted is returned as an unstructured line mesh.

Parameters
directionvector defining the direction of the fences
polylineset of points defining the position of the fences
cellFilterthe cell filter object.
Returns
An unstructured line mesh representing the clip line

Since Open Inventor 2023.1

◆ extractScalarSet()

virtual const MeXScalardSetI & MiClipLineExtractIj::extractScalarSet ( const MiScalardSetIj inputSet)
pure virtual

Extracts a scalar set from the surface mesh.

The scalars are mapped onto the current extracted clip sline.

Parameters
inputSetthe input scalar set defined on the surface mesh
Returns
the output scalar set defined on the resulting line mesh

◆ extractVec3Set()

virtual const MeXVec3dSetI & MiClipLineExtractIj::extractVec3Set ( const MiVec3dSetIj inputSet)
pure virtual

Extracts a vector set from the surface mesh.

The vectors are mapped onto the current extracted clip line.

Parameters
inputSetthe input vec3 set defined on the surface mesh
Returns
the output scalar set defined on the resulting line mesh

◆ getExtract()

virtual const MeXLineMeshUnstructured & MiClipLineExtractIj::getExtract ( ) const
pure virtual

Returns the result of the extraction as a mesh.

◆ getNewInstance() [1/3]

static MiClipLineExtractIj * MiClipLineExtractIj::getNewInstance ( const MiSurfaceMeshCurvilinear mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

◆ getNewInstance() [2/3]

static MiClipLineExtractIj * MiClipLineExtractIj::getNewInstance ( const MiSurfaceMeshRectilinear mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

◆ getNewInstance() [3/3]

static MiClipLineExtractIj * MiClipLineExtractIj::getNewInstance ( const MiSurfaceMeshRegular mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

Factory method returning a new instance of a class implementing this interface.

Parameters
meshThe input mesh
parallelWhen true, tries to create an extract module using a parallel algorithm to speed up the extraction.
tessellatorThe tessellator object used for tessellating non linear cells (quadratic,...).
Note
Only some of the extraction algorithms have a parallel implementation.

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