Class PoMeshCrossSection
- All Implemented Interfaces:
SafeDisposable
If the field PoMesh.valuesIndex
is not defined (or if coloringType = COLOR_INHERITED), the representation uses only one inherited color. If the field PoMesh.valuesIndex
is defined (and if coloringType != COLOR_INHERITED), the representation is colored by using the current data mapping applied to each mesh node value. (see PoMesh
for more explanations about the current data-mapping).
The vector data of the mesh for this representation is unused.
When using the ISOSURFACE
mode, the cross section can be generated by using either a triangle strip set or an indexed face set depending on the preference variable SoPreference.OIV_3DDATA_USE_TRIANGLE_STRIP_SET
File format/default:
plane | Z=0 plane |
valuesIndex | -1 |
coloringType | COLOR_INHERITED |
vecsIndex | -1 |
valuesIndexForCellFilter | -1 |
moduleDataMapping | NULL |
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Specifies the method used to compute intersections.Nested classes/interfaces inherited from class com.openinventor.meshviz.data.PoMesh
PoMesh.ColoringTypes
Nested classes/interfaces inherited from class com.openinventor.meshviz.graph.PoBase
PoBase.NodeWriteFormats, PoBase.TextTypes, PoBase.UpdateMethodTypes
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModes
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
Field Summary
FieldsFields inherited from class com.openinventor.meshviz.data.PoMesh
coloringType, creaseAngle, moduleDataMapping, smoothTextureContouring, valuesIndex, valuesIndexForCellFilter, vecsIndex
Fields inherited from class com.openinventor.inventor.nodekits.SoBaseKit
boundingBoxIgnoring
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic SoNodekitCatalog
Returns theSoNodekitCatalog
for this class.void
Calls setCrossSectionMethod(PoMeshCrossSection.CrossSectionMethods.valueOf( PoMeshCrossSection.CrossSectionMethods.DEFAULT.getValue() )).void
Specifies the method used to build this shape.Methods inherited from class com.openinventor.meshviz.data.PoMesh
getDataMapping, getIsovaluesList, getModuleDataMapping, setDataMapping, setIsovaluesList, setMesh, setModuleDataMapping
Methods inherited from class com.openinventor.meshviz.graph.PoBase
addPostRebuildCallback, addPreRebuildCallback, getDomain, getNodeWriteFormat, getTextType, getUpdateMethod, isBuilt, isModified, isVRML2Mode, rebuild, setDomain, setNodeWriteFormat, setTextType, setUpdateMethod, setVRML2Mode, touchKit
Methods inherited from class com.openinventor.inventor.nodekits.SoBaseKit
getNodekitCatalog, getPart, getPart, getPartString, getViewportIsEnabled, getViewportOrigin, getViewportSize, isSearchingChildren, set, set, setPart, setSearchingChildren
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, setToDefaults
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
Field Details
-
plane
Position of the cross section. Z=0 plane by default.
-
-
Constructor Details
-
PoMeshCrossSection
public PoMeshCrossSection()Constructor.
-
-
Method Details
-
setCrossSectionMethod
public void setCrossSectionMethod()Calls setCrossSectionMethod(PoMeshCrossSection.CrossSectionMethods.valueOf( PoMeshCrossSection.CrossSectionMethods.DEFAULT.getValue() )). -
setCrossSectionMethod
Specifies the method used to build this shape. By defaultPoMeshCrossSection
builds a shape by computing an isosurface on a non regular mesh. The node's data are the distances to the plane. This method is safe but it uses a significant amount of memory for each instance ofPoMeshCrossSection
.Calling
setCrossSectionMethod
(INTERSECTION
) forces the use of the classic method. The classic method computes the shapes by intersecting each cell with the plane. However it can be risky as it assumes that each mesh's cell is convex and therefore that the intersection of a plane and a cell's face can produce only one edge. Using the classic method with concave faces may produce unpredictable results or an infinite loop.The environment variable OIV_3DDATA_CROSS_SECTION_METHOD can also be set to specify the method used to build this shape. It can take the values INTERSECTION or ISOSURFACE. However, calling
setCrossSectionMethod
overrides this environment variable.- Parameters:
method
-DEFAULT
by default.
-
getClassNodekitCatalog
Returns theSoNodekitCatalog
for this class.
-