1 / 25

Lance Arsenault John Kelso Ron Kriz diverse.vt

Lance Arsenault John Kelso Ron Kriz www.diverse.vt.edu. Data visualization in the Engineering Sciences using DIVERSE. http://www.sv.vt.edu/ Item7- Student projects (91,92, … 01). evice ndependent irtual nvironments- econfigurable, calable, xtensible. DIVERSE. Overview. C++ API

alaric
Download Presentation

Lance Arsenault John Kelso Ron Kriz diverse.vt

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lance ArsenaultJohn KelsoRon Kriz www.diverse.vt.edu

  2. Data visualization in the Engineering Sciences using DIVERSE • http://www.sv.vt.edu/ Item7- Student projects (91,92, … 01)

  3. evicendependentirtualnvironments-econfigurable,calable,xtensibleevicendependentirtualnvironments-econfigurable,calable,xtensible DIVERSE

  4. Overview • C++ API • Free, Open source • LGPL libraries, GPL applications • SGI IRIX and GNU/Linux • Support for all three IRIX binary types

  5. Goals • Modular • Only use the parts you need • Flexible • Easy to reconfigure and extend • Same program works on all hardware • No changes to application

  6. We always tried to keep this in mind… • Stay out of the user’s way • They know better than we do how to do their job • Augment instead of replace • Build on existing packages, don’t reinvent new ones • Works by default • Lowest-common-denominator defaults work anywhere

  7. Who uses DIVERSE? • US Navy: • 3d target-acquisition visualization for submarines • Dynamic ship-crane project • Lockheed-Martin: • Tools for collaborative engineering. • NIST: • Visualization of complex data sets • Haptic device for probing data set densities

  8. Two separate packages • DTK- the DIVERSE ToolKit • Contains classes not related to graphics • A standalone package in its own right • dgiPf- the DIVERSE graphics interface for OpenGL Performer™ • Built using DTK and Performer

  9. DTK DIVERSE ToolKit • Library • C++ classes used to build server and applications • Server • Manager of services • A true daemon, in the form of a select server • Services • Interfaces to hardware devices or virtual surrogates • Loaded and unloaded into server at run-time as DSOs

  10. dgiPf DIVERSE Graphics Interface for Performer • Uses DTK and Performer to provide: • Configuration via DSOs • Display-independent graphics • Coordinate systems and scenegraph • Symmetric and asymmetric viewing frusta • Stereo parallax • Generic input devices • Navigation • New Performer node types

  11. DIVERSE distribution includes: • Library for application development • Stand-alone application programs and utilities • Several dozen small programs to illustrate specific features of dgiPf • Written to be easily moved and modified

  12. The only thing you should say before giving a demo is “watch this”

  13. diversifly • Application program • Loads model files with optional transformations • Behavior can be modified via DSOs

  14. diversifly demos • Performer Town on a desktop: diversifly --origin 2500 2500 2 -90 0 0 town.pfb Performer Town in a CaveTM simulator: env DGIPF_DSO_FILES=desktopCaveSimGroup \ diversifly --origin 2500 2500 2 -90 0 0 town.pfb

  15. Hello World! #include <dgiPf.h> int main(void) { pfInit(); dgiPf app; pfConfig(); app.display()->world()-> addChild(pfdLoadFile(”model.pfb")); while(app.state & DGIPF_ISRUNNING) pfFrame(); pfExit(); return 0; }

  16. hello.C demos • Default, no navigation or input devices: hello • Desktop: env DGIPF_DSO_FILES=desktopGroup \ hello • Cave Simulator: env DGIPF_DSO_FILES=desktopCaveSimGroup \ hello

  17. hello.C demos • Desktop, writing navigation to DTK shared memory: env DGIPF_DSO_FILES=desktopGroup:\ navDTKOutputhello View the data in a terminal window: dtk-readFloats nav --carriage-return

  18. hello.C demos • While the writer is running, start a reader: Desktop, with navigation read from DTK shared memory: env DGIPF_DSO_FILES=simpleDisplay:\ • keyboardMouseInput:\ • iconSleepKeyboardMod:\ • toggleObjectsGroup:\ • dtkNav \ hello

  19. hello.C demos • Terminate the writer and use sliders to write data: dtk-sliders nav --number 7 \ --scale 0 20 -20 0 --scale 1 20 -20 0 --scale 2 20 -20 0 \ --scale 3 180 -180 0 --scale 4 180 -180 0 \ --scale 5 180 -180 0 --scale 6 10 .1 1 \ --labels x y z h p r scale

  20. hello.C demos • Run another reader: Cave simulator, with navigation read from DTK shared memory: env DGIPF_DSO_FILES=desktopCaveSimGroup:\ dtkNav hello

  21. hello.C demos • And finally, a Cave Simulator, with navigation written to DTK shared memory, and a flashlight: env DGIPF_DSO_FILES=desktopCaveSimGroup:\ navDTKOutput:wandLight hello

  22. Future directions • dgiGL (summer 2001) • Augments OpenGL • Support for many more platforms • dgiOi (fall 2001) • Adds Open Inventor scenegraph to dgiGL

  23. Future directions • head’s up displays (summer 2001) • hooks to VTK (summer 2001) • more navigation and simulation techniques(summer 2001) • collaborative tools (fall 2001) • motion queuing (fall 2001) • new devices • Phantom haptic device (fall 2001) • Xwand (summer 2001) • PocketPC (summer 2001)

  24. Want to know more? • Visit www.diverse.vt.edu and • Download and try it out • Read the friendly manuals • Contact: • Lance Arsenault (lanceman@vt.edu) • John Kelso (kelso@vt.edu) • Ron Kriz (rkriz@vt.edu)

More Related