You might not believe it but there are a whole bunch of ways to specify coordinates on the earth. The technical
term for these coordinates is called geocoordinates. The ability to manipulate and interact with graphics and
terrain that are accurately located on the earth's surface is quite useful and the best and
truly only reasonable way to deal with data and make it available on the Web is to use GeoVRML. GeoVRML
is a "Recommended Practice" created by a working group of the Web3D Consortium, but primarily created by Martin Reddy and
Lee Iverson of SRI International. Getting back to geocoordinates some of the types of coordinates GeoVRML
let's you manipulate are:
GDC Geodetic
GCC Geocentric
GEI Geocentric Equatorial Inertial
GSE Geocentric Solar Ecliptic
GSM Geocentric Solar Magnetospheric
SM Solar Magnetic
GCS Global Coordinate System
PS Polar Stereographic PCS
LCC Lambert Conformal Conic PCS
TM Transverse Mercator
UTM Universal Transverse Mercator
LST Local Space Rectangular
More then you care to know right!
The development and deployment of GeoVRML serves as a model for the development of any substantial functional extension to VRML.
SRI, hosts the GeoVRML.org site at http://www.geovrml.org. The web site contains not only
the specification itself but example (open source) code and example applications using GeoVRML, and
technical papers.
So what is GeoVRML anyway and why do we need it? First of all GeoVRML is a set of Nodes implemented as VRML PROTOs.
Recall that PROTOs are the clean way to implement extensions to VRML. In terms of features
to quote from the GeoVRML Introduction:
The following list provides a high-level list of capabilities that are
specifically addressed by GeoVRML 1.0.
- Coordinate Systems -
- GeoVRML provides the ability to embed latitude/longitude or UTM coordinates directly into a VRML file and have the browser transparently fuse these into a global context for visualization. GeoVRML 1.0 supports 3 coordinate systems, 21 ellipsoids, and 1 geoid.
- Precision -
- VRML97 provides only single-precision floating point values. This is insufficient to represent data on a planetary scale down to around 10 m resolution or beyond. GeoVRML provides solutions to extend this precision and enable sub-millimeter positional accuracies.
- Scalability -
- GeoVRML provides various scalability features to manage the streaming of large, multi-resolution models over the web.
- Metadata -
- GeoVRML provides the ability to specify a generic subset of metadata describing geographic objects, including the ability to link to a full metadata description.
- Animation -
- The ability to interpolate within the supported geographic coordinate systems is provided so that animations can be defined with respect to key points on the surface of the planet.
- Introspection -
- Functionality is provided to be able to query a GeoVRML scene and discover the geographic coordinate of any georeferenced point.
- Navigation -
- GeoVRML 1.0 provides some basic support for navigation schemes that are specific to geographic applications. Specifically, the issue of elevation scaled velocity is addressed.
Now let's see what types of Nodes and capabilities we get with GeoVRML.
Let's look at X3D which among other things will use XML to encode the 3D scene graph.
Next page > Functions and Nodes > Page 1, 2