Download presentation
Presentation is loading. Please wait.
Published byJack Day Modified over 9 years ago
1
Programming for Interactivity Professor Bill Tomlinson Tuesday & Wednesday 6:00-7:50pm Fall 2005
2
Standard Inputs What makes an input “standard”?
3
Keyboard Connect keys to different behavior (Correction: KeyAdapter, etc., is in java.awt.event)
4
Mouse Clicks, drags, etc.
5
gridCanvas.addMouseListener( new TesterMouseMotionListener()); class TesterMouseMotionListener implements MouseListener, MouseMotionListener { public void mousePressed(MouseEvent e) { int xPos = e.getX(); int yPos = e.getY(); System.out.println("Clicked at "+xPos+", "+yPos); if ((xPos = 0 && yPos >= 0){ ((Device)(Tester.getAllDevices().elementAt(0))).setPosition(new Vec2(xPos, yPos)); } Tester.getGridCanvas().repaint(); } public void mouseDragged(MouseEvent e) {} public void mouseMoved(MouseEvent e) {} public void mouseReleased(MouseEvent e){} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mouseClicked(MouseEvent e) {} }
6
Equivalent to: gridCanvas.addMouseListener(new TesterMouseAdapter()); class TesterMouseAdapter extends MouseAdapter { public void mousePressed(MouseEvent e) { int xPos = e.getX(); int yPos = e.getY(); System.out.println("Clicked at "+xPos+", "+yPos); if ((xPos = 0 &&yPos >= 0) { ((Device)(Tester.getAllDevices().elementAt(0))).setPosition( new Vec2(xPos, yPos)); } Tester.getGridCanvas().repaint(); }
7
Graphical User Interfaces (GUIs) “Standard” screen widgets
8
Buttons Clickable area of screen, graphically represented as a raised button, often with a text label.
9
Sliders Variable input (and output) Text label Returns an int, so need to give it a large scale if an approximately continuous response is wanted.
10
Check boxes Set parameters Often paired with one or more buttons
11
Radio Buttons Only one can be selected at a time
12
Text Boxes Enter one or more lines of text. Often coupled with a button.
13
Others?
14
Example: New York Times What GUI elements does the site include?
15
Other GUI Elements? Can we think of any other GUI widgets that would be useful?
16
Less Standard Does not ship with typical PCs
17
Adapting the Mouse and Keyboard Physical coupling
18
3D GUI Croquet Alan Kay
19
Game Pad
20
Stylus
21
Accelerometer EcoRaft Repurposing mouse
22
USB Button
23
Telephone tones
24
Voice: Non-verbal AlphaWolf Volume Harmonicity Length
25
Voice: Language-based Sphinx
26
Sphinx + FreeTTS
27
IrDA EcoRaft
28
Vision: Background subtraction Look for differences in the pixels from frame to frame.
29
Vision: Multi-camera
30
Tangible User Interfaces (TUIs) Ishii et al.
31
Location: GPS Geocaching
32
Location: Other PlaceLab - 802.11 access points, etc.
33
Synthetic Nose Natalie Jeremijenko
34
Integrating Input with Graphics and Sound
35
Evaluating Input Technologies Quantitative study - e.g., how fast can users accomplish some task using the input? Qualitative study - which inputs do they like and why? Artistic license - what feels good to you?
36
Readings
37
Dourish Context How much input needs to be consciously delivered by a person? How much can provide implicit contextual cues? How much context can be extrapolated/interpolated from other information?
38
Reeves & Nass Social interactions with computers Politeness
39
Schechner Indian Theater vs. Western Theater Engaging the body viscerally. How can interactive computational systems engage the body and the senses?
40
Vectorpark http://www.vectorpark.com/ball.html
41
Ze Frank’s Frog http://www.zefrank.com/frog/frog.html
42
Other sites to analyze?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.