geometric modelinggeometric modelingfaculty.missouri.edu/.../lecture-notes/modeling... · •...
TRANSCRIPT
Geometric ModelingGeometric Modeling
CECS461 Computer Graphics II University of Missouri at Columbia
OverviewOverview3D Shape Primitives:3D Shape Primitives:p• Points
– Vertices.
p• Points
– Vertices.Vertices.• Curves
– Lines polylines curves
Vertices.• Curves
– Lines polylines curvesLines, polylines, curves.• Surfaces
– Triangle meshes splines subdivision surfaces
Lines, polylines, curves.• Surfaces
– Triangle meshes splines subdivision surfacesTriangle meshes, splines, subdivision surfaces, implicit surfaces, particles.
• Solids
Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles.
• Solids
CECS461 Computer Graphics II University of Missouri at Columbia
So dsSo ds
Basic ShapesBasic Shapes
CECS461 Computer Graphics II University of Missouri at Columbia
Fundamental ShapesFundamental Shapes
CECS461 Computer Graphics II University of Missouri at Columbia
Fundamental ShapesFundamental Shapes
CECS461 Computer Graphics II University of Missouri at Columbia
Fundamental ShapesFundamental Shapes
CECS461 Computer Graphics II University of Missouri at Columbia
CurvesCurves• Lines.• Lines.Lines.• Polynomials.
L
Lines.• Polynomials.
L• Lagrange curves.• Hermite curves.• Lagrange curves.• Hermite curves.• Bezier curves.• B-Splines.• Bezier curves.• B-Splines.B Splines.• NURBS.
S bdi i i h
B Splines.• NURBS.
S bdi i i hCECS461 Computer Graphics II University of Missouri at Columbia
• Subdivision schemes.• Subdivision schemes.
Mathematical FormulationsMathematical Formulations
CECS461 Computer Graphics II University of Missouri at Columbia
Linear interpolationLinear interpolation
CECS461 Computer Graphics II University of Missouri at Columbia
SurfacesSurfaces• Planes• Planes• Triangle meshes.• Tensor-product surfaces.• Triangle meshes.• Tensor-product surfaces.Tensor product surfaces.
– Hermite surface, Bezier surface, B-spline surfaces, NURBS.
• No-tensor product surfaces.
Tensor product surfaces.– Hermite surface, Bezier surface, B-spline surfaces, NURBS.
• No-tensor product surfaces.p– Sweeping surface, ruling surface, etc.
• Subdivision surfaces.
p– Sweeping surface, ruling surface, etc.
• Subdivision surfaces.• Implicit surfaces.• Particle systems.• Implicit surfaces.• Particle systems.
CECS461 Computer Graphics II University of Missouri at Columbia
Particle systems.Particle systems.
Parametric PolynomialsParametric Polynomials
CECS461 Computer Graphics II University of Missouri at Columbia
PolynomialsPolynomials
• No intuitive insight.• No intuitive insight.• Difficult for piecewise smooth curves.• Difficult for piecewise smooth curves.
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic PolynomialsCubic Polynomials
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic PolynomialsCubic Polynomials
CECS461 Computer Graphics II University of Missouri at Columbia
How to define a curve?How to define a curve?• Specify a set of points for interpolation and/or • Specify a set of points for interpolation and/or p y p p
approximation for some ui
p y p papproximation for some ui
• Specify the derivatives at some locations for some ui• Specify the derivatives at some locations for some ui
• A combination of both.• A combination of both.
CECS461 Computer Graphics II University of Missouri at Columbia
Lagrange CurveLagrange Curve• The curve interpolates all the control points.• The curve interpolates all the control points.The curve interpolates all the control points.• Unwanted oscillation.
The curve interpolates all the control points.• Unwanted oscillation.
CECS461 Computer Graphics II University of Missouri at Columbia
Lagrange CurveLagrange Curveaa
)()()( ,
,
0,
,
uLaaa
uLaaa
uc nnyn
xnn
yn
xn
,, aa znzn
)(
)(,0
j
n
ijj
n
uu
uL
)()(
,0ji
n
ijj
i
uuuL
CECS461 Computer Graphics II University of Missouri at Columbia
Kronecker delta functionKronecker-delta function
jiji
uL ijjni ,0
,1)(
ji,0
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic Hermite CurveCubic Hermite Curve
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic PolynomialsCubic Polynomials
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic Hermite CurveCubic Hermite Curve• Constraints: two end-points and two tangents at• Constraints: two end-points and two tangents atConstraints: two end points and two tangents at
end-points.Constraints: two end points and two tangents at end-points.
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic Hermite CurveCubic Hermite Curve• Solve the linear equation:• Solve the linear equation:Solve the linear equation:Solve the linear equation:
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic Hermite CurveCubic Hermite Curve
CECS461 Computer Graphics II University of Missouri at Columbia
Cubic Hermite CurveCubic Hermite Curve
CECS461 Computer Graphics II University of Missouri at Columbia
Why Cubic CurvesWhy Cubic Curves• The lowest-degree polynomials to be able to interpolate two• The lowest-degree polynomials to be able to interpolate two
specified endpoints with specified derivatives at each endpoint.
Th l d h l i 3D
specified endpoints with specified derivatives at each endpoint.
Th l d h l i 3D• The lowest-degree curves that are nonplanar in 3D.• The lowest-degree curves that are nonplanar in 3D.
• Lower degree has too little flexibility.• Lower degree has too little flexibility.
• Higher-degree is unnecessarily complex, exhibit undesiredwiggles.
• Higher-degree is unnecessarily complex, exhibit undesiredwiggles.
CECS461 Computer Graphics II University of Missouri at Columbia
Geometric RepresentationsGeometric Representations• Continuous representation• Continuous representationContinuous representation
– Explicit representation– Implicit representation
Continuous representation– Explicit representation– Implicit representation– Implicit representation
• Discrete representationT i l h
– Implicit representation• Discrete representation
T i l h– Triangle meshes– Points/Particles– Triangle meshes– Points/Particles
CECS461 Computer Graphics II University of Missouri at Columbia
Deformable SurfaceDeformable Surface
Continuous Models Discrete Models
Implicit Representation Particle SystemsDiscrete MeshesExplicit
Representation
Subdivision Surface
Algebraic Surface
Level-Set
NURBS
Superquadric
CECS461 Computer Graphics II University of Missouri at Columbia
B-Splines
SurfacesSurfaces• Triangle meshes.• Triangle meshes.g• Tensor-product surfaces.
– Hermite surface, Bezier surface, B-spline surfaces,
g• Tensor-product surfaces.
– Hermite surface, Bezier surface, B-spline surfaces,Hermite surface, Bezier surface, B spline surfaces, NURBS.
• Non-tensor product surfaces.
Hermite surface, Bezier surface, B spline surfaces, NURBS.
• Non-tensor product surfaces.p– Sweeping surface, ruling surface, etc.
• Subdivision surfaces.
p– Sweeping surface, ruling surface, etc.
• Subdivision surfaces.• Implicit surfaces.• Particle systems• Implicit surfaces.• Particle systemsCECS461 Computer Graphics II University of Missouri at Columbia
Particle systems.Particle systems.
Triangle MeshesTriangle Meshes
CECS461 Computer Graphics II University of Missouri at Columbia
Quadratic SurfacesQuadratic Surfaces• Implicit representation• Implicit representationImplicit representation
=0S h
Implicit representation=0
S h• Sphere• Sphere
• Ellipsoid• Ellipsoid
CECS461 Computer Graphics II University of Missouri at Columbia
Tensor Product SurfaceTensor Product Surface• From curves to surfaces• From curves to surfaces• A simple curve example (Bezier)• A simple curve example (Bezier)
where u [0,1]where u [0,1]where u [0,1]
• Consider pi is a curve pi(v)• In particular, if pi is also a bezier curve, where
where u [0,1]
• Consider pi is a curve pi(v)• In particular, if pi is also a bezier curve, whereIn particular, if pi is also a bezier curve, where
v [0,1]In particular, if pi is also a bezier curve, where v [0,1]
CECS461 Computer Graphics II University of Missouri at Columbia
From curve to surfaceFrom curve to surface• Then we have• Then we haveThen we haveThen we have
CECS461 Computer Graphics II University of Missouri at Columbia
Bezier SurfaceBezier Surface
CECS461 Computer Graphics II University of Missouri at Columbia
B Splines SurfaceB-Splines Surface• B-Spline curves• B-Spline curves
T d t B liT d t B li
n
i kii uBpuc0 , )()(
• Tensor product B-splines• Tensor product B-splines
where u [0,1], and v [0,1]
f hi
where u [0,1], and v [0,1]
f hi• Can we get NURBS surface this way?• Can we get NURBS surface this way?
CECS461 Computer Graphics II University of Missouri at Columbia
B Splines SurfaceB-Splines Surface
CECS461 Computer Graphics II University of Missouri at Columbia
Tensor Product PropertiesTensor Product Properties• Inherit from their curve generators.• Inherit from their curve generators.Inherit from their curve generators.• Continuity across boundaries
I t l ti d i ti t l
Inherit from their curve generators.• Continuity across boundaries
I t l ti d i ti t l• Interpolation and approximation tools.• Interpolation and approximation tools.
CECS461 Computer Graphics II University of Missouri at Columbia
NURBS SurfaceNURBS Surface
CECS461 Computer Graphics II University of Missouri at Columbia
Surface of RevolutionSurface of Revolution
CECS461 Computer Graphics II University of Missouri at Columbia
Surface of RevolutionSurface of Revolution• Geometric construction• Geometric constructionGeometric construction
– Specify a planar curve profile on y-z plane– Rotate this profile with respect to z-axis
Geometric construction– Specify a planar curve profile on y-z plane– Rotate this profile with respect to z-axis– Rotate this profile with respect to z-axis
• Procedure-based model– Rotate this profile with respect to z-axis
• Procedure-based model
CECS461 Computer Graphics II University of Missouri at Columbia
Sweeping SurfaceSweeping Surface
CECS461 Computer Graphics II University of Missouri at Columbia
Sweeping SurfaceSweeping Surface• Surface of revolution is a special case of a• Surface of revolution is a special case of aSurface of revolution is a special case of a
sweeping surface.• Idea: a profile curve and a trajectory curve
Surface of revolution is a special case of a sweeping surface.
• Idea: a profile curve and a trajectory curve• Idea: a profile curve and a trajectory curve.• Move a profile curve along a trajectory curve to
t i f
• Idea: a profile curve and a trajectory curve.• Move a profile curve along a trajectory curve to
t i fgenerate a sweeping surface.generate a sweeping surface.
CECS461 Computer Graphics II University of Missouri at Columbia
Subdivision SchemeSubdivision SchemeOverview:Overview:Overview:
St t f i iti l t l l
Overview:
St t f i iti l t l l• Start from an initial control polygon.• Recursively refine it by some rules.• A smooth surface in the limit
• Start from an initial control polygon.• Recursively refine it by some rules.• A smooth surface in the limit• A smooth surface in the limit.• A smooth surface in the limit.
pxJpxs )(),(
CECS461 Computer Graphics II University of Missouri at Columbia
Chaikin’s corner cutting scheme g
CECS461 Computer Graphics II University of Missouri at Columbia
Chaikin’s corner cutting scheme g
CECS461 Computer Graphics II University of Missouri at Columbia
Chaikin’s corner cutting scheme g
CECS461 Computer Graphics II University of Missouri at Columbia
Chaikin’s corner cutting scheme g
CECS461 Computer Graphics II University of Missouri at Columbia
Catmull Clark SchemeCatmull-Clark Scheme
CECS461 Computer Graphics II University of Missouri at Columbia
Catmull-Clark Scheme
Initial mesh Step 1
CECS461 Computer Graphics II University of Missouri at Columbia
Step 2 Limit surface
Catmull-Clark SchemeCatmull Clark Scheme
CECS461 Computer Graphics II University of Missouri at Columbia
Midedge schemeMidedge scheme
CECS461 Computer Graphics II University of Missouri at Columbia
Midedge schemeMidedge scheme
(a) (b)
(d)(c)
CECS461 Computer Graphics II University of Missouri at Columbia
(d)(c)
PointsPoints• Very popular primitives for modeling,• Very popular primitives for modeling,Very popular primitives for modeling,
animation, and rendering.Very popular primitives for modeling, animation, and rendering.
CECS461 Computer Graphics II University of Missouri at Columbia
PointsPoints
CECS461 Computer Graphics II University of Missouri at Columbia