comp4048 3d visualisation, interaction and navigation
DESCRIPTION
COMP4048 3D Visualisation, Interaction and Navigation. Richard Webber National ICT Australia. Lecture Overview. 3D – What, How and Why 3D Graph Drawing 2D 3D Genus > 0 The extra dimension Viewpoint selection. 3D Computer Graphics. (Foley et al. 1990, Szirmay-Kalos et al. 1995) - PowerPoint PPT PresentationTRANSCRIPT
COMP40483D Visualisation, Interaction and
Navigation
Richard WebberNational ICT Australia
Lecture Overview
• 3D – What, How and Why• 3D Graph Drawing
– 2D 3D– Genus > 0– The extra dimension
• Viewpoint selection
3D Computer Graphics
• (Foley et al. 1990, Szirmay-Kalos et al. 1995)
• Vertices have 3 coordinate – x, y, z• Edges are routes through 3d points• 3d model 2d image = projection
– Orthographic parallel – architectural plans
– Perspective – 3d computer games– Fisheye-lens – context+focus
3D Computer Graphics
• Orthographic Parallel Projection– Less realistic, but simplifies the math
3D Computer Graphics
• Perspective Projection– Standard in modern hardware
3D Computer Graphics
• Fisheye-lens Projection– Provides focus+context
The Illusion of 3D
• The Necker Cube Illusion (Foley et al. 1990)
– Is the wireframe cube facing down and left or up and right?
= or
The Illusion of 3D
• Adding extra information removes ambiguities
• Depth cueing(fog)
The Illusion of 3D
• Shadows(projections)
The Illusion of 3D
The Illusion of 3D
• Perspective cues (Ware 2000)
The Illusion of 3D
• Perspective cues (Ware 2000)
The Illusion of 3D
• Stereoscopic Displays– Stereo image pairs
• Stereoscopic Displays– Random-dot stereograms
The Illusion of 3D
The Illusion of 3D
The Illusion of 3D
• Stereoscopic Displays– Head-mounted displays (immersive
VR)
The Illusion of 3D
• Stereoscopic Displays– “Filtering” glasses (fishtank VR)
The Illusion of 3D
• Kinetic Depth Effect (Wallach, O’Connell 1953)
• Produces the illusion of 3d in a 2d projection by rotating/rocking the graph
– Direction of rotation can be ambiguous
Why 3D? (Ware, Franck 1996)
• Intuition– More natural – we live in a 3d world– Greater “volume” for information
Why 3D?
• Anecdotal evidence (applications)– SemNet (Fairchild et al. 1988)– Lyberworld (Hemmje et al. 1994)– Information Visualizer (Mackinlay
1992)
Why 3D?
Why 3D?
Why 3D?
Why 3D?
• Sollenberger and Milgram 1993– Finding paths in a 3d graph drawing– stereoscopic glasses > static
projection– continuous rotation > static projection– unidirectional user rotation =
continuous rotation– rotation + stereoscopic >> static
projection
Why 3D?
• Ware and Franck 1996– bidirectional user rotation >
unidirectional user rotation– head-controlled parallax =
bidirectional user rotation “the size of graph that can be traced with
the same accuracy increases three-fold with the use of stereoscopic display
and rotation”
3D by Physical Analogy
• Springs adapt very easily– E.g., Bruß and Frick 1995– Distance and direction work in any
dimension
• Other energy-based systems also adapt
– Equations can get harder
• Simulated annealing can do anything– The state space may get larger
3D DAG Drawings
• Place layers in parallel planes– Barycentering now in 2d– What is an edge “crossing”?
• Restrict to surface of genus 0 solids– Edge crossing problem circular
• Both of these approaches are sometimes referred to as 2½d
Genus > 0 Surfaces (Garvan 1997)
• Genus = “number of holes/handles”– Genus 0: plane, sphere, cylinder, cone,
cube– Genus 1: torus (doughnut), teacup– Genus 2: two-handed teacup– Genus 3: ABC logo, pretzel– Genus g: Swiss cheese
• Genus g graph can be drawn on a genus g surface without edge crossings
Genus > 0 Surfaces
The Extra Dimension
• Draw a 2d graph then use 3rd (and more) dimensions for extra information
– Dimensions = x, y, z, size, shape, colour, …
• Draw multiple 2d graphs (abstractions) using the 3rd dimension
– Cluster graphs (Feng 1997)– Look “through” to lower layers
The Extra Dimension
3d Input Techniques
• Using a traditional (WIMP) interface places stress on the user
3d Input Techniques
3d Input Techniques
• 3D-specific input devices– Spaceball/Spacemouse– “Flying” mice
3d Input Techniques
• 3D-specific input devices– Dataglove
3d Input Techniques
• First-person-shooter computer games provide a good grounding in using traditional devices for 3d navigation
Viewpoint Selection
• Wouldn’t it be nice if you could tell the computer
1. roughly where you want to be2. what you want to look at
and the computer responded by moving you smoothly to a suitable position and orientation?
• Where and what could be spatial or semantic
Viewpoint Selection
• Avoiding viewpoints that are “bad”• Aspect Graphs (Plantinga, Dyer
1990)– Bad = can’t see many faces of a 3d
solid
• Kamada and Kawai 1988– Bad = non-general “shape”
information of the drawing is lost
Viewpoint Selection
• Bose et al. 1995– Bad = degenerate with respect to
some computational geometry problem– Regular and Wirtinger projections
• Webber 1998– Bad = “the apparent abstract graph of
the 2d drawing differs from the abstract graph of the 3d model” there is an occlusion
Viewpoints and Occlusions
• Vertex-Vertex Occlusions
– Also vertex-edge, edge-vertex and (coplanar) edge-edge occlusions
Viewpoints and Occlusions
• Can characterise all bad viewpoints– Note symmetry: (a, b) = (b, a)
Viewpoints and Occlusions
• Can check a single viewpoint in O(|V0|2+|V||E|) time
• Can preprocess to check many viewpoints against the same drawing
– O(|S| log |S|) preprocessing time
– |S| is O(|V0|2+|V||E|+kbva); kbva is O(|V0|
2+|V|2|E|2)
– Check viewpoints in logarithmic time
Viewpoints and Occlusions
Best Viewpoints
• Finding viewpoints that are “best”• Kamada and Kawai 1988
– Most general viewpoints
• Bose et al. 1995– Viewpoints with least edge crossings– Their models can yield best viewpoints
using our techniques
Best Viewpoints
• Goodness of a viewpoint = how far it is from the nearest bad viewpoint (Webber 1998)
• Rotational Separation Diagram (RSD)– Goodness = great-circle distance– O(|S| log |S|) preprocessing time– Good for interacting with drawings
• Observed Separation Diagram (OSD)– Goodness = apparent distance between
elements in 2d image– Good for static presentation (journals)
Best Viewpoints
• Worst-case size of restricted OSD (E = ) is an open problem
(|S|2)– O(|S|22(|S|))
• Unrestricted OSD contains degree-6 surfaces
– no know closed-form solutions > degree-4
Approximating Viewpoints
• On an nn display, two viewpoints are equivalent if angle is < arcsin(2/n)
– Near enough is good enough
• User is often happy if the viewpoint becomes “good” quickly, even if it converges on “best” slowly
• User doesn’t like viewpoint to jump too much – prefers smooth animation
Approximating Viewpoints
• Iterative Improvement– Keep searching for better viewpoints– Sample space altered dynamically:
speed versus goodness of result– Stop when you don’t find anything
better for a time (or just never stop)– Effective for small graphs (|G| 20)– “Pruning” and “clipping” allow larger
graphs (|G| 100)
Approximating Viewpoints
• Force-Directed– Based on the Spring algorithm!– Repeatedly move away from the
nearest 1 or 2 sites from S– Use random sampling from S and
cache the nearest w– Effective for larger graphs still (|G| >
100)
References
• J. D. Foley, A. van Dam, S. Feiner, J. Hughes (1990): Computer Graphics: Principles and Practice, 2nd ed., Addison-Wesley
• L. Szirmay-Kalos, G. Márton, B. Dobos, T. Horváth, P. Risztics, E. Kovács (1995): Theory of Three-Dimensional Computer Graphics, Akadémiai Kiadó (Budapest, Hungary)
• C. Ware (2000): Information Visualization: Perception for Design, Morgan Kaufmann
• H. Wallach, D. H. O’Connell (1953): “The Kinetic Depth Effect”, J. Experimental Psychology, 45(4):205-217
• C. Ware, G. Franck (1996): “Evaluating Stereo and Motion Cues for Visualizing Information Nets in Three Dimensions”, ACM Trans. Graphics, 15(2):121-140
References
• K. M. Fairchild, S. E. Poltrock, G. W. Furnas (1988): “SemNet: Three-Dimensional Graphic Representation of Large Knowledge Bases”, Cognitive Science and its Applications for Human-Computer Interaction, Lawrence Erlbaum Associates, pp. 201-233
• M. Hemmje, C. Kunkel, A. Willett (1994): “LyberWorld – A Visualization User Interface Supporting Fulltext Retrieval”, Proc. 17th ACM SIGIR Conf. Research and Development in Information Retrieval, pp. 249-259
• J. D. Mackinlay, G. G. Robertson, S. K. Card (1992): “The Information Visualizer: A 3D User Interface for Information Retrieval”, Proc. Advanced Visual Interfaces, World Scientific, Series in Computer Science, 36:173-179
References
• R. L. Sollenberger, P. Milgram (1993): “Effects of Stereoscopic and Rotational Displays in a Three-Dimensional Path-Tracing Task”, Human Factors, 35(3):483-499
• I. Bruß, A. K. Frick (1995): “Fast Interactive 3-D Graph Visualization”, Proc. 3rd Int. Symp. Graph Drawing, Springer-Verlag, LNCS, 1027:99-110
• P. L. Garvan (1997): “Low Genus Drawings of Graphs in Three Dimensions”, Dept. Computer Science and Software Engineering, University of Newcastle, Ph.D. Thesis
• Q. Feng (1997): “Algorithms for Drawing Clustered Graphs”, Dept. Computer Science and Software Engineering, University of Newcastle, Ph.D. Thesis
References
• H. Plantinga, C. R. Dyer (1990): "Visibility, Occlusion, and the Aspect Graph“, Int. J. Computer Vision, 5(2):137-160
• T. Kamada, S. Kawai (1988): “A Simple Method for Computing General Position in Displaying Three-Dimensional Objects”, Computer Vision, Graphics and Image Processing, 41(1):43-56
• P. Bose, F. Gómez, P. A. Ramos, G. T. Toussaint (1995): “Drawing Nice Projections of Objects in Space”, Proc. 3rd Int. Symp. Graph Drawing, Springer-Verlag, LNCS 1027, pp. 52-63
• R. J. Webber (1998): “Finding the Best Viewpoint forThree-Dimensional Graph Drawings”, Dept. Computer Science and Software Engineering, University of Newcastle, Ph.D. Thesis