hermite bicubic-surface-patch
TRANSCRIPT
Synthetic Surfaces
1) Hermite (Bicubic Surface) Patch
2) Bezier (Surface) Patch
3) B-Spline (Surface) Patch
4) Coons (Surface) Patch
5) Blending offset (Surface) Patch
6) Triangular (Surface) Patch
7) Sculptured (Surface) Patch
1
8) Rational surfaces (Surface) Patch
All these surfaces are based on polynomial forms.
Fourier series can also be used to approximate the surfaces instead. But they are not meant for general use. Because the facts are:
(i) they can approximate any curve, not just periodic
(ii) computations involved are high
Hermite Bicubic Surface
•The parametric bicubic surface patch connects four corner data
points and utilizes a bicubic equation.
•Therefore, 16 vectors or 16×3=48 scalars are required to
determine the unknown coefficients in the equation. How?
•Corner points=4, corner tangent vectors=4×2=8, corner twist
vectors=4.
2
∑∑= =
≤≤≤≤=3
0
3
0
10,10,),(i j
ji
ij vuvuCvuP
•The parametric equation of Hermite bicubic surface patch is
[ ] [ ]
==
≤≤≤≤=
2323
bygiven is [C]matrix t coefficien The
1][,1][
10,10],][[][),(
curve. cubic Hermite similar to expanded becan equation The
CCCC
vvvVuuuU
vuVCUvuP
TT
T
3
=
00010203
10111213
20212223
30313233
][
CCCC
CCCC
CCCC
CCCC
C
≤≤≤≤=
][][
follows. as definedmatrix condition boundary or geometry theis ][
curve. cubic Hermitefor definedalready matrix Hermite theis][ Here
10,10],[]][][[][),(
obtained. ispatch surface Hermite
bicubic ofequation following thetscoefficien for the solving and
equation parametric theinto conditionsboundary theApplying
01000100 vv
H
T
HH
T
PPPPPP
PPPP
B
M
vuVMBMUvuP
4
=
=
=
st vectorscorner twictorstangent ve-ucorner
ctorstangent ve-corner vpointscorner
][][
][][][
11101110
01000100
11101110
uvu
v
uvuvuu
uvuvuu
vv
PP
PP
PPPP
PPPP
PPPPB
][]][[][][),(
][]][][[][),(
][]][[][][),(
bygiven are surface the
onpoint any at tors twist vecand ectors tangent vThe
=
=
=
vTuT
vT
HH
T
v
T
H
u
H
T
u
VMBMUvuP
VMBMUvuP
VMBMUvuP
5
curve. cubic Hermitefor already
definedmatrix Hermite aldifferenti The][][
][]][[][][),(
==
=
v
H
u
H
vT
H
u
H
T
uv
MM
Here
VMBMUvuP
Influencing factors
on position and
[ ]
[ ]
=
=
)(
)(
)(
)(
)(
][)()()()(),(
)(
)(
)(
)(
][)()()()(),(
4
3
2
1
4321
4
3
2
1
4321
vF
vF
vF
vF
vF
BuFuFuFuFvuP
vF
vF
vF
vF
BuFuFuFuFvuP
v
uuuu
u
6
on position and
tangent vectors[ ]
[ ]
=
=
)(
)(
)(
)(
][)()()()(),(
)(
)(
)(
)(
][)()()()(),(
4
3
2
1
4321
4
3
2
1
4321
vF
vF
vF
vF
BuFuFuFuFvuP
vF
vF
vF
vF
BuFuFuFuFvuP
v
v
v
v
uuuu
uv
v
v
v
v
sssF
ssssF
sssF
sssF
)(
2)(
32)(
132)(
necessary. as v"" and u""both represent
commonly chosen tobeen has below s"" variableThe
23
4
23
3
23
2
23
1
−=
+−=
+−=
+−=
7
sssF
sssF
sssF
sssF
s
s
s
s
23)(
143)(
66)(
66)(
:are functions basis theof sderivative The
2
4
2
3
2
2
2
1
4
−=
+−=
+−=
−=
[ ] [ ]
[ ][ ]
+++=
+++=
==
+++=
=
=
==
)()()()(),0(
,
)()()()(),1(
zero. are (u)F ofrest 1,(u)F 1,u with edge on the,
)()()()(
)()()()(
)()()()(][0001),0(
zero. are (u)F ofrest 1,(u)F 0,u with edge On the
114103112101
i2
014003012001
432101000100
4321
i1
PvFPvFPvFPvFvP
Further
PvFPvFPvFPvFvP
Similarly
PvFPvFPvFPvF
vFvFvFvFPPPP
vFvFvFvFBvP
vv
vv
T
vv
T
Proof
8
=
+++=
+++=
)(
)(
)(
)(
][
),1(
),0(
),1(
),0(
)()()()(),1(
)()()()(),0(
4
3
2
1
114103112101
014003012001
vF
vF
vF
vF
B
vP
vP
vP
vP
Hence
PvFPvFPvFPvFvP
PvFPvFPvFPvFvP
u
u
uvuvuuu
uvuvuuu
=
=][][
][][][
11101110
01000100
11101110
01000100
uvu
v
uvuvuu
uvuvuu
vv
vv
PP
PP
PPPP
PPPP
PPPP
PPPP
B
Proof
[ ]
[ ]
=
=
)(
)(
)(
)(
)(
][)1()1()1()1(),1(
)(
)(
)(
)(
][)0()0()0()0(),0(
1
4
3
2
1
4321
4
3
2
1
4321
vF
vF
vF
vF
vF
BFFFFvP
vF
vF
vF
vF
BFFFFvP
=
11101110
01000100
11101110
01000100
][
uvuvuu
uvuvuu
vv
vv
PPPP
PPPP
PPPP
PPPP
B
9
[ ]
[ ]
=
=
)(
)(
)(
)(
][)1()1()1()1(),1(
)(
)(
)(][)0()0()0()0(),0(
4
3
2
1
4321
4
3
2
1
4321
vF
vF
vF
vF
BFFFFvP
vF
vF
vFBFFFFvP
uuuu
u
uuuu
u
[ ] [ ]
[ ][ ]
)()()()()0,(
,
)()()()()1,(
zero. are (u)F ofrest 1,(v)F 1, with vedge on the,
)()()()(
)()()()(
0001][)()()()()0,(
zero. are (u)F ofrest 1,(v)F 0, with vedge On the
114013112011
i2
104003102001
100010004321
4321
i1
PuFPuFPuFPuFuP
Further
PuFPuFPuFPuFuP
Similarly
PuFPuFPuFPuF
PPPPuFuFuFuF
BuFuFuFuFuP
uu
uu
T
uu
T
+++=
+++=
==
+++=
=
=
==
10
][
)(
)(
)(
)(
)1,(
)0,(
)1,(
)0,(
)()()()()1,(
)()()()()0,(
4
3
2
1
114013112011
104003102001
B
uF
uF
uF
uF
uP
uP
uP
uP
Hence
PuFPuFPuFPuFuP
PuFPuFPuFPuFuP
TT
v
v
uvuvvvv
uvuvvvv
=
+++=
+++=
Continuity of Blent Hermite Bicubic Patches
• Similar to the Hermite cubic splines, the Bicubic
Hermite patches give maximum C1 continuity from
one patch to the next, though they give C2 continuity
inside each of the patches.
• While blending two Bicubic Hermite patches, the
necessary conditions are:
11
– Same curves (C0 continuity) at the common edge
– Same direction of tangent vectors (C1 continuity) at the
common edge
– The magnitudes of the tangent vectors do not have to be
the same
Blending Two Hermite Patches along u edges
• [P(0,v)]patch2=[P(1,v)]patch1, C0 continuity
• [Pu(0,v)]patch2=K[Pu(1,v)]patch 1, C1 continuity
The B matrix for the
adjacent patches are
shown. Only these
elements need to be
constrained, rest could
be arbitrary for C1
12
be arbitrary for C1
continuity
HERMITE BICUBIC PATCH IS A “SIMPLE EXTENSION” OF THE HERMITE CUBIC CURVE
• There are two ways to prove it.
1) Substitute u=1 or v=1 in the parametric equation of the
Hermite patch, it degenerates to that of HCC.
13121110
03
30
02
20
01
10
00
00
3
0
3
0
),(
10,10,),(
vuCvuCvuCvuC
vuCvuCvuCvuCvuP
vuvuCvuPi j
ji
ij
++++
++++=
≤≤≤≤=∑∑= =
13
3
3
2
210
33
33
32
23
31
13
30
03
23
32
22
22
21
12
20
02
13
31
12
21
11
11
10
01
),(
HCC. toreducesit cases, 1 vand 0 vofeach For
uCuCuCCvuP
vuCvuCvuCvuC
vuCvuCvuCvuC
vuCvuCvuCvuC
+++=
==
+++
++++
++++
• The second way to prove is:
2) Let u edges coincide. P00 coincides with P10, and P01 coincideswith P11. Pv00=Pv10 and Pv01=Pv11. All four twist vectors will bezero. Pu00=Pu10= Pu01=Pu11=0.
[ ]
4
3
2
1
01000100
01000100
)(
)(
)(
)(
0000
00000001),0(
,0
vv
vv
vF
vF
vF
vF
PPPP
PPPP
vP
uFor
=
=
14
[ ]
014003012001
4
3
2
1
01000100
01000100
014003012001
4
)()()()()(),1(
)(
)(
)(
)(
0000
00000010),1(
,1
)()()()()(),0(
)(0000
vv
vv
vv
vv
PvFPvFPvFPvFvPvP
vF
vF
vF
vF
PPPP
PPPP
vP
uFor
PvFPvFPvFPvFvPvP
vF
+++==
=
=
+++==
===
++=+++
++++
++++
++++
++==∑∑= =
matrix, [B]resultant The zero. toequal are allrest
ˆ;ˆ;
ˆˆ
ˆˆ),(
0110000
0
33
33
32
23
31
13
30
03
23
32
22
22
21
12
20
02
13
31
12
21
11
11
10
01
03
30
02
20
01
10
00
00
0
3
0
3
0
C
sLCrLCPC
Hence
svLruLPvuCvuCvuCvuC
vuCvuCvuCvuC
vuCvuCvuCvuC
vuCvuCvuCvuC
svLruLPvuCvuP
ij
vu
vu
vu
i j
ji
ij By equivalence, find the bicubic
planar surface patch.
15
+++
+
=
=
00ˆˆ
00ˆˆ
ˆˆˆˆˆ
ˆˆˆ
[B]
be togoing is
][]][][[][),(
thebuildyou when
matrix, [B]resultant The zero. toequal are allrest
00
00
rLrL
rLrL
sLsLsLrLPrLP
sLsLsLPP
VMBMUvuP
C
uu
uu
vvvuu
vvv
T
HH
T
ij
Can you prove it?