Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product...
Transcript of Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product...
![Page 1: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/1.jpg)
University of British ColumbiaUniversity of British Columbia
CPSC 414 Computer GraphicsCPSC 414 Computer Graphics
© Tamara Munzner 1
Displays, Devices II
Week 12, Wed 19 Nov 2003
![Page 2: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/2.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 2
News• extra office hours in lab
– 5:15-6:15 today
• project 3 draft out
![Page 3: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/3.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 3
Display Technologies recap• CRT: Cathode Ray Tubes• LCD: Liquid Crystal Displays• plasma display panels• DMD/DLP: micromirror array projectors• display walls: tiled projector array
![Page 4: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/4.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 4
Display Wall Discussion• pros
– commodity technology– can be seamless (theoretically)
• cons– geometric alignment solvable– colorimetric alignment difficult– large space footprint
![Page 5: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/5.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 5
Future: Plentiful Pixels?• digital wallpaper
– 300dpi, ubiquitous– cheap as paint/wallpaper
• projectors as lightbulbs, flashlights
• challenges– rendering– physical delivery of pixels to displays
• would need lots of wires
![Page 6: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/6.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 6
Mobile Displays
640x480 1” colour640x480 1” colourvirtual image 2 ft awayvirtual image 2 ft away3 oz3 oz
![Page 7: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/7.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 7
Mobile Displays
![Page 8: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/8.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 8
Stereo Displays• active glasses or active screen
– autostereoscopic also possible
![Page 9: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/9.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 9
Laser Stripe Range Scanners• camera records laser stripe
– second camera records texture image
[graphics.stanford.edu/papers/volrange]
![Page 10: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/10.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 10
Laser Stripe Range Scanners
BIRISCyberware
![Page 11: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/11.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 11
Laser Stripe Range Scanners
![Page 12: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/12.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 12
Laser Time-of-Flight Scanners
• Cyra– picosecond clock rates
![Page 13: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/13.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 13
Depth from Stereo
![Page 14: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/14.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 14
Shape Tape– fiber-optic based bend-and-twist sensor
![Page 15: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/15.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 15
Haptics
![Page 16: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/16.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 16
3D Printers– spread layer of powder– print binder solution– vacuum away loose powder
4.5 hrs printing,4.5 hrs printing,$100 printing cost$100 printing costelectroplatedelectroplated
[Z Corp][Z Corp]
![Page 17: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/17.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 17
3D Printers
printing telephones?printing telephones?etc.etc.
![Page 18: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/18.jpg)
University of British ColumbiaUniversity of British Columbia
CPSC 414 Computer GraphicsCPSC 414 Computer Graphics
© Tamara Munzner 18
Virtual Trackball
![Page 19: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/19.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 19
Virtual Trackball• imagine a trackball embedded in screen
– cs.calvin.edu/CS/352/02Graphics/lectures/primer-demo.exe
• if I click on screen, what point on trackball am I touching?
![Page 20: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/20.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 20
Trackball Rotation Axis• If I move the mouse from p1 to p2, what
rotation does that correspond to?
![Page 21: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/21.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 21
Virtual Trackball Rotations• Rotation about the axis n = p1 x p2
• Angle of rotation: use p1 • p2 = |p1| |p2| cos �
• Fixed point: if you use the [-1, 1] cube, it is the origin
![Page 22: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/22.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 22
Virtual Trackball• can we use the mouse to control the 2-D rotation of a viewing volume?• imagine a track ball – user moves point on ball from (x, y, z) to (a, b, c)
• imagine the points projected onto the ground– user moves point on ground from (x, 0, z) to (a, 0, c)
![Page 23: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/23.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 23
Trackball• movement of points on track ball can be inferred from mouse drags on screen
• inverse problem– where on trackball does (a, 0, c) hit?– ball is unit sphere, so ||x, y, z|| = 1.0– x = a, z = c, y = solve for it
![Page 24: Displays, Devices IItmm/courses/cpsc414-03-fall/Vsep2003/slid… · – magnitude of cross product tells us angle between lines • (dot product too) – |sin q| = ||cross product||](https://reader034.fdocuments.us/reader034/viewer/2022050512/5f9ccf7d7cfc1568c14507b4/html5/thumbnails/24.jpg)
Week 12, Wed 19 Nov 03 © Tamara Munzner 24
Trackball
• user defines two points– place where first clicked X = (x, y, z)– place where released A = (a, b, c)
• ball rotates along axis perp to line defined by these two points– compute cross produce of lines to origin: (X – O) x (A – O)
• ball rotates by amount proportional to distance between lines– magnitude of cross product tells us angle between lines
• (dot product too)
– |sin θ| = ||cross product||• compute rotation matrix and use it to rotate world