Professional Documents
Culture Documents
Bézier Surfaces
Oliver Barrowclough1
SINTEF Applied Mathematics
oliver.barrowclough@sintef.no
1
Joint work with Tor Dokken
Parametric and Implicit Representations
SP = {p(s1 , s2 ) : (s1 , s2 ) ∈ Ω}
SI = {x ∈ R3 : q(x, y , z) = 0}
Exact and Approximate Implicitization
and
max kg(s)k < .
s∈Ω
Applications of and Approaches to Approximate
Implicitization
Applications:
I Intersection algorithms - detecting self-intersections,
I Ray tracing,
a1=(1,0,0)
Bernstein Polynomials
For bivariate barycentric coordinates (s1 , s2 , s3 ), the triangular
Bernstein basis polynomials of degree n are:
n
n
Bj (s) = s1j1 s2j2 s3j3 , |j| = j1 + j2 + j3 = n.
j1 , j2 , j3
Multinomial coefficients:
n n n!
= = .
j1 , j2 , j3 j j1 !j2 !j3 !
Properties of Bernstein Polynomials
I Partition of unity:
X
Bin (β) = 1,
|i|=n
I Product rule:
n m
i j n+m
Bin (β)Bjm (β) = n+m
Bi+j (β),
i+j
c200
c110 c101
c020 c011 c002
Implicit Surfaces and Algebraic Distance
We define,
M = DT AD
and proceed, as in the original case to perform an SVD on M.
This gives a candidate for approximation.
We summarize as follows:
I First construct D as in original approximate implicitization
with vertices:
c200 = (1, 0, 0),
c110 = (0, 0, 0), c101 = (0, 0, 0),
c020 = (0, 1, 0), c011 = (0, 0, 0), c002 = (0, 0, 1).
M: B
B
B
B
1 1 1 23 1 1 23 1 1
1260 1575 9450 9450 1260 9450 9450 18900 2100 9450
31 C
C
C
C
B 1 1 1 23 1 1 1 1 23 31 C
`2´`2´ Z B 1260 9450 1575 9450 18900 9450 2100 1260 9450 9450 C
B C
B 1 23 23 16 23 1 31 23 31 67 C
i j 4 84 9450 9450 675 18900 2100 4725 18900 4725 3150
mi,j = Bi+j (p(s)) ds.
B C
`4´ B C
B 1 1 1 23 1 1 1 1 23 4 C
i+j Ω B
6300 1260 18900 18900 90 1260 84 6300 18900 675
C
M=B
B C
C
B 1 1 1 1 1 1 23 1 23 31 C
B 18900 9450 9450 2100 1260 1575 9450 1260 9450 9450 C
B C
Vector corresponding to B
B
B
23 23 1 31
18900 9450 2100 4725
1
84
23
9450
16 23 31 67
675 18900 4725 3150
C
C
C
the smallest singular 1 1 1 23 1 1 23 1 1 4
B C
B C
B 6300 18900 1260 18900 6300 1260 18900 90 84 675 C
value is:
B C
B 23 1 23 31 23 23 31 1 16 67 C
@ 18900 2100 9450 4725 18900 9450 4725 84 675 3150 A
4 31 31 67 4 31 67 4 67 22
675 9450 9450 3150 675 9450 3150 675 3150 525
bweak = (0.040, 0.568, 0.568, −0.093, 0.040,
0.568, −0.093, 0.040, −0.093, −0.010).
Example - Intersections with the Parametric
Surface
We can also make a combined approximation by averaging the
original and weak approximations. This has the prospect of
removing branches from the approximation.
Original intersection
Weak intersection
Combination
I Original approximation
interpolates corners
I All have different
intersections
I Can model behaviour to
requirements
Example - Surface with Singularities
I Questions?