comp4048 3d visualisation, interaction and navigation

67
COMP4048 3D Visualisation, Interaction and Navigation Richard Webber National ICT Australia

Upload: lee-drake

Post on 01-Jan-2016

43 views

Category:

Documents


0 download

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 Presentation

TRANSCRIPT

Page 1: COMP4048 3D Visualisation, Interaction and Navigation

COMP40483D Visualisation, Interaction and

Navigation

Richard WebberNational ICT Australia

Page 2: COMP4048 3D Visualisation, Interaction and Navigation

Lecture Overview

• 3D – What, How and Why• 3D Graph Drawing

– 2D 3D– Genus > 0– The extra dimension

• Viewpoint selection

Page 3: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 4: COMP4048 3D Visualisation, Interaction and Navigation

3D Computer Graphics

• Orthographic Parallel Projection– Less realistic, but simplifies the math

Page 5: COMP4048 3D Visualisation, Interaction and Navigation

3D Computer Graphics

• Perspective Projection– Standard in modern hardware

Page 6: COMP4048 3D Visualisation, Interaction and Navigation

3D Computer Graphics

• Fisheye-lens Projection– Provides focus+context

Page 7: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 8: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Adding extra information removes ambiguities

• Depth cueing(fog)

Page 9: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Shadows(projections)

Page 10: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

Page 11: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Perspective cues (Ware 2000)

Page 12: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Perspective cues (Ware 2000)

Page 13: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Stereoscopic Displays– Stereo image pairs

• Stereoscopic Displays– Random-dot stereograms

Page 14: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

Page 15: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

Page 16: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Stereoscopic Displays– Head-mounted displays (immersive

VR)

Page 17: COMP4048 3D Visualisation, Interaction and Navigation

The Illusion of 3D

• Stereoscopic Displays– “Filtering” glasses (fishtank VR)

Page 18: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 19: COMP4048 3D Visualisation, Interaction and Navigation

Why 3D? (Ware, Franck 1996)

• Intuition– More natural – we live in a 3d world– Greater “volume” for information

Page 20: COMP4048 3D Visualisation, Interaction and Navigation

Why 3D?

• Anecdotal evidence (applications)– SemNet (Fairchild et al. 1988)– Lyberworld (Hemmje et al. 1994)– Information Visualizer (Mackinlay

1992)

Page 21: COMP4048 3D Visualisation, Interaction and Navigation

Why 3D?

Page 22: COMP4048 3D Visualisation, Interaction and Navigation

Why 3D?

Page 23: COMP4048 3D Visualisation, Interaction and Navigation

Why 3D?

Page 24: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 25: COMP4048 3D Visualisation, Interaction and Navigation

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”

Page 26: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 27: COMP4048 3D Visualisation, Interaction and Navigation
Page 28: COMP4048 3D Visualisation, Interaction and Navigation
Page 29: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 30: COMP4048 3D Visualisation, Interaction and Navigation
Page 31: COMP4048 3D Visualisation, Interaction and Navigation
Page 32: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 33: COMP4048 3D Visualisation, Interaction and Navigation

Genus > 0 Surfaces

Page 34: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 35: COMP4048 3D Visualisation, Interaction and Navigation
Page 36: COMP4048 3D Visualisation, Interaction and Navigation

The Extra Dimension

Page 37: COMP4048 3D Visualisation, Interaction and Navigation

3d Input Techniques

• Using a traditional (WIMP) interface places stress on the user

Page 38: COMP4048 3D Visualisation, Interaction and Navigation

3d Input Techniques

Page 39: COMP4048 3D Visualisation, Interaction and Navigation

3d Input Techniques

• 3D-specific input devices– Spaceball/Spacemouse– “Flying” mice

Page 40: COMP4048 3D Visualisation, Interaction and Navigation

3d Input Techniques

• 3D-specific input devices– Dataglove

Page 41: COMP4048 3D Visualisation, Interaction and Navigation

3d Input Techniques

• First-person-shooter computer games provide a good grounding in using traditional devices for 3d navigation

Page 42: COMP4048 3D Visualisation, Interaction and 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

Page 43: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 44: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 45: COMP4048 3D Visualisation, Interaction and Navigation

Viewpoints and Occlusions

• Vertex-Vertex Occlusions

– Also vertex-edge, edge-vertex and (coplanar) edge-edge occlusions

Page 46: COMP4048 3D Visualisation, Interaction and Navigation

Viewpoints and Occlusions

• Can characterise all bad viewpoints– Note symmetry: (a, b) = (b, a)

Page 47: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 48: COMP4048 3D Visualisation, Interaction and Navigation

Viewpoints and Occlusions

Page 49: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 50: COMP4048 3D Visualisation, Interaction and Navigation

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)

Page 51: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 52: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 53: COMP4048 3D Visualisation, Interaction and Navigation

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)

Page 54: COMP4048 3D Visualisation, Interaction and Navigation

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)

Page 55: COMP4048 3D Visualisation, Interaction and Navigation
Page 56: COMP4048 3D Visualisation, Interaction and Navigation
Page 57: COMP4048 3D Visualisation, Interaction and Navigation
Page 58: COMP4048 3D Visualisation, Interaction and Navigation
Page 59: COMP4048 3D Visualisation, Interaction and Navigation
Page 60: COMP4048 3D Visualisation, Interaction and Navigation
Page 61: COMP4048 3D Visualisation, Interaction and Navigation
Page 62: COMP4048 3D Visualisation, Interaction and Navigation
Page 63: COMP4048 3D Visualisation, Interaction and Navigation
Page 64: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 65: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 66: COMP4048 3D Visualisation, Interaction and Navigation

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

Page 67: COMP4048 3D Visualisation, Interaction and Navigation

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