SLIDE 1
B-Spline Blossoms CS 418 Interactive Computer Graphics John C. - - PowerPoint PPT Presentation
B-Spline Blossoms CS 418 Interactive Computer Graphics John C. - - PowerPoint PPT Presentation
B-Spline Blossoms CS 418 Interactive Computer Graphics John C. Hart The Blossoming Game B-Spline Rules for Setting Up the Board t =3 t =4 t =2 t =5 The Blossoming Game B-Spline Rules for Setting Up the Board 1. Create a knot vector (with
SLIDE 2
SLIDE 3
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end) knot vector: [0 1 2 3 4 5 6 7] t=2 t=3 t=4 t=5
SLIDE 4
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] t=2 t=3 t=4 t=5
SLIDE 5
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) t=2 t=3 t=4 t=5
SLIDE 6
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) t=2 t=3 t=4 t=5
SLIDE 7
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) t=2 t=3 t=4 t=5
SLIDE 8
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) t=2 t=3 t=4 t=5
SLIDE 9
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) t=2 t=3 t=4 t=5
SLIDE 10
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) p(5,6,7) t=2 t=3 t=4 t=5
SLIDE 11
The Blossoming Game
B-Spline Rules for Setting Up the Board
- 1. Create a knot vector
(with two extra values at each end)
- 2. Label each control vertex
with triples of knots knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) p(5,6,7) t=2 t=3 t=4 t=5
SLIDE 12
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) p(5,6,7) t=2 t=3 t=4 t=5
SLIDE 13
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3) p(4,4,4) p(5,5,5)
SLIDE 14
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve
- Where should the other
two control points go for the [2,3] segment? knot vector: [0 1 2 3 4 5 6 7] p(0,1,2) p(1,2,3) p(2,3,4) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3)
SLIDE 15
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve
- Where should the other
two control points go for the [2,3] segment?
- Need to find:
p(2,2,3) p(2,3,3) knot vector: [0 1 2 3 4 5 6 7] p(1,2,3) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3) p(2,3,4) p(0,1,2)
SLIDE 16
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve
- Where should the other
two control points go for the [2,3] segment?
- Need to find:
p(2,2,3) p(2,3,3) knot vector: [0 1 2 3 4 5 6 7] p(1,2,3) p(4,2,3) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3) p(0,1,2)
SLIDE 17
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve
- Where should the other
two control points go for the [2,3] segment?
- Need to find:
p(2,2,3) = 2/3 p(1,2,3) + 1/3 p(4,2,3) p(2,3,3) knot vector: [0 1 2 3 4 5 6 7] p(1,2,3) p(4,2,3) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3) p(2,2,3) p(0,1,2)
SLIDE 18
Bohm Blossoms
B-Spline Rules for Winning the Game: Convert a B-Spline to a Bezier Curve
- Bohm Algorithm
- Trick: Think of each segment
as a Bezier curve
- Where should the other
two control points go for the [2,3] segment?
- Need to find:
p(2,2,3) = 2/3 p(1,2,3) + 1/3 p(4,2,3) p(2,3,3) = 1/3 p(1,2,3) + 2/3 p(4,2,3) knot vector: [0 1 2 3 4 5 6 7] p(1,2,3) p(4,2,3) p(3,4,5) p(4,5,6) p(5,6,7) p(2,2,2) p(3,3,3) p(2,2,3) p(3,2,3) p(0,1,2)
SLIDE 19
Bohm Blossoms
- Where are the endpoints located?
p(0,1,2) p(1,2,3) p(4,2,3) p(3,4,5) p(2,2,3) p(3,2,3)
SLIDE 20
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,2,2) = p(3,3,3) = p(0,1,2) p(1,2,3) p(4,2,3) p(3,4,5) p(2,2,3) p(3,2,3)
SLIDE 21
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = p(3,4,3) = p(2,2,2) = p(3,3,3) = p(0,1,2) p(1,2,3) p(4,2,3) p(3,4,5) p(2,2,3) p(3,2,3)
SLIDE 22
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = p(3,4,3) = p(2,2,2) = p(3,3,3) = p(0,1,2) p(4,2,3) p(3,4,5) p(2,2,3) p(3,2,3) p(3,1,2)
SLIDE 23
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = p(2,2,2) = p(3,3,3) = p(0,1,2) p(3,1,2) p(3,4,5) p(3,2,3) p(2,1,2) p(4,2,3) p(2,2,3)
SLIDE 24
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = p(2,2,2) = p(3,3,3) = p(0,1,2) p(3,1,2) p(3,4,5) p(3,2,3) p(2,1,2) p(2,2,3) p(3,4,2)
SLIDE 25
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = 2/3 p(3,4,2) + 1/3 p(3,4,5) p(2,2,2) = p(3,3,3) = p(0,1,2) p(3,1,2) p(3,4,2) p(3,4,5) p(2,2,3) p(3,2,3) p(2,1,2) p(3,4,3)
SLIDE 26
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = 2/3 p(3,4,2) + 1/3 p(3,4,5) p(2,2,2) = p(3,3,3) = p(0,1,2) p(3,1,2) p(3,4,2) p(3,4,5) p(3,2,3) p(2,1,2) p(3,4,3) p(2,3,2)
SLIDE 27
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = 2/3 p(3,4,2) + 1/3 p(3,4,5) p(2,2,2) = 1/2 p(2,1,2) + 1/2 p(2,3,2) p(3,3,3) = p(0,1,2) p(3,1,2) p(3,4,2) p(3,4,5) p(2,2,2) p(2,3,2) p(3,2,3) p(2,1,2) p(3,4,3)
SLIDE 28
Bohm Blossoms
- Where are the endpoints located?
- Need to find:
p(2,1,2) = 1/3 p(0,1,2) + 2/3 p(3,1,2) p(3,4,3) = 2/3 p(3,4,2) + 1/3 p(3,4,5) p(2,2,2) = 1/2 p(2,1,2) + 1/2 p(2,3,2) p(3,3,3) = 1/2 p(3,2,3) + 1/2 p(3,4,3) p(0,1,2) p(3,1,2) p(3,4,2) p(3,4,5) p(2,2,2) p(2,3,2) p(3,2,3) p(2,1,2) p(3,4,3) p(3,3,3)
SLIDE 29
Bohm Blossoms
- Where are the endpoints located?
- Need to find: