Class SoHeightFieldProperty

  • All Implemented Interfaces:
    SafeDisposable

    public class SoHeightFieldProperty
    extends SoVolumeData
    Height field property node. SoHeightFieldProperty defines a set of values on a uniform grid in the XY plane that can be used to color an SoHeightFieldGeometry when rendered using an SoHeightFieldRender node.

    SoHeightFieldProperty is derived from SoVolumeData and serves a similar purpose in the scene graph, providing a reference to an LDM data set which will be loaded as needed by rendering nodes, specifically SoHeightFieldRender in this case.

    The property data is given using the inherited field fileName or by using a custom reader through the setReader method.

    Multiple SoHeightFieldProperty nodes can be inserted in a scene graph and combined together in the GPU to do render compositing. However the default fragment shader only handles one property (the first one). To combine multiple properties use a custom shader program (see SoVolumeShader and the example program).

    Note that it is not necessary (or useful) to set the inherited extent field. SoHeightFieldRender will use the extent associated with the SoHeightFieldGeometry node.

    Also note that the inherited undefinedValue field is ignored. Setting it has no effect.

    File format/default:

    HeightFieldProperty {

      allocateResourceOnRender false
      data NODATA 0 0 0 UBYTE 8
      dataRGBA false
      dataSetId 1
      dataTransform NULL
      extent -1 -1 -1 1 1 1
      fileName ""
      texturePrecision 0
      undefinedValue NaN
      useCompressedTexture true
      useExtendedData false
      usePalettedTexture true
      useSharedPalettedTexture true
    }

    See Also:
    SoHeightFieldRender, SoHeightFieldGeometry, SoMultiDataSeparator, SoConverter
    • Constructor Detail

      • SoHeightFieldProperty

        public SoHeightFieldProperty()