freehand drawing system based on geometric constraints kaisuke nakajima joint work with takeo...
TRANSCRIPT
Freehand Drawing Systembased on Geometric Constraints
Kaisuke Nakajima
Joint work with Takeo Igarashi
User Interface Research GroupThe University of Tokyo
Two Parts of the Talk
Introduction to Pegasus [Igarashi, UIST 1997 & CHI 1998]
Improvement attempts My current study Any comments greatly appreciated!
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Problem
Diagrams In documents, slides, … By drawing editors
Difficult to satisfy geometric relations!
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Our Idea
Sketching is easy!
Sketch Beautify Interactive Beautification [Igarashi, UIST 1997]
Sketch + Beautify
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Batch-based
too many errors!
More Interaction (+ multiple candidates)
Beautification Systems (contd.)
Drawing Systems based on Geometric Constraints (contd.) Previous work
Explicitly specify constraints
Our approach Infer constraints
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Beautification Algorithm
Constraint Inference
Segment coordinates
Multiple constraints
Constraint Solver
Multiple candidates
Candidate Evaluation
Primary candidate
Constraint 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.(x0, y0)
(x1, y1)
Constraint Inference (contd.)
How?
Supported constraints
if (distance(point1, point2) < 30) infer constraint(point1 == point2);
Constraint Solver
Input Possible constraints
(linear equations of (x0, y0, x1, y1))
Output Beautification candidates
(array of (x0, y0, x1, y1))
Perpendicular
Edge Connection
Same Length
Horizontal
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
To confirm the intuition !
“It’s difficult for novice usersto use commands”
“Interactive beautification is good”
Purpose
Systems
CAD ... AutoSketch (AutoDesk), CAD Software.
Draw ... SmartSketch (Future Wave), Drawing Editor.
Pegasus…Our Prototype system.On AMiTY (a pen computer)
Diagrams and Constraints
A) B) C)
Parallel-1
Parallel-2
Perpendicular
Vertical and Horizontal
Connected (all Vertices)
Symmetric-1
Symmetric-2Connected (all Vertices)
Parallel-1
Parallel-2
Equal Interval
Connected (all Vertices)
Results
Rapidness PrecisionAveraged drawing time for three diagrams
0100200300400500600
CAD Draw Pegasus020406080100
CAD Draw Pegasus
The ratio of sessions where all constraints are satisfied
Pegasus outperformed CAD and Draw,
in both rapidness and precision.
Evaluation: Conclusion
Pegasus cannot do everything
But: certainly useful in its target domain
CAD Paint
Geometric diagrams,rapidly & precisely!
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Limitation: 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
Limitation: Too Many Candidates
Overlapping…
Constraint switching interface Visualize conflicting constraints Enable manual switching
Challenges How to detect conflicting constraints efficiently?
Limitation: Forgets Constraints
Remember constraints Maintain them during manipulation Chorus [Hosobe 2001]
Stretch!
Stretch!
Skewed
Outline
1. Problem
2. Our Idea & Demonstration
3. Related Work
4. Algorithm
5. Evaluation
6. Ongoing Study
7. Summary
Summary
Pegasus: freehand drawing system User study showed promising results
Geometric constraints play an important role in sketch beautification
Further improvements to be made
Thank you
Papers & demos available athttp://www-ui.is.s.u-tokyo.ac.jp/