Class MiCylinderSliceExtractIjk
- java.lang.Object
-
- com.openinventor.meshvizxlm.extractors.slice.MiCylinderSliceExtractIjk
-
- All Implemented Interfaces:
MiBaseExtractor,MiExtractorIjk
- Direct Known Subclasses:
MiCylinderSliceExtractHexahedronIjk
public abstract class MiCylinderSliceExtractIjk extends java.lang.Object implements MiExtractorIjk
Cylinder slice extractor for structured volume meshes.A cylinder slice is a surface mesh defined by the intersection of a cylinder of infinite length with the input mesh. The cylinder is defined by a point on its central axis, a vector representing the central axis direction and the radius.
Additional data sets can be mapped onto this extracted surface by calling the
extractScalarSet(MiScalardSetIjk)orextractVec3Set(MiVec3dSetIjk)methods.The following sample code shows how to extract a cylinder slice from a mesh:
{ MiCylinderSliceExtractIjk cylinderSliceExtract = MiCylinderSliceExtractIjk.getNewInstance(mesh); MeXSurfaceMeshUnstructured cylinderSlice = cylinderSliceExtract.extractSlice(center, radius, direction, null); }
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract MeXScalardSetIextractScalarSet(MiScalardSetIjk scalarSet)Computes aPER_CELLscalar set on the extracted cylinder slice.abstract MeXSurfaceMeshUnstructured<MeXSurfaceCell,MeXSurfaceTopologyExplicitI<MeXSurfaceCell>,MeXGeometryI>extractSlice(SbVec3d center, double radius, SbVec3d direction, MiCellFilterIjk filter)Builds the topology and geometry of a cylinder slice intersecting the volume mesh.abstract MeXVec3dSetIextractVec3Set(MiVec3dSetIjk vectorSet)Computes a vector set on the extracted cylinder slice.abstract MeXSurfaceMeshUnstructured<MeXSurfaceCell,MeXSurfaceTopologyExplicitI<MeXSurfaceCell>,MeXGeometryI>getExtract()Returns the result of the extraction as a mesh.static <T extends MiTopologyIjk,G extends MiGeometryHexahedronIjk>
MiCylinderSliceExtractIjkgetNewInstance(MiVolumeMeshVertexHexahedronIjk<T,G> mesh)Create an instance of cylinder slice extractor for a non indexed hexahedron volume mesh IJK.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.openinventor.meshvizxlm.extractors.MiBaseExtractor
setExtractorCallback
-
Methods inherited from interface com.openinventor.meshvizxlm.extractors.MiExtractorIjk
addCellRange, clearCellRanges
-
-
-
-
Method Detail
-
getNewInstance
public static <T extends MiTopologyIjk,G extends MiGeometryHexahedronIjk> MiCylinderSliceExtractIjk getNewInstance(MiVolumeMeshVertexHexahedronIjk<T,G> mesh)
Create an instance of cylinder slice extractor for a non indexed hexahedron volume mesh IJK.- Parameters:
mesh- the input mesh- Returns:
- a cylinder slice extractor for a non indexed hexahedron volume mesh IJK.
-
extractSlice
public abstract MeXSurfaceMeshUnstructured<MeXSurfaceCell,MeXSurfaceTopologyExplicitI<MeXSurfaceCell>,MeXGeometryI> extractSlice(SbVec3d center, double radius, SbVec3d direction, MiCellFilterIjk filter)
Builds the topology and geometry of a cylinder slice intersecting the volume mesh.- Parameters:
center- a point located on the axis of the cylinderradius- the radius of the cylinderdirection- a vector representing the axis of the cylinderfilter- the cell filter- Returns:
- an unstructured surface mesh representing the cylinder slice
-
extractScalarSet
public abstract MeXScalardSetI extractScalarSet(MiScalardSetIjk scalarSet)
Computes aPER_CELLscalar set on the extracted cylinder slice.Note: The argument i,j,k of the method
MiScalardSetIjk.get(int, int, int)refers to the cell (i,j,k). Thus the binding of the input set must bePER_CELL. AnUnsupportedOperationExceptionis thrown otherwise.- Parameters:
scalarSet- the input scalar set defined on the volume mesh- Returns:
- the output scalar set defined on the resulting cylinder slice mesh
-
extractVec3Set
public abstract MeXVec3dSetI extractVec3Set(MiVec3dSetIjk vectorSet)
Computes a vector set on the extracted cylinder slice.Note: The argument i,j,k of the method
MiVec3dSetIjk.get(int, int, int)refers to the cell (i,j,k). Thus the binding of the input set must bePER_CELL. AnUnsupportedOperationExceptionis thrown otherwise.- Parameters:
vectorSet- the input vector set defined on the volume mesh- Returns:
- the output vector set defined on the resulting cylinder slice mesh
-
getExtract
public abstract MeXSurfaceMeshUnstructured<MeXSurfaceCell,MeXSurfaceTopologyExplicitI<MeXSurfaceCell>,MeXGeometryI> getExtract()
Returns the result of the extraction as a mesh.- Returns:
- result of the extraction as a mesh
-
-