Mashups with X3D Earth Mike McCann (MBARI) Alan Hudson (Yumetech)

Slides:



Advertisements
Similar presentations
Connect Pictometry Online End User
Advertisements

Three Dimensional Viewing
GPS for Fire Management
© De Montfort University, D Graphics and VRML Howell Istance and Chris Hand* De Montfort University * now at
Datum Transformation and Coordinate Conversion. Cartesian Coordinate System Y Z X Ellipsoid sized a & f WGS -84 is Earth Centered Earth Fixed; Origin.
Map Projections Francisco Olivera, Ph.D., P.E. Srikanth Koka
GIS Tutorial 1 Lecture 6 Digitizing.
Digital Elevation Models And Relief Models 1DEM. Part 1: The Underlying Elevation Data 2DEM.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
Geographic Information Systems in Water Science Unit 4: Module 1, Lecture 2 – Coordinate Systems and Common GIS data formats.
Monterey Bay Aquarium Research Institute
Geodesy, Map Projections and Coordinate Systems Geodesy - the shape of the earth and definition of earth datums Map Projection - the transformation of.
Basic 3D Graphics Chapter 5. Bird’s Eye View  Basic 3D Graphics –Basic concepts of 3D graphics, rendering pipeline, Java 3D programming, scene graph,
Geodesy, Map Projections and Coordinate Systems
Introduction to Cartography GEOG 2016 E Lecture-3 Scale, Reference and Coordinate Systems.
GSP 270 Digitizing with an Introduction to Uncertainty and Metadata
Coordinate Systems in Geodesy By K.V.Ramana Murty, O. S.
Web3D Working Groups Jyun-Ming Chen Fall Contents X3d H-Anim UMEL GEOVRML MPEG RM3D Others User Input Vrml-Streaming Intellectual Property Right.
Georeferencing with Paper Maps  Map Basics  How to Georeference with Paper Maps  Latitude and Longitude Mathematically  Error Calculator.
VRML Dr. Alun Moon What is VRML The Virtual Reality Modeling Language (VRML) is a file format for describing interactive 3D objects.
Harry Williams, Cartography
VRML - 1 Virtual Reality Modeling Language (VRML) Peter O’Grady.
Geodesy and Map Projections Geodesy - the shape of the earth and definition of earth datums Map Projection - the transformation of a curved earth to a.
Class 19: 3D Cartesian Coordinate Computations GISC March 2009.
Adaptive Real-Time Rendering of Planetary Terrains WSCG 2010 Raphaël Lerbour Jean-Eudes Marvie Pascal Gautron THOMSON R&D, Rennes, France.
HOW GEOGRAPHERS LOOK AT THE WORLD. 5 THEMES OF GEOGRAPHY  1. Location : Where is it?  2. Place: What is it like?  3. Region : How are places similar.
History of VRML and Its Development Process. Learning Objectives Understand the history of VRML Understand the purpose and functions of VRML Learn how.
Legal land descriptions are an important part of transfer of property, Taxes, and determination of acreages. Most states still only recognize plane surveys,
1 Virtual Reality Modeling Language (VRML97) ©Anthony Steed
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Map Projections Francisco Olivera, Ph.D., P.E. Srikanth Koka Department of Civil Engineering Texas A&M University.
1Computer Graphics Lecture 4 - Models and Architectures John Shearer Culture Lab – space 2
H3D API Training Part 2.1: X3D. Outline  Scene graphs  X3D – XML syntax  X3D components overview.
Cartography: the science of map making A Round World in Plane Terms.
Coordinate Systems and Projections. Geodesy, Map Projections and Coordinate Systems Geodesy - the shape of the earth and definition of earth datums Map.
Geodesy and Datums Ellipsoid and Geoid Geographic Coordinate system.
L 5 Map Projections Lecture Map projections are used to transfer or “project” geographical coordinates onto a flat surface.. There are many projections:
Map Projections. What is a Map Projection? A mathematical expression used to represent the 3D surface of the earth on a 2D map Always results in distortions.
Virtual Reality Modeling Language 97. What’s VRML? Virtual Reality Modeling Language 2D/3D graphics Audio:.wav,.mid Video: MPEG-1 Interactivity: time-
ROV Data Visualization with GeoVRML SIGGRAPH CartoBOF 24 July 2002.
VRML Anthony Steed Department of Computer Science University College London ©Anthony Steed
URBDP 422 URBAN AND REGIONAL GEO-SPATIAL ANALYSIS Lecture 3: Building a GeoDatabase; Projections Lab Session: Exercise 3: vector analysis Jan 14, 2014.
OpenGL The Viewing Pipeline: Definition: a series of operations that are applied to the OpenGL matrices, in order to create a 2D representation from 3D.
© TMC Computer School HC20203 VRML HIGHER DIPLOMA IN COMPUTING Chapter 2 – Basic VRML.
Modeling, CG, and others Jyun-Ming Chen Fall 2001.
12/24/2015 A.Aruna/Assistant professor/IT/SNSCE 1.
Web3D Jyun-Ming Chen Fall Contents Definitions, components Examples Task breakdown Survey of available technologies Recommended platform Details.
Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved. 1 Chapter 11 Animation.
Introduction to VRML for generating 3-D display
Where in the world are we? … A system for describing location on the earth What is the shape of the earth … and how earth’s shape affects the process of.
A Photograph of two papers
ST236 Site Calibrations with Trimble GNSS
© TMC Computer School HC20203 VRML HIGHER DIPLOMA IN COMPUTING Chapter 5 – Animation in VRML.
What is Geodesy ?. Satellite Observations of the Earth European Remote Sensing satellite, ERS-1 from 780Km ERS-1 depicts the earth’s shape without water.
Geodesy, Map Projections and Coordinate Systems Geodesy - the shape of the earth and definition of earth datums Map Projection - the transformation of.
GIS Data Shape files, Rasters, Coordinate Systems, ArcGIS.
X3D Geospatial Component and X3D Earth Web3D 2010 Conference Los Angeles California, July 2010 Don Brutzman and Byounghyun Yoo Naval Postgraduate.
Coordinate Systems and Map Projections
Geodesy, Map Projections and Coordinate Systems
MPEG-4 Binary Information for Scenes (BIFS)
Projections and Coordinate Reference Systems
COORDINATE SYSTEMS AND MAP PROJECTIONS
Models and Architectures
Today: Cartographic Basics Virtual Globes Google Earth demo (at PCs)
Three Dimensional Viewing
True or False: A transformation is an operation that maps a an image onto a pre-image. Problem of the Day.
Geodesy, Map Projections and Coordinate Systems
Presentation transcript:

