GeoLocation
Overview
GeoLocation positions a regular X3D model onto earth’s surface. GeoLocation can contain children and GeoOrigin nodes.
The GeoLocation node belongs to the Geospatial component and requires at least level 1, its default container field is children. It is available from X3D version 3.0 or higher.
Hierarchy
1
2
3
4
+ X3DNode
+ X3DChildNode
+ X3DGroupingNode
+ GeoLocation
Fields
SFNode [in, out] metadata NULL [X3DMetadataObject]
Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
Hint
SFNode [ ] geoOrigin NULL [GeoOrigin] (deprecated)
Single contained GeoOrigin node that can specify a local coordinate frame for extended precision.
Hint
Warning
- XML validation requires placement as first child node following contained metadata nodes (if any).
MFString [ ] geoSystem [ “GD”, “WE” ]
Identifies spatial reference frame: Geodetic (GD), Geocentric (GC), Universal Transverse Mercator (UTM). Supported values: “GD” “UTM” or “GC” followed by additional quoted string parameters as appropriate for the type.
Hints
- X3D Architecture 25.2.2 Spatial reference frames
- X3D Architecture 25.2.4 Specifying geospatial coordinates
- UTM is Universal Transverse Mercator coordinate system
Warning
- Deprecated values are GDC (replaced by GD) and GCC (replaced by GC).
SFVec3d [in, out] geoCoords 0 0 0 (-∞,∞)
Geographic location (specified in current geoSystem coordinates) for children geometry (specified in relative coordinate system, in meters).
Hint
Warning
- Requires X3D
profile='Full'
or else include<component name='Geospatial' level='1'/>
SFBool [in, out] visible TRUE
Whether or not renderable content within this node is visually displayed.
Hints
- The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
- Content must be visible to be collidable and to be pickable.
SFBool [in, out] bboxDisplay FALSE
Whether to display bounding box for associated geometry, aligned with world coordinates.
Hint
- The bounding box is displayed regardless of whether contained content is visible.
SFVec3f [ ] bboxSize -1 -1 -1 [0,∞) or −1 −1 −1
Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
Hints
- Can be useful for collision computations or inverse-kinematics (IK) engines.
- Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
- X3D Architecture, 10.2.2 Bounding boxes
- X3D Architecture, 10.3.1 X3DBoundedObject
SFVec3f [ ] bboxCenter 0 0 0 (-∞,∞)
Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
Hints
- Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
- X3D Architecture, 10.2.2 Bounding boxes
- X3D Architecture, 10.3.1 X3DBoundedObject
MFNode [in] addChildren
Input field addChildren.
MFNode [in] removeChildren
Input field removeChildren.
MFNode [in, out] children [ ] [X3DChildNode]
Grouping nodes contain an ordered list of children nodes.
Hints
- Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
- InputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
- InputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
- X3D Architecture 10.2.1 Grouping and children node types
Advice
Hints
- X3D for Advanced Modeling (X3D4AM) slideset
- GeoLocation adjusts orientation of children models appropriately: +Y axis is up direction for that local area (i.e. normal to tangent plane on the geospatial ellipsoid), -Z axis points towards north pole, and +X axis points east.
Warnings
- Requires X3D
profile='Full'
or else include<component name='Geospatial' level='1'/>
- Avoid having GeoLocation or GeoTransform as a parent or ancestor node of each other, since multiple geospatial transformations then occur with unpredictable results.