Class SoUnits

All Implemented Interfaces:
SafeDisposable

public class SoUnits extends SoTransformation
Node that scales to convert units of length. This node defines a uniform 3D scale about the origin relative to the previously defined units. The default units for all data are meters. Adding a units node with the value INCHES will have the same effect as adding an SoScale node with the scaleFactor of (.0254, .0254, .0254). Any subsequent SoUnits node will take the previous units into account. When building a composite object out of a bunch of pieces, it would be a good practice to add an SoUnits node at the beginning of each of the pieces, under an SoSeparator node, to make sure all the pieces fit together with the same scale.

File format/default:

Units {

    units METERS
}

Action behavior:

SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoRayPickAction
Accumulates the scale that is the ratio of the size from the previous unit to the current unit into the current transformation. Sets: SoModelMatrixElement, SoUnitsElement

SoGetMatrixAction
Returns the matrix corresponding to the units scaling.

See Also:
  • Field Details

  • Constructor Details

    • SoUnits

      public SoUnits()
      Creates a unit conversion node with default settings.