Clip line extractor for structured surface meshes
More...
#include <MeshVizXLM/extractors/MiClipLineExtractIj.h>
Public Member Functions | |
| virtual | ~MiClipLineExtractIj () |
| virtual const MeXLineMeshUnstructured & | extractLine (const MbVec3< double > &normal, double distance, const MiCellFilterIj *cellFilter=NULL)=0 |
| virtual const MeXLineMeshUnstructured & | extractLine (const MbVec3d &direction, const std::vector< MbVec3d > &polyline, const MiCellFilterIj *cellFilter=NULL)=0 |
| virtual const MeXScalardSetI & | extractScalarSet (const MiScalardSetIj &inputSet)=0 |
| virtual const MeXVec3dSetI & | extractVec3Set (const MiVec3dSetIj &inputSet)=0 |
| virtual const MeXLineMeshUnstructured & | getExtract () const =0 |
|
| |
| static MiClipLineExtractIj * | getNewInstance (const MiSurfaceMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
| static MiClipLineExtractIj * | getNewInstance (const MiSurfaceMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
| static MiClipLineExtractIj * | getNewInstance (const MiSurfaceMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
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.
| virtual MiClipLineExtractIj::~MiClipLineExtractIj | ( | ) | [inline, virtual] |
| 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.
| direction | vector defining the direction of the fences | |
| polyline | set of points defining the position of the fences | |
| cellFilter | the cell filter object. |
| 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.
| normal | Vector normal to the plane | |
| distance | Position of the plane relatively to the origin along the normal | |
| cellFilter | The cell filter object. |
| 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.
| inputSet | the input scalar set defined on the surface mesh |
| 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.
| inputSet | the input vec3 set defined on the surface mesh |
| virtual const MeXLineMeshUnstructured& MiClipLineExtractIj::getExtract | ( | ) | const [pure virtual] |
Returns the result of the extraction as a mesh.
| static MiClipLineExtractIj* MiClipLineExtractIj::getNewInstance | ( | const MiSurfaceMeshRectilinear & | mesh, | |
| bool | parallel = true, |
|||
| MiTessellator * | tessellator = NULL | |||
| ) | [static] |
Factory method returning a new instance of a class implementing this interface.
| mesh | The input mesh | |
| parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. | |
| tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |
| static MiClipLineExtractIj* MiClipLineExtractIj::getNewInstance | ( | const MiSurfaceMeshCurvilinear & | mesh, | |
| bool | parallel = true, |
|||
| MiTessellator * | tessellator = NULL | |||
| ) | [static] |
Factory method returning a new instance of a class implementing this interface.
| mesh | The input mesh | |
| parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. | |
| tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |
| 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.
| mesh | The input mesh | |
| parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. | |
| tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |