Class PoMeshLevelSurf

All Implemented Interfaces:
SafeDisposable

public class PoMeshLevelSurf extends PoMesh3D
Representation of level surface of volume mesh. This class represents a 3D level surface of the current volume mesh. See PoMesh for more explanations about the current mesh.

The geometry of the level surface is defined by interpolation relating to the set of scalar values of which index is defined by the field valuesIndexForLevel. However, if valuesIndexForLevel = -1, the set of scalar values is the one of which index is PoMesh.valuesIndex. If this scalar value set does not exist in the current mesh, the representation is empty.

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).

NOTE : This class is not designed to build an isosurface with a "per cell" data set : When valuesIndexForLevel refers to a data set with a "PER_CELL" data binding (see PbMesh.DataBinding), the result is unpredictable. However, an isosurface can be built with a "PER_NODE" data set, and colored using a "PER_CELL" data set : when valuesIndexForLevel refers to a PER_NODE data set and valuesIndex refers to a PER_CELL data set, a valid isosurface is built.

The vector data of the mesh for this representation is unused.

The isosurface 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:

PoMeshLevelSurf {

    levelValue 0.0
    surfOrientation ORIENTED_TO_MAX
    valuesIndexForLevel -1
    valuesIndex -1
    coloringType COLOR_INHERITED
    vecsIndex -1
    valuesIndexForCellFilter -1
    moduleDataMapping NULL
}

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> <head> <link REL="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style"> <title></title> </head> <BODY> <h1></h1> <h4> <A NAME="Heading1073">CATALOG PARTS</A></h4> <ul><b>PoMeshLevelSurf</b> {</ul> <ul><ul><b>Separator</b> <tt>alternateRep</tt> (from PoBase) {<br> </ul></ul> <ul><ul><ul><b>AppearanceKit</b> <tt>appearance</tt> (from PoBase)</ul></ul></ul> <ul><ul><ul><i>Specifies the appearance of all the kit. By default lightModel.model=PHONG. material.diffuseColor is set when the kit is rebuilt, if the field coloringType is different from COLOR_INHERITED.</i></ul></ul></ul> <ul><ul><ul><b>MatrixTransform</b> <tt>domainTransform</tt> (from PoBase)</ul></ul></ul> <ul><ul><ul><i>Corresponds to the domain transformation.</i></ul></ul></ul> <ul><ul><ul><ul></ul></ul></ul></ul> <ul><ul><ul><b>Group</b> <tt>groupLevelSurf</tt></ul></ul></ul> <ul><ul><ul><i>Contains an SoShapeHints property with creaseAngle = 0.8 and an SoCoordinate3 node followed by an indexed shape to draw the level surface of the mesh.</i></ul></ul></ul> <ul><ul>}</ul></ul> <ul>}<br> <br> </ul> </body> </html>

  • Field Details

    • surfOrientation

      public final SoSFEnum<PoMeshLevelSurf.SurfOrientations> surfOrientation
      Orientation of the level surface. ORIENTED_TO_MIN: The facet normals of the level surface are oriented to the region of the mesh where the values are less than levelValue.

      ORIENTED_TO_MAX: The facet normals of the level surface are oriented to the region of the mesh where the values are greater than levelValue. These normal orientations are respected if each element of the mesh respects the orientation rules (see the definition of each type of mesh).

    • levelValue

      public final SoSFFloat levelValue
      Value of the level surface.
    • valuesIndexForLevel

      public final SoSFInt32 valuesIndexForLevel
      Index of the set of value used to compute the level surface. If valuesIndexForLevel == -1, this index is defined by PoMesh.valuesIndex. -1 by default.
  • Constructor Details

    • PoMeshLevelSurf

      public PoMeshLevelSurf()
      Constructor.
  • Method Details