Mashups with X3D Earth Mike McCann (MBARI) Alan Hudson (Yumetech)

Why X3D Earth? All the benefits of X3D: –Open ISO Specification –Choice of implementations and tools –Scripting capabilities –Powerful browsers Geospatial accuracy (WGS84, UTM, etc.) True mapping of 3D Geospatial coordinates to X3D’s Cartesian X, Y, Z coordinates

Precision of GeoCoordinates GeoOrigin concept –Convert Geo coordinates (geographic, UTM, etc.) to Cartesian GeoCentric coordinates –Subtract GeoOrigin coordinates from from the GeoCoordinates in scene –Graphics pipeline deals with smaller numbers that are resolved with single precision arithmetic

GeoCoordinate Examples # GEO lat 21.3… deg, long … deg, 0 m elevation, WGS84 <GeoCoordinate geoSystem=”’GD’" point=" " # UTM zone 11, n, e, 1000 m elevation <GeoCoordinate geoSystem=”’UTM’, ‘Z11’" point=” " ( All coordinates translated internally to geocentric )

Use GeoOrigin to increase precision # More precise object & camera positioning <GeoCoordinate geoSystem=”’GD’" point=" " ( GeoSpatial supports a single GeoOrigin per scene)

How GeoOrigin works –In GeoCentric coordinates: Define (DP) origin at ( , , ) Specify (DP) point of ( , , ) Take (SP) difference: (8.18, 3.28, 0.72) –Small number single-precision coordinates used in the rendering pipeline

