Class SoGeoOrigin

  • All Implemented Interfaces:
    SafeDisposable

    public class SoGeoOrigin
    extends SoNode
    Specifies a local geospatial coordinate system. The SoGeoOrigin node specifies a local coordinate system for increased floating point precision.

    The SoGeoOrigin node defines an absolute geospatial location and an implicit local coordinate frame against which geometry is referenced. This node is used to translate from geographical coordinates into a local Cartesian coordinate system which can be managed by a viewer. The geoCoords field is used to specify a local coordinate frame for extended precision as described in 25.2.5 Dealing with high-precision coordinates. The geoSystem field is used to define the spatial reference frame and is described in 25.2.3 Specifying a spatial reference frame. The rotateYUp field is used to specify whether coordinates of nodes that use this GeoOrigin are to be rotated such that their up direction is aligned with the Y axis. The default behavior is to not perform this operation. This means that the local up direction will depend upon the location of the GeoOrigin with respect to the planet surface.

    File format/default:

    GeoOrigin {

      geoCoords 0 0 0
      geoSystem ["GD","WE"]
      rotateYUp false
    }

    Action behavior:

    SoGLRenderAction, SoGetBoundingBoxAction, SoCallbackAction

    • Field Detail

      • geoCoords

        public final SoSFVec3d geoCoords
        Specifies the local coordinate frame.
      • geoSystem

        public final SoMFString geoSystem
        Defines the spatial reference frame.
        Valid values are:
        • GC: Earth-fixed Geocentric with respect to the WGS84 ellipsoid.
        • GD: Geodetic spatial reference frame.
          An optional second string may be used to specify the ellipsoid used. If no ellipsoid is specified, then "WE" is assumed (the WGS84 ellipsoid).
        • UTM: Universal Transverse Mercator
          One further required argument must be supplied for UTM in order to specify the zone number (1..60). This is given in the form "Zn", where n is the zone number. An optional argument of "S" may be supplied in order to specify that the coordinates are in the southern hemisphere (otherwise, northern hemisphere will be assumed).
      • rotateYUp

        public final SoSFBool rotateYUp
        Specifies whether coordinates of nodes that use this GeoOrigin are to be rotated such that their up direction is aligned with the world coordinate Y axis. The default behavior is to not perform this operation. This means that the local up direction will depend upon the location of the GeoOrigin with respect to the planet surface.
    • Constructor Detail

      • SoGeoOrigin

        public SoGeoOrigin()
        Constructor.