Geometric ModelingGeometric Modelingfaculty.missouri.edu/.../lecture-notes/modeling... · •...

Preview:

Citation preview

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

Recommended