Simplicity of Use X3D-Earth nodes are built out of GeoCoordinate nodes just as regular Geometry nodes are built out of Coordinate nodes GeoCoordinates may be specified in WGS84 Lat/Lon, UTM Easting/Northings, or GeoCentric x/y/z coordinates Nodes like GeoElevationGrid work just like ElevationGrid but with GeoCoordinates

GeoSpatial Node overview 1.GeoCoordinate - Build geometry with geographic coordinates 2.GeoElevationGrid - Define height field with geographic coordinates 3.GeoLocation - Georeference a vanilla X3D model

GeoSpatial Node overview (cont.) 4.GeoLOD - Multi-resolution terrain level of detail management 5.GeoMetadata - Dublin Core element style Information about the data 6.GeoOrigin - Used to increase the precision within the scene

GeoSpatial Node overview (cont.) 7.GeoPositionInterpolator - Animate objects within the geographic coordinate system 8.GeoProximitySensor - Provides geographic coordinates of viewer’s position 9.GeoTouchSensor - Return geographic coordinates of an object

GeoSpatial Node overview (cont.) 10.GeoTransform - Translate and rotate GeoCoordinate built geometry relative to tangent plane of ellipsoid 11.GeoVeiwpoint - Specify viewpoint in geographic coordinates

More detail into the Geo nodes The building blocks of GeoSpatial worlds

GeoCoordinate (1 of 11) Purpose –Specify a list of geographic coordinates Usage –Can use a GeoCoordinate node anywhere an X3D Coordinate node can go, e.g. PointSet, IndexedFaceSet, or IndexedLineSet. Uses –Build models in terms of lat/long or UTM. For example, a road line segment, a GPS track, or 3-D model from GPS-recorded points or model simulation

GeoCoordinate (1 of 11) <IndexedLineSet colorPerVertex="false” coordIndex=" ” <GeoCoordinate point=" , , ,...” geoSystem=""GD"">

GeoElevationGrid (2 of 11) Purpose –Define a height field using geographic coordinates Usage –Can use a GeoElevationGrid node anywhere an X3D ElevationGrid can go, e.g. from the geometry field of a Shape node. Uses –Create terrain models for local or large areas (automatically introduces correct degree of earth curvature)

GeoElevationGrid (2 of 11)

GeoLocation (3 of 11) Purpose –Georeference a vanilla X3D model onto the surface of the earth Usage –The GeoLocation node is a grouping node that affects the location of its children. It also sets the orientation so that +Y is up for that location. Uses –Place a non-georeferenced model at its correct location and orientation, place an X3D Viewpoint or ElevationGrid at a geographic location.

GeoLocation (3 of 11)

GeoLOD (4 of 11) Purpose –Level of detail management for multi-resolution terrains Usage –The GeoLOD node is a grouping node that switches between two resolution levels of a quad-tree based upon distance from a point. Uses –Build massive tiled, multi-resolution terrain models where the browser progressively loads higher resolution detail as you fly into the terrain.

