Title: Freehand%20Drawing%20System%20based%20on%20Geometric%20Constraints
1Freehand Drawing Systembased on Geometric
Constraints
- Kaisuke Nakajima
- Joint work with Takeo Igarashi
User Interface Research Group The University of
Tokyo
2Two Parts of the Talk
- Introduction to Pegasus
- Igarashi, UIST 1997 CHI 1998
- Improvement attempts
- My current study
- Any comments greatly appreciated! ?
3Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
4Problem
- Diagrams
- In documents, slides,
- By drawing editors
- Difficult to satisfy geometric relations!
5Example
6(No Transcript)
7Example (contd.)
- In this case, grids works well, but
8Another Example
9The user attempts to draw a perpendicular line,
10but grid prevents desired placements.
11He draws a box separately, and...
12rotates it, but fails to get precise angle.
13Better strategy copy the slope ? rotate 90
degrees
14Why Difficult?
The user must plan detailed strategy.
Planning overhead
15Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
16Our Idea
- Sketching is easy!
- Sketch ? Beautify
- Interactive Beautification Igarashi, UIST 1997
17Interactive Beautification
18Interactive Beautification
Satisfied Constraints
Beautify.
19Interactive Beautification
Beautify.
20Interactive Beautification
Beautify.
21Ambiguity Handling
But free strokes are ambiguous.
22Ambiguity Handling
Generate multiple candidates ? Let the user select
23In this way,the user can constructprecise
geometric diagramswithout any editing commands!!
24Prototype System Pegasus
Live Demo
25Diagrams Drawn
26Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
27Beautification Systems
Pavlidis 1985 ...
28Beautification Systems (contd.)
Batch-based
too many errors!
More Interaction ( multiple candidates)
29Free Stroke Vectorization
Apple Newton SmartSketch ...
30Free Stroke Vectorization (contd.)
Local context
31Free Stroke Vectorization (contd.)
Global context
Local context
32Drawing Systems based on Geometric Constraints
Sutherland 1963 Nelson 1985 ...
33Drawing Systems based on Geometric Constraints
(contd.)
- Previous work
- Explicitly specify constraints
- Our approach
- Infer constraints
34Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
35Beautification Algorithm
36Constraint Inference
- Input
- Reference segments
- (array of (X0, Y0, X1, Y1))
- New stroke
- (x0, y0, x1, y1)
- Output
- Possible constraints
- (linear equations of (x0, y0, x1, y1))
Perpendicular const (x1 x0) const (y1
y0) 0 Edge Connection x0 const, y0
const etc.
(x1, y1)
(x0, y0)
37Constraint Inference (contd.)
- How?
- Supported constraints
if (distance(point1, point2) lt 30) infer
constraint(point1 point2)
38Constraint Solver
- Input
- Possible constraints
- (linear equations of (x0, y0, x1, y1))
- Output
- Beautification candidates
- (array of (x0, y0, x1, y1))
Perpendicular
Same Length
Edge Connection
Horizontal
39Constraint Solver (contd.)
40Candidate Evaluation
Candidate nearest to the original stroke ?
Primary candidate
41Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
42Purpose
To confirm the intuition !
Its difficult for novice users to use
commands
Interactive beautification is good
43Two Measures
44Experimental Settings
- 18 subjects
- 3 diagrams, 3 editors (9 sessions / person)
45Systems
- CAD ... AutoSketch (AutoDesk),
CAD Software. - Draw ... SmartSketch (Future Wave),
Drawing Editor. - PegasusOur Prototype system.
On AMiTY (a pen computer)
46Diagrams and Constraints
B)
C)
A)
Parallel-1
Symmetric-1
Parallel-1
Parallel-2
Symmetric-2
Parallel-2
Connected (all Vertices)
Perpendicular
Equal Interval
Vertical and Horizontal
Connected (all Vertices)
Connected (all Vertices)
47Results
Precision
Rapidness
Averaged drawing time for three diagrams
The ratio of sessions where all constraints are
satisfied
100
600
500
80
400
60
300
40
200
20
100
0
0
CAD
Draw
CAD
Draw
Pegasus
Pegasus
- Pegasus outperformed CAD and Draw,
- in both rapidness and precision.
48Evaluation Conclusion
- Pegasus cannot do everything
- But certainly useful in its target domain
CAD
Paint
Geometric diagrams, rapidly precisely!
49Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
50Ongoing Work
- Address limitations of Pegasus
- Only lines
- Too many candidates
- Forgets constraints
51Limitation Only Lines
- ? Support curves
- Circles, ellipses, arcs,
- Bézier curves
- (Experimental demo)
52Limitation Only Lines (contd.)
- Challenges with curves
- More ambiguity
- Shape recognition
- Constraint inference
- Complex constraints how to represent?
- e.g. line tangent to piecewise Bézier curve
- Complex constraints how to solve efficiently?
- Exponential growth of candidate solutions
53Limitation Too Many Candidates
- ? Overlapping
- ? Constraint switching interface
- Visualize conflicting constraints
- Enable manual switching
- Challenges
- How to detect conflicting constraints efficiently?
54Limitation Forgets Constraints
- ? Remember constraints
- Maintain them during manipulation
- Chorus Hosobe 2001
Skewed ?
Stretch!
Stretch!
55Outline
- 1. Problem
- 2. Our Idea Demonstration
- 3. Related Work
- 4. Algorithm
- 5. Evaluation
- 6. Ongoing Study
- 7. Summary
56Summary
- Pegasus freehand drawing system
- User study showed promising results
- Geometric constraints play an important role in
sketch beautification - Further improvements to be made
57Thank you
- Papers demos available at
- http//www-ui.is.s.u-tokyo.ac.jp/