NASA World Wind for Java API Overview
-
Upload
fabrizio-giudici -
Category
Technology
-
view
1.561 -
download
1
description
Transcript of NASA World Wind for Java API Overview
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
NASA World Wind for JavaAPI Overview
Fabrizio Giudici
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
In a few words...
● 3D API for rendering the Earth– ... but also other planets
● Default data from NASA– You can feed other data providers– Beware of terms of use
● You can add your own objects
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Some basic facts
● Based on JOGL (OpenGL bindings for Java)– Fast!– Fast Video Card required– But beware of drivers (especially in Linux)– Native library required
● You don't need to learn JOGL
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Basic classes
● Configuration– How to set up things
● WorldWindowGLCanvas– The components that renders the scene
● Model– What we are going to render
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Basic classes
● Layer(s)
– Stacked sets of rendered objects
● View, OrbitView– The coordinates and other attributes of the view
point
● SceneController– The controller
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Standard Layers
● Stars● Fog● SkyGradient● BMNGSurface● LandsatI3● USGSDigitalOrtho
● USGSUrbanAreaOrtho● CountryBoundaries● EarthNASAPlaceName● ScaleBar● WorldMap● Compass
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
The demos
● ViewIteration
● GlobalGridAboveSurface
● Shapes
● DraggingShapes
● SurfaceImages
● TexturedSurfaceShape
● Tracks
● AnaglyphStereo
run-demo.bash demo_name
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
ViewIteration
● Goes to a specific location applying a smooth transition
● OrbitView● ScheduledOrbitViewStateIterator
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
GlobalGridAboveSurface
● Draws a grid over the surface● RenderableLayer● PolyLine
– color– numSegments– followTerrain
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Shapes
● Sticks and renders many different shapes at given coordinates
● RenderableLayer– SurfaceSector, SurfaceEllipse, SurfaceSquare, SurfaceCircle, SurfaceQuad, Quadrilateral, SurfacePolygon, PolyLine
● IconLayer● WWIcon, UserFacingIcon
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
DraggingShapes
● Surface shapes can be selected and dragged● SelectListener
– SelectEvent.HOVER– SelectEvent.ROLLOVER– SelectEvent.DRAG– SelectEvent.DRAG_END
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
SurfaceImages
● Paints a given image over the surface● RenderableLayer
– SurfaceImage
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
TexturedSurfaceShape
● Paints a shape with a given texture over the surface
● RenderableLayer– SurfaceSector– TexturePaint
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Tracks
● Renders a track with waypoints● TrackMarkerLayer
– Track
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Anaglyph Stereo
● Renders a 3D view that can be viewer with 3D glasses
● Configuration● AnaglyphSceneController
– setDisplayMode(...)– setFocusAngle(...)
Fabrizio Giudici – [email protected] – JUG MilanoJavaday Roma - 01/12/2007
Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Contacts & Links
● http://worldwind.arc.nasa.gov/java● http://bluemarine.tidalwave.it● http://forceten.tidalwave.it (soon)
● http://weblogs.java.net/blog/fabriziogiudici● http://www.tidalwave.it/people