GeoLOD (4 of 11) GeoLOD { center child1Url "../../trees/2/p0p0.x3dv” child2Url "../../trees/2/p1p0.x3dv” child3Url "../../trees/2/p0p1.x3dv” child4Url "../../trees/2/p1p1.x3dv” geoOrigin USE ORIGIN geoSystem "GD” range rootNode Shape { appearance Appearance { texture ImageTexture { url "../../images/1/p0p0.jpg" }.. }

GeoMetadata (5 of 11) Purpose –Include a generic subset of metadata about the geographic data Usage –Can be thought of as a WorldInfo node, but specifically designed for describing geographic information. Uses –Provide a subset of metadata information about one or more geographic elements in a scene, and provide links to full metadata and source files.

GeoMetadata (5 of 11) GeoMetadata { summary [ “title”, “SAN FRANCISCO NORTH, CA” “description”, “DEM GENERATED FROM 1/24,000 DLG- SOURCE” “coordinate-system”, “UTM Z10” “extent”, “ ” “resolution”, “30” “originator”, “United States Geological Survey (USGS)” “data-format”, “USGS 7.5 min DEM” ] data USE GEOEG url “sanfranciscon.dem” }

GeoOrigin (6 of 11) Purpose –Specify a local coordinate system for increased floating point precision Usage –You can use a GeoOrigin node only as the value for a geoOrigin field in another X3D node. Only one GeoOrigin per scene. Use DEF/USE to provide the same GeoOrigin node to all GeoVRML nodes. Uses –Remove floating point rounding artifacts for ground- level models such as quantization of vertices and camera jitter during navigation

GeoOrigin (6 of 11)

GeoPositionInterpolator (7 of 11) Purpose –Animate objects within a geographic coordinate system Usage –Can use a GeoPositionInterpolator node anywhere that a X3D PositionInterpolator node can go. Uses –Perform fly-throughs of X3D content by animating the camera, animate objects based upon GPS data or key frame locations.

GeoPositionInterpolator (7 of 11) <GeoPositionInterpolator DEF="ROV_Pos_Interpolator">

GeoProximitySensor (8 of 11) Purpose –Report geographic location of the viewer's position Usage –Can use a GeoProximitySensor node anywhere that an X3D ProximitySensor node can go. Uses –Specify proximity sensors in GeoSpatial reference frame. –Route GeoCoordinate values of viewpoint location

GeoProximitySensor (8 of 11) DEF PROX GeoProximitySensor { geoOrigin USE ORIGIN geoSystem [ "GD" ] geoCenter IS diveMidpoint size 1.e6 1.e6 1.e6 }. ROUTE PROX.geoCoord_changed TO PROX_script.set_geoCoord ROUTE PROX_script.locationString TO DepthDisplay.set_string

GeoTouchSensor (9 of 11) Purpose –Report geographic location of the mouse position on an object Usage –Can use a GeoTouchSensor node anywhere that an X3D Touch Sensor node can go. Uses –Route GeoCoordinate values of mouse position and act on mouse clicks.

GeoTouchSensor (9 of 11) Group { children [ DEF GTS GeoTouchSensor { geoOrigin USE ORIGIN } geometry GeoElevationGrid {... } ] }. ROUTE GTS.hitGeoCoord_changed TO TEXTSCRIPT.set_value

GeoTransform (10 of 11) Purpose –Translate and rotate GeoCoordinate geometry relative to ellipsoidal tangent plane Usage –Grouping node like Transform, but for GeoCoordinate geometry Uses –For Shape nodes built of GeoCoordinates GeoTransform provides translation and rotation routable attributes for moving GeoCoordinate constructed geometry relative to a local tangent plane on the globe.

GeoTransform (10 of 11) DEF DiveLocation GeoTransform { geoOrigin USE ORIGIN geoCenter IS diveMidpoint children [ Transform { children [ DEF ROVTrackShape Shape { geometry IndexedLineSet { coord GeoCoordinate { geoOrigin USE ORIGIN point IS rovLocation } ] } ] }. ROUTE DepthSliderEvents.translation_changed TO DiveLocation.set_translation

GeoViewpoint (11 of 11) Purpose –Specify a viewpoint using geographic coordinates Usage –Can use a GeoViewpoint anywhere an X3D Viewpoint node can go. The viewpoint orientation is relative to the up vector at that location. Uses –Place the camera at a geographic coordinate, setup sensible navigation options such as height-based velocity and near/far clipping planes.

GeoViewpoint (11 of 11) GeoViewpoint { position “ ” orientation geoSystem “GD” navType “EXAMINE” description “View1” headlight TRUE jump TRUE }