Implicit Surface Modeling
Hongxin Zhang and Jieqing Feng
2007-01-04
State Key Lab of CAD&CG
Zhejiang University
Contents
Introduction of Implicit Surface Modeling
Implicit Surface Modeling for Computer
Graphics and Animation: Field Function
Defined Implicit Surface
Quadric Surfaces
Download Course
01/04/2007 State Key Lab of CAD&CG 2
Introduction of Implicit Surface
Modeling
What is implicit surface?
Comparison: implicit v.s. parametric
surfaces
Implicit methods for graphics and
animation
Implicit methods for CAD/CAM
Other topics in implicit modeling
01/04/2007 State Key Lab of CAD&CG 3
What is implicit surface?
Implicit surfaces are two-dimensional,
geometric shapes that exist in three
dimensional space.
Defined in R3:
2-D manifold:
A surface embedded in R3
Infinitesimal neighborhood around any point on the
surface is topologically equivalent ( locally
diffeomorphic) to a disk.
01/04/2007 State Key Lab of CAD&CG 4
What is implicit surface?
2D manifold can be
bounded (or closed): sphere
Unbounded: plane
A manifold with boundary: topologically
equivalent to either a disk or a half-disk
locally.
Nonmanifold
Manifold Manifold with boundary Nonmanifold
01/04/2007 State Key Lab of CAD&CG 5
What is implicit surface?
Manifold or not? Eule-Poincar formula
v-e+f=2-2h
v: number of vertices
e: number of edges
f: number of faces
h: number of holes
01/04/2007 State Key Lab of CAD&CG 6
Examples of implicit surfaces
Metaball Skeleton Surface Convolution
and Metaball Surface
01/04/2007 State Key Lab of CAD&CG 7
Examples of implicit surfaces
Quadric Surface A-Patch Compactly
Supported Radial
Basis Functions
01/04/2007 State Key Lab of CAD&CG 8
Definition of implicit surface
Definition
{p=(x,y,z): f(p)=0, pR3}
Implicit function f : three classes of
specification (definition)
Discrete sampling: a set of points on or within an object
Mathematical function: one or more equations are used to
compute the coordinates of points on or within an object
Procedural methods: an algorithmic process computes
points on or within an object
01/04/2007 State Key Lab of CAD&CG 9
Algebraic Function
Algebraic surface: when f is algebraic
function, i.e., polynomial function
The coefficients are not unique
f=ax+by+cz=0
a=b=c=1
a=b=c=1/3
Algebraic distance: The value of f(p) is the
approximation of distance from p to the
algebraic surface f=0
01/04/2007 State Key Lab of CAD&CG 10
Transcendental Function
Transcendental Function
Trigonometric, exponential, logarithmic,
hyperbolic functions, etc.
Approximated by convergent power series:
Taylor series
01/04/2007 State Key Lab of CAD&CG 11
Definition of implicit surface
Regular point p on the surface
f (p) =(f/x, f/y, f/z) 0
For cone, 0 is not the regular value for f
The cone f=-x2+y2+z2 is regular with the exception of a
singularity at the origin (0,0,0).
01/04/2007 State Key Lab of CAD&CG 12
Mathematical Foundation
Implicit Function Theorem:
if 0 a regular value of continuous function f(p),
the implicit surface f-1(0) is a two-dimensional
manifold
Jordan-Brouwer Separation Theorem
A 2D manifold separates R3 into surface itself
and two connected open sets: an infinite(finite)
`outside' and a finite(infinite) inside'.
01/04/2007 State Key Lab of CAD&CG 13
Mathematical Foundation
f > 0 outside
f < 0 inside f = 0 surface
f (x,y,z) -1=x2+y2+z2-1 f (x,y,z) = x2+y2+z2
01/04/2007 State Key Lab of CAD&CG 14
Implicit v.s. Parametric Surfaces
01/04/2007 State Key Lab of CAD&CG 15
Complex Surface Modeling
Complex surface constructed by
smoothly joined B-spline surface
patches Complex surface constructed by
convolution surface method
01/04/2007 State Key Lab of CAD&CG 16
Surfaces Intersection
Parametric Surface Intersection Implicit Surface Intersection
01/04/2007 State Key Lab of CAD&CG 17
Tessellation
Up: tessellation of implicit surface
Bottom: tessellation of NURBS
surface
01/04/2007 State Key Lab of CAD&CG 18
Blending or rounding
Left: Blending by using parametric surface
Right: Blending by using implicit surface
01/04/2007 State Key Lab of CAD&CG 19
Texture mapping
Texture mapping for NURBS surface Texture mapping for implicit surface
01/04/2007 State Key Lab of CAD&CG 20
Solid Modeling
Solid Modeling via NURBS Surface Solid Modeling via Implicit Surface
01/04/2007 State Key Lab of CAD&CG 21
Implicit v.s. Parametric Surfaces
Implicitization:
Parametric Implicit
representation representation
Parameterization
Implicit Parametric
representation representation
01/04/2007 State Key Lab of CAD&CG 22
About conversions
Implicitization
Any rational parametric surface can be implictized by
elimination of parameters in the parametric form
Implicitization is often computational demanding
The degree of implicit form is higher than its
parametric form, the implicit representation of
A parametric triangular patch of degree n is degree n2
A tensor product surface of degree m by n is degree 2mn
The number of terms in algebraic surface of degree n is 3C n2
(bicubic patch is degree 18, with 1330 terms!)
Approximated implicitization
01/04/2007 State Key Lab of CAD&CG 23
About conversions
Parameterization: not always possible
Algebraic surfaces of fourth and higher
degree cannot be parameterized by rational
functions
Parameterization is always possible for non-
degenerate quadrics and for cubics that have
a singular point.
01/04/2007 State Key Lab of CAD&CG 24
Example:sphere
Trigonometric:
f(,)=(coscos, cossin, sin)
[0,], [0,2]
Rational:
x=4st, y=2t(1-s2), z=(1-t2)(1+s2), w=(1+t2)(1+s2)
Implicit:
f(x,y,z)=x2+y2+z2-1
01/04/2007 State Key Lab of CAD&CG 25
Example: sphere
Points on the parametrically defined
sphere are readily found by substitution of
and into the equations for x, y, and z
(similarly for s and t).
The mapping from parametric space to
geometric space is convenient.
There is no obvious mapping for implicit
form!
01/04/2007 State Key Lab of CAD&CG 26
Implicit methods for graphics and
animation
Blobby (metaball, soft objects)
Implicit surface defined by skeletons
Distance surface
Convolution surface
Variational Implicit Surfaces
Level-Set Methods
Procedural Models
Animation applications
01/04/2007 State Key Lab of CAD&CG 27
Blobby (metaball, soft objects)
01/04/2007 State Key Lab of CAD&CG 28
Implicit surface defined by
skeletons
01/04/2007 State Key Lab of CAD&CG 29
Variational Implicit Surfaces
01/04/2007 State Key Lab of CAD&CG 30
Level-Set Surface Models
01/04/2007 State Key Lab of CAD&CG 31
Procedural Models
01/04/2007 State Key Lab of CAD&CG 32
Reconstruction
The polygonal
bunny model was
approximated by
metaballs.
01/04/2007 State Key Lab of CAD&CG 33
Animation applications
01/04/2007 State Key Lab of CAD&CG 34
Implicit methods for CAD/CAM
Quadric surface
Algebraic surface patches
A-patch
Tensor-product algebraic surface patches
01/04/2007 State Key Lab of CAD&CG 35
Quadric Surface
01/04/2007 State Key Lab of CAD&CG 36
A-patch: Algebraic Surface Patch
01/04/2007 State Key Lab of CAD&CG 37
A-patch: Algebraic Surface Patch
01/04/2007 State Key Lab of CAD&CG 38
Tensor-product algebraic surface
patches
01/04/2007 State Key Lab of CAD&CG 39
Tensor-product algebraic surface
patches
01/04/2007 State Key Lab of CAD&CG 40
Other Topics in Implicit
Modeling
Functional representation
Visualizing implicit surfaces
Animation by using implicit models
Texture mapping
01/04/2007 State Key Lab of CAD&CG 41
Functional Representation (F-
rep)
F-rep: denfines a whole geometric object
by a single real continuous function of
several variables as F(X)0
At least C0 continuous
F: a formula or an evaluation procedure
F-rep: combines classic implicits, skeleton
based implicits, set-theoretic solids, sweeps,
volumetric objects, parametric and procedural
models
01/04/2007 State Key Lab of CAD&CG 42
Functional Representation (F-
rep)
Set-theoretic operations Relations
Blending set-theoretic Sweeping by a moving
operations solid
Offsetting Deformation with
Cartesian product algebraic sums
Bijective mapping Three-dimensional
Metamorphosis texture modeling
Interaction
01/04/2007 State Key Lab of CAD&CG 43
F-rep: examples
Moving solid
Artistic shape modeling using real functions
01/04/2007 State Key Lab of CAD&CG 44
F-rep: hairs
Using real functions with application to hair modeling
01/04/2007 State Key Lab of CAD&CG 45
Visualizing implicit surfaces
Polygonization: Generation of polygons
from implicit surface or volume data
Uniform
Adaptive
Ray tracing
Classical
Sphere tracing
Particle system
01/04/2007 State Key Lab of CAD&CG 46
Uniform Polygonization
A sphere approximated from depths 1 through 5.
01/04/2007 State Key Lab of CAD&CG 47
Adaptive Polygonization
01/04/2007 State Key Lab of CAD&CG 48
Polygonization of non-manifold
01/04/2007 State Key Lab of CAD&CG 49
Classic Ray Tracing
01/04/2007 State Key Lab of CAD&CG 50
Sphere tracing
01/04/2007 State Key Lab of CAD&CG 51
Sphere tracing
01/04/2007 State Key Lab of CAD&CG 52
Particle system: display and control
[Link]
01/04/2007 State Key Lab of CAD&CG 53
Field Function Defined Implicit
Surface
Field Function in 3D
Simple Control Primitives: point etc.
Blobby Molecules
Metaball
Soft Objects
Discussion and Extensions
Skeletal Primitives
Distance surface
Convolution surface
01/04/2007 State Key Lab of CAD&CG 54
Field Function in 3D
Consider implicit surface
D(x,y,z)-Iso=0
D is called scalar field function
Distance field is one of good choice
Distance to a Curve: 3 and 9 linear segments
01/04/2007 State Key Lab of CAD&CG 55
Example of Distance Field
Consider function D(r)=1/r2 , control points in 3D space,
where r is the distance to one control points
The total field strength at any point in space is the sum
of the field strengths due to each control point
01/04/2007 State Key Lab of CAD&CG 56
Example of Distance Field
Changing control points as line segments
Simple summation
of distance fields
will result in bulge!
01/04/2007 State Key Lab of CAD&CG 57
Blobby Molecules by Blinn
Second Graphics Fellow at
Microsoft
1983 -- The first Siggraph
Computer Graphics Achievement
Award for work in lighting and
surface modeling techniques.
1989 -- IEEE Outstanding
Contribution Award for Jim Blinn's
Jim Blinn corner
[Link]
01/04/2007 State Key Lab of CAD&CG 58
Blobby Molecules
Hydrogen atoms electron density fields
(Gaussian Distribution)
br 2
D ( r ) = ae
"b" : standard deviation of Gaussian curve
"a" : height of Gaussian Curve
r : the distance to atom center, r0
2D Gaussian Function 1D Gaussian Function
01/04/2007 State Key Lab of CAD&CG 59
Multiple Blobby Molecules
The overall density at a given point for multiple
atoms is summation of individual ones:
D ( p ) = ai e bi r 2
= Iso
i
The blobbiness of a model can be controlled by
adjusting the parameters ai and bi.
ai is weight/strength of ith blobby molecule
bi is influence radius of ith blobby molecule
The implicit surface is defined as all points where the
density is equal to some threshold value Iso.
01/04/2007 State Key Lab of CAD&CG 60
Examples of Blobby Models
01/04/2007 State Key Lab of CAD&CG 61
Blobby Molecules
Disadvantages of Blobby Molecules
Exponential distribution of density is Global
Computationally expensive!
Blinn: Cut off after r >R
R
01/04/2007 State Key Lab of CAD&CG 62
Metaball by Nishimura
Nishimura at Osaka University in
Japan proposed Metaball in 1983
(Almost same with Blinn)
01/04/2007 State Key Lab of CAD&CG 63
Metaball by Nishimura
Piecewise quadrics to approximate the Gaussian
function
3r 2
a 1 2 0 r b/3
b
3a 2
r
D(r ) = 1 b/3 r b
2 b
0 r b
"b" : Influence radius of metaball
"a" : weight of metaball
r : the distance to metaball center, r0
01/04/2007 State Key Lab of CAD&CG 64
Metaball Systems
The system is composed of several
metaball
D ( p ) = Di ( p ) = Iso
i
Each metaball has its own parameters (ai, bi)
Fusion effects
01/04/2007 State Key Lab of CAD&CG 65
Examples of Metaballs
01/04/2007 State Key Lab of CAD&CG 66
Metaball
Advantages
Field function is locally defined in [0,b]
Fast ray and metaball intersection
computation!
Disadvantage
Distance r: square root , expensive
01/04/2007 State Key Lab of CAD&CG 67
Soft Object by Wyvill Brothers
Soft objects is proposed by Wyvills in Canada
and New Zealand: truncated Taylor expansion
series of exponential function
Brian Wyvill Geoff Wyvill
01/04/2007 State Key Lab of CAD&CG 68
Field Function for Soft Object
Definition
4r6 17r4 22r2
a1 6 + 4 2 r b
D(r) = 9b 9b 9b
0 r >b
The function has following properties
D(0)=1, D(b)=0, D(b/2)=0.5, C(0)=C(b)=0
The volume bounded by D(r)<m is one half of that
bounded by D(r)<m/2
01/04/2007 State Key Lab of CAD&CG 69
Examples of Soft Objects
01/04/2007 State Key Lab of CAD&CG 70
Examples of Soft Objects
Two blend soft objects with different threshold: 84, 44, 24, 11
25 balls, threshold is 0.5 Trains modeled by soft objects
01/04/2007 State Key Lab of CAD&CG 71
Soft Object
Advantages
Only square term of the distance r, square
root computation is removed!
Finite extent of each ball
Computational costs:
Blobby >> Metaball > Soft object
01/04/2007 State Key Lab of CAD&CG 72
Discussions
The functions described here guarantee a continuously
and smoothly changing surface
Comparison of four field functions
rt rmax
The blending function can be designed freely!
01/04/2007 State Key Lab of CAD&CG 73
Extensions
Minus primitives: set weight negative
01/04/2007 State Key Lab of CAD&CG 74
Applications of Metaball
Shape approximation and representation by metaballs
01/04/2007 State Key Lab of CAD&CG 75
Skeletal Primitives
Disadvantage of point primitives: flat
surfaces can only be approximated.
Evenly spaced grid of metaballs(16): threshold is 1.66 or 0.5
01/04/2007 State Key Lab of CAD&CG 76
Skeletal Primitives
The use of complex skeletons is one possible
solution to this problem.
Point can be replace as lines, polygons, curves,
surfaces , volumes and any other complex geometric
skeletons
The shape of a primitive follows the shape of its
skeletons
Two Approaches
Distance surfaces
Convolution Surfaces
01/04/2007 State Key Lab of CAD&CG 77
Examples of Skeletal Primitives
skeletons
skeletons
contour line drawing
ray traced image
01/04/2007 State Key Lab of CAD&CG 78
Examples of Skeletal Primitives
Complex skeletons: ellipsoid, sphere, line segments, points
01/04/2007 State Key Lab of CAD&CG 79
Distance surface
A distance surface is a surface that is
defined by distance to some set of base
skeleton elements
Union of skeletons: Distance surface to the union of
skeletons
Union of primitive surfaces: Boolean operation
Blending of primitive surfaces: Algebraic blending
01/04/2007 State Key Lab of CAD&CG 80
Union of Skeletons
Definition
s p 2
f ( S , p ) = max sS exp
2
S is the skeleton set
s is the point on one of the skeleton
max: maximum field value, nearest point on
the skeleton
Field function can be specified as before,
not restricted as exponential function
01/04/2007 State Key Lab of CAD&CG 81
About Union of Skeletons
Distance surface is rounded when skeleton is convex.
Distance surface is tangent discontinuous and exhibits a
crease when the skeleton is concave
Left: curve shown as dashed and distance shown as greyscale intensity
middle and right: curve approximated by three and nine segments
01/04/2007 State Key Lab of CAD&CG 82
Union of Distance Surfaces
Union of distance surface is defined as
weighted union of each primitive surface
Definition
Ftotal ( p ) = i ci Fi ( ri )
ci: weight, positive or negative
Fi: field function as before
ri: the distance from p to the nearest point on
the i-th skeleton.
01/04/2007 State Key Lab of CAD&CG 83
About Union of Distance Surfaces
Simple union of distance surfaces will
produce bulges and creases may area
where the skeletons meet.
01/04/2007 State Key Lab of CAD&CG 84
Algebraic Blends of Primitives
To eliminate creases or bulge , the primitive
volumes (metaball ) must form a blend, rather
than a union.
What is blending: smooth transition along
common boundary among several primitives
01/04/2007 State Key Lab of CAD&CG 85
Blending Functions (1)
Super-elliptical Blending
P1, P2 are algebraic distances to skeletal
elements 1 and 2, usually C1 continuous
r1 and r2 are the ranges of influence for
primitives P1 and P2
[x]+ is max (0, x), and t is the thumbweight.
01/04/2007 State Key Lab of CAD&CG 86
Example of Blending
Functions (1)
Super-elliptical Blending of sphere and cylinder primitives (t=3)
01/04/2007 State Key Lab of CAD&CG 87
Example of Blending
Functions (1)
Super-Elliptic Blend of Two Cylinders
There is a bulge where the cylinders intersect.
01/04/2007 State Key Lab of CAD&CG 88
Blending Functions (2)
Improved Super-elliptical Blending
: the angle between the gradients of the two
primitives at a point p:
The influence range is diminished according
to
01/04/2007 State Key Lab of CAD&CG 89
Blending Functions (2)
= 0 the range is fully diminished and the simple
union of the primitives results
= 90(concave condition), the range is undiminished,
and a blend occurs.
To avoid enlarging the primitive ranges, cos() must
be nonnegative
simple union bulging blend use of cos use of nonnegative cos
01/04/2007 State Key Lab of CAD&CG 90
Blending Functions (3)
Super-elliptical blend is extended to k
primitives:
01/04/2007 State Key Lab of CAD&CG 91
Convolution Surface
A bulge-free implicit blend technique
The convolution surface treats a skeleton
S as a set of points, each of which
contributes to the implicit surface function
according to its distance to p.
01/04/2007 State Key Lab of CAD&CG 92
Convolution Surface
Blobby systems by Blinn
where si is a point on the skeleton, c is threshold
(constant)
01/04/2007 State Key Lab of CAD&CG 93
Convolution Surface
If S = {si} is a set of infinitesimally spaced
points, f can be expressed as an integral:
where u ranges over all points on the
skeleton. It defines a convolution surface
Gaussian function is a 3D filter/kernel
S = {si} can be any skeletons: point, line,
curve, surface, volumes etc.
01/04/2007 State Key Lab of CAD&CG 94
About Convolution Surface
The convolution has been applied
extensively in the processing of 1D audio
signal, 2D image, 3D volume image.
The convolution scaled the frequency
components of the signal via filter(kernel)
Low-pass filter: smoothing effect, e.g.,
Gaussian kernel
High-pass filter: enhance detail effect
01/04/2007 State Key Lab of CAD&CG 95
Gaussian Kernels
Gaussian Kernels: left: one-dimensional, right: two-dimensional
Infinite Sum is a Convolution
01/04/2007 State Key Lab of CAD&CG 96
About Convolution Surface
The convolution is a linear operator:
h ( s1 + s2 ) = h s1 + h s2
It is property of superposition
The sum of the convolutions of any division of
a skeleton is identically equal to the single
convolution of the entire skeleton
The convolution surface is a smooth
shape without introducing bulges.
01/04/2007 State Key Lab of CAD&CG 97
Illustration of Superposition
The superposition Property: The two line segment are brought
together (left); sum of convolutions of the two segments (right),
convolution of single segment (bottom)
Two Segments Convolved with the Gaussian Kernel
01/04/2007 State Key Lab of CAD&CG 98
About Convolution Surface
Along convex portions of the skeleton the surface
mimics the union operator
Along concave portions, the surface yields a blend.
For isolated convex skeletons, such as triangles or
segments, convolution produces surfaces of similar
shape to distance surfaces.
For complex skeletons, however, convolution yields
crease-free surfaces with adjacent primitives blending
without seam or bulge.
01/04/2007 State Key Lab of CAD&CG 99
Gaussian kernel
For standard Gaussian kernel:
x2
1
2
e 2
dx = 1
A signal modified by such a kernel will
maintain its original energy!
1
1/2
Convolution of a box with unit-integral kernel
01/04/2007 State Key Lab of CAD&CG 100
Energy Discussion in Convolution
Because the Gaussian is symmetric, the
convolution equals where the box function
undergoes transitions
For an iso-surface contour level of , the convolution
surface will pass through the endpoints of skeletal
segments and through the edges of skeletal polygons.
A kernel with integral less (greater) than one
would attenuate (amplify) a signal
01/04/2007 State Key Lab of CAD&CG 101
Gaussian kernel
Advatnages of Gaussian Kernel
C Smooth
Unit integral
Separable
Disadvantages of Gaussian Kernel
Globally Defined on the R1,2,3
Cannot be analytical integrated, only numerically
approximated
01/04/2007 State Key Lab of CAD&CG 102
Examples of Convolution Surfaces
Two Segments Convolved with the Gaussian Kernel
01/04/2007 State Key Lab of CAD&CG 103
Examples of Convolution Surfaces
Threshold=1.0, 0.75, 0.5, 0.35
Line segment and arc skeletons
01/04/2007 State Key Lab of CAD&CG 104
Examples of Convolution Surfaces
Convolution Surface
Convolution Surface: Hand Crafted by Jules Bloomenthal
01/04/2007 State Key Lab of CAD&CG 105
Other kernels: Sinc Kernel
Sinc kernel is : sin(x)/x.
The Sinc Kernel
The sinc is the ideal low-pass filter: its Fourier
transform is the box function.
Cutoff frequency effect
01/04/2007 State Key Lab of CAD&CG 106
Other kernels: Sinc Kernel
Problem with sinc kernel: none monotonically
Convolution with Gaussian (left) and Sinc (right)
Monotonicity of the kernel is a necessary
property for a satisfactory convolution surface
Ringing of the filter may introduce a spurious contour
01/04/2007 State Key Lab of CAD&CG 107
Other kernels: B-spline Kernels
B-spline kernel has similar shape with
Gaussian
hB-spline(0)=2/3, hB-spline(0.72235)1/2
The support of kernel is 2
The integral of B-Spline kernel is 1, not separable
01/04/2007 State Key Lab of CAD&CG 108
Other kernels: Wyvill Kernels
Wyvill kernel also has similar shape with
Gaussian
hWyvill(x) = (9-4x6+17x4-22x2)/9.
After scale: hWyvill(0)=1, hWyvill(1)=1/2
The integral of Wyvill kernel is 1
The support of kernel is 1
Not separable
Wyvill kernel (red)
01/04/2007 State Key Lab of CAD&CG 109
Other kernels: Modified Wyvill
Kernels
Modified Wyvill kernel also has similar
shape with Gaussian
hNewWyvill(x) = (1-x2)3.
After scale: hWyvill(0)=1
The integral of Modified Wyvill kernel is 1
The support of kernel is 1
Not separable
Modified Wyvill kernel (blue)
01/04/2007 State Key Lab of CAD&CG 110
Compare the different kernels
Comparison of Filter Kernels after scale
upper (in black): the Gaussian kernel, e-0.69314715x2
middle (in red): the B-spline kernel, (1.5)hBspline(0.72235x)
lower (in blue): the Wyvill kernel, hWyvill(0.5x)
01/04/2007 State Key Lab of CAD&CG 111
Computation of Convolution
The Gaussian is separable and spherically
symmetric
Integration by part!
B-spline and Wyvill kernel is not separable
summation of point source terms
the product of integration and distance filters.
01/04/2007 State Key Lab of CAD&CG 112
Computation of Convolution
Approximations to B-
Spline Convolution
left: summation of point
sources
right: product of filters
Approximations to
Wyvill Convolution
left: summation of point
sources
right: product of filters
01/04/2007 State Key Lab of CAD&CG 113
Computation of Convolution
Gaussian Convolution
approximation for 3, 7,
and 15 Segments (left) or
Points (right)
01/04/2007 State Key Lab of CAD&CG 114
Ramification Modeling
A Two-Ramiform with
Constant Radii
A Trifurcated Ramiform
01/04/2007 State Key Lab of CAD&CG 115
Please Enjoy More Examples of
Convolution Surface
01/04/2007 State Key Lab of CAD&CG 116
Please Enjoy More Examples of
Convolution Surface
Snowflake
01/04/2007 State Key Lab of CAD&CG 117
Potted plant
01/04/2007 State Key Lab of CAD&CG 118
Maple tree
01/04/2007 State Key Lab of CAD&CG 119
Please Enjoy More Examples of
Convolution Surface
A gourd shape
01/04/2007 State Key Lab of CAD&CG 120
Please Enjoy More Examples of
Convolution Surface
A dinosaur
01/04/2007 State Key Lab of CAD&CG 121
Please Enjoy More Examples of
Convolution Surface
An cartoon enforcer
01/04/2007 State Key Lab of CAD&CG 122
Quadric Surfaces
Basics of Quadric Surfaces
Properties of Quadric Surfaces
Representation of Quadric Surfaces
Applications of Quadric Surfaces
01/04/2007 State Key Lab of CAD&CG 123
Basics of Quadric Surfaces
A general quadric surface is
Ax2 + By2 + Cz2 + 2Dxy + 2Exz + 2Fyz +2Gx +
2Hy + 2Jz + K = 0
Its matrix representation
{x | F(x) = xTQx = 0}
where
01/04/2007 State Key Lab of CAD&CG 124
Basics of Quadric Surfaces
There are nine types of general quadrics according
coefficients of this algebraic equation
Ellipsoid
Elliptic cone
Cylinder (elliptic, parabolic, hyperbolic)
Hyperboloid (of 1 sheet, of 2 sheets)
Paraboloid (elliptic, hyperbolic)
Degenerated cases
point, plane, parallel planes,
Invalid shapes
imaginary quadric, intersecting imaginary planes, imaginary
parallel planes
01/04/2007 State Key Lab of CAD&CG 125
Sketches of General Quadric
Surfaces
01/04/2007 State Key Lab of CAD&CG 126
Natural Quadrics
Natural Quadrics: subset of general
sphere (special case of ellipsoid)
right circular cone (special case of elliptic
cone)
right circular cylinder (special case of elliptic
cylinder)
Planes
01/04/2007 State Key Lab of CAD&CG 127
Natural Quadrics
Natural quadrics are by far the most popular set
of quadric: Prismatic Solid
Mechanical CAD domains
01/04/2007 State Key Lab of CAD&CG 128
Quadric Surface Patches
Pieced together with tangent plane (G1)
continuity to create free-form shapes
Some complex free-form solids modeled with quadric algebraic patches: (a) a
genus five solid with 2,400 quadratic algebraic patches, (b) a bone head, the
entire bone was modeled with 5,696 quadratic algebraic patches, and (c) a
knot modeled with 6,912 quadratic algebraic patches.
01/04/2007 State Key Lab of CAD&CG 129
Quadric Surface Patches
(a) A vase modeled with 336 quadratic algebraic patches, rendered
with transparency to show some of its trunctets. (b) The same vase in
an environment with multiple light sources and participating media.
01/04/2007 State Key Lab of CAD&CG 130
Properties of Quadric Surfaces
Let QA (QB) denotes the matrix representation of
quadric surface in frame A(B), M denotes an
affine transformation from frame A to from B
Then the transformation of quadrics is
QB=MTQAM
01/04/2007 State Key Lab of CAD&CG 131
Properties of Quadric Surfaces
Let Qu denotes upper-left 33 sub-matrix of Q
The rank of both Q and Qu are invariant under affine
transformation
The type of quadric surface is invariant under affine
transformations
The quadric surfaces are invariant under rigid
motions
01/04/2007 State Key Lab of CAD&CG 132
Characteristic Function
Characteristic functions are
Det(Q-I) Det(Qu-I)
Invariant under rigid motion
Used for classifying the type of quadrics
according to its eignvalues
01/04/2007 State Key Lab of CAD&CG 133
Characteristic Function (1)
01/04/2007 State Key Lab of CAD&CG 134
Characteristic Function (2)
01/04/2007 State Key Lab of CAD&CG 135
Types of Quadric Surfaces
Types are decided by using a decision tree
01/04/2007 State Key Lab of CAD&CG 136
Ruled Quadric Surfaces
Ruled Quadric Surfaces
A family of straight lines can be found which
lie entirely on the quadric surface
cylinders, cones, hyperbolic paraboloid,
hyperboloid of one sheet
01/04/2007 State Key Lab of CAD&CG 137
Pencils of two Quadric Surfaces
F1(x,y,z) and F2(x,y,z) are two quadric surfaces,
then the pencil of them is
F1(x,y,z)+F2(x,y,z)
where is real scalar
Every quadric surface in the pencil of F1(x,y,z) and
F2(x,y,z) pass the intersection curves of F1(x,y,z) and
F2(x,y,z)
F1(x,y,z)=0 and F2(x,y,z)=0
Thus
F1(x,y,z)+F2(x,y,z)=0
01/04/2007 State Key Lab of CAD&CG 138
Pencils of two Quadric Surface
At least one ruled quadric in the pencil of any
two general quadrics
Ruled quadrics are easily parameterized
The quadric surface intersection curves can be
expressed parametrically using the
parameterization scheme for the ruled quadric in
the pencil
01/04/2007 State Key Lab of CAD&CG 139
Representation of Quadric Surfaces
Two representation techniques:
Algebraic
Geometric
01/04/2007 State Key Lab of CAD&CG 140
Algebraic Representation of
Quadric Surfaces
Represented by ten coefficients of quadric
implicit polynomial equation F(x,y,z):
Advantage: a common set of routines can be
written for handling all types of general
quadric surfaces
Disadvantage: lack of computational
robustness
Floating point data of imperfect accuracy
Internal inconsistency
01/04/2007 State Key Lab of CAD&CG 141
Geometric Representation of
Quadric Surfaces
Represented by
{1 point, 2 orthogonal unit vectors, 3 scalars}
The point fixes the position of the surface
The vectors define its orientation or axes
The scalars determine its dimensions
Example: Ellipsoid
Its center (a point)
Two of its three orthogonal axes (two orthogonal unit
vectors)
Three lengths (radii) along its three axes (three scalars)
01/04/2007 State Key Lab of CAD&CG 142
Geometric Representation of
Quadric Surfaces
Advantages: its robustness and internal
consistency
Disadvantage: a large number of routines
are needed to handle all the special cases
that arise as a result of each type of
surface being treated as a separate entity
(e.g. a problem of combinatorial explosion
in the number of intersection routines)
01/04/2007 State Key Lab of CAD&CG 143
Applications of Quadric
Surfaces
A surface/surface or curve/surface intersection:
computationally and topologically tractable as compared
to parametric patches.
For example,
a quadric surface F(x,y,z)=0
a line L:(x(t),y(t),z(t)),
line and surface intersection F(x(t),y(t),z(t))=0 is a uni-variate
quadratic function.
Quadratic algebraic patches with smooth continuity for
modeling complex free-form shapes
01/04/2007 State Key Lab of CAD&CG 144
Download Course
[Link]
01/04/2007 State Key Lab of CAD&CG 145