Presentation is loading. Please wait.

Presentation is loading. Please wait.

Toolglasses and Magic Lenses. 2 Reading: Eric A. Bier, Maureen C. Stone, Ken Pier, William Buxton and Tony D. DeRose, “Toolglass and magic lenses: the.

Similar presentations


Presentation on theme: "Toolglasses and Magic Lenses. 2 Reading: Eric A. Bier, Maureen C. Stone, Ken Pier, William Buxton and Tony D. DeRose, “Toolglass and magic lenses: the."— Presentation transcript:

1 Toolglasses and Magic Lenses

2 2 Reading: Eric A. Bier, Maureen C. Stone, Ken Pier, William Buxton and Tony D. DeRose, “Toolglass and magic lenses: the see- through interface”, Proceedings of the 20th Annual Conference on Computer Graphics, 1993, Pages 73-80. http://www.acm.org/pubs/articles/proceedings/graph/166117/p73-bier/p73-bier.pdf

3 3 Note... n These techniques are patented by Xerox n Don’t know scope of patent, but its likely you would need to license to use them commercially

4 4 Demonstration Video (CHI 94)...

5 5 Toolglasses and magic lenses n I will just lump these together as “lenses” n Lots of uses n A number of advantages

6 6 Advantages of lenses n In context interaction – Little or no shift in focus of attention F tool is at/near action point – Alternate views in context and on demand F can compare in context F useful for “detail + context” visualization techniques

7 7 Detail + context visualization n Broad category of information visualization techniques – Present more detail in area of interest F More than you could typically afford to show everywhere F Details may be very targetted – Present in context of larger visualization

8 8 Advantages of lenses n Two handed interaction – Structured well for 2 handed input F non-dominant hand does course positioning (of the lens) examples also use scroll wheel with non-dominant hand –scaling: again a course task F dominant hand does fine work

9 9 Advantages of lenses n Spatial modes – Alternative to more traditional modes – Use “where you click through” to establish meaning – Typically has a clear affordance for the meaning F lens provides a “place to put” this affordance (and other things)

10 10 Examples n Lots of possible uses, quite a few given in paper and video n Property palettes – Click through interaction – Again: no context shift + spatial mode

11 11 Examples n Clipboards – Visible F invisibility of typical clipboard is a problem – Lots of interesting variations F multiple clipboards F “rubbings” – Can do variations, because we have a place to represent them & can do multiple specialized lenses

12 12 Examples n Previewing lenses – Very useful for what-if – Can place controls for parameters on lens n Selection tools – Can filter out details and/or modify picture to make selection a lot easier

13 13 Examples n Grids – Note that grids are aligned with respect to the object space not the lens

14 14 Implementation of lenses n Done in a shared memory system – All “applications” are in one address space – Like one giant interactor tree – Also assumes a common command language that all applications respond to

15 15 Implementation of lenses n Lens is an additional object “over the top” – Drawn last – Can leave output from below and add to it (draw over top) – Can completely overwrite output from below F can do things like “draw behind” Root Lens App

16 16 Implementation of lenses n Input side – Changed way they did input F originally used simple top-down dispatch mechanisms F now lens gets events first can modify (e.g., x,y) or consume F possibly modified events then go back to root for “normal dispatch

17 17 Implementation of lenses n Input side – Special mechanism to avoid sending events back to lens – Also has mechanism for attaching “commands” to events assumes unified command lang F command executed when event delivered

18 18 Implementation of lenses n Output side n Damage management – Lenses need to be notified of all damage F Lens may need to modify area due to manipulation of output (e.g. mag)

19 19 Implementation of lenses n Output side n Redraw – Several different types of lenses F Ambush F Model-in / model-out F Reparameterize and clip

20 20 Types of lens drawing n Ambush – catch the low level drawing calls F typically a wrapper around the equivalent of the drawable – and modify them F e.g. turn all colors to “red” – Works transparently across all apps – But somewhat limited

21 21 Types of lens drawing n Reparameterize & clip – similar to ambush – modify global parameters to drawing – redraw, but clipped to lens – best example: scaling

22 22 Types of lens drawing n Model-in / model-out – create new objects and transform them F transforms of transforms for composition – very powerful, but… F cross application is an issue F incremental update is as issue

23 23 Lenses in subArctic n Implemented with special “lens parent” & lens interactors n Input – Don’t need to modify input dispatch – Lens may need to change results of picking (only positional is affected) F in collusion with lens parent Lens Parent Lens Root

24 24 Lenses in subArctic n Damage management – Lens parent forwards all damage to all lenses – Lenses typically change any damage that overlaps them into damage of whole lens area

25 25 Lenses in subArctic n Replace vs. draw-over just a matter of clearing before drawing lens or not n Two kinds of output support – Ambush F Via wrappers on drawable F Extra features in drawable make ambush more powerful – Traversal based (similar to MIMO)

26 26 Ambush features in drawable n boolean start_interactor_draw() n end_interactor_draw() – called at start/end of interactor draw – allows tracking of what is being drawn – drawing skipped if returns false n allows MIMO effects in ambush – isolated drawing – predicate selected drawing

27 27 Lenses in subArctic n Also support for doing specialized traversal – walk down tree and produce specialized output – can do typical MIMO effects

28 28 Example: Debugging Lens

29 29


Download ppt "Toolglasses and Magic Lenses. 2 Reading: Eric A. Bier, Maureen C. Stone, Ken Pier, William Buxton and Tony D. DeRose, “Toolglass and magic lenses: the."

Similar presentations


Ads by Google