Subdivision curves surfaces and fractal mountains
Download
1 / 37

Subdivision Curves & Surfaces and Fractal Mountains. - PowerPoint PPT Presentation


  • 136 Views
  • Uploaded on

Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011. Outline. Review B é zier Curves Subdivision Curves Subdivision Surfaces Quad mesh (Catmull-Clark scheme) Triangle mesh (Loop scheme) Fractal Mountains. Review of B é zier Curves DeCastlejau Algorithm. V 2. V 3.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Subdivision Curves & Surfaces and Fractal Mountains.' - johannes-jesse


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Subdivision curves surfaces and fractal mountains

Subdivision Curves & Surfaces and Fractal Mountains.

CS184 – Spring 2011


Outline
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


Review of b zier curves decastlejau algorithm
Review of Bézier CurvesDeCastlejau Algorithm

V2

V3

V1

V4

Insert at t = ¾


Review of b zier curves decastlejau algorithm1
Review of Bézier CurvesDeCastlejau Algorithm

001

011

Ignore funny notation at vertices!

(= CS 284 stuff )

Insert at t = ¾

111

000


Review of b zier curves decastlejau algorithm2
Review of Bézier CurvesDeCastlejau Algorithm

001

011

0¾1

00¾

¾11

Insert at t = ¾

111

000


Review of b zier curves decastlejau algorithm3
Review of Bézier CurvesDeCastlejau Algorithm

001

011

0¾1

0¾¾

00¾

¾¾1

¾11

Insert at t = ¾

111

000


Review of b zier curves decastlejau algorithm4
Review of Bézier CurvesDeCastlejau Algorithm

001

011

0¾1

0¾¾

00¾

¾¾¾

¾¾1

¾11

Insert at t = ¾

111

000


Review of b zier curves decastlejau algorithm5
Review of Bézier CurvesDeCastlejau Algorithm

001

011

0¾1

0¾¾

00¾

¾¾¾

¾¾1

¾11

Curve position and tangent for t = ¾

Insert at t = ¾

111

000


Subdivision of b zier curves
Subdivision of Bézier Curves

001

011

0¾1

0¾¾

00¾

¾¾¾

¾¾1

¾11

This also yields all control points for subdivision into 2 Bezier curves

Insert at t = ¾

111

000


Subdivision of b zier curves1
Subdivision of Bézier Curves

001

011

0¾1

0¾¾

00¾

¾¾¾

¾¾1

¾11

Convex Hull Property!

Insert at t = ¾

111

000


B zier curves summary
Bézier Curves Summary

  • DeCastlejau algorithm is good for

    • Evaluating position(t) and tangent(t),

    • Subdividing the curve into 2 subcurves with their own control polygons.

  • Subdivision of Bézier curves and their convex hull property allows for:

    • Adaptive rendering based on a flatness criterion,

    • Adaptive collision detection using line segment tests.


Outline1
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


Subdivision curves

V20

Subdivision Curves

V30

An approximating scheme

Limit curve

V40

V10

  • Subdivision is a recursive 2 step process

    • Topological split

    • Local averaging / smoothing


Subdivision curves1

E20

V20

Subdivision Curves

V30

E10

E30

V40

V10

E40

  • Subdivision is a repeated 2 step process

    • Topological split

    • Local averaging / smoothing


Subdivision curves2

E21

V20

Subdivision Curves

V30

V21

V31

E11

E31

V41

V11

V40

V10

E41

  • Subdivision is a repeated 2 step process

    • Topological split

    • Local averaging / smoothing


Subdivision curves3

E21

V20

Subdivision Curves

V30

V21

V31

E11

E31

V41

V11

V40

V10

E41

  • Subdivision is a repeated 2 step process

    • Topological split

    • Local averaging / smoothing


Subdivision curves4

E21

V20

Subdivision Curves

V30

V21

V31

E11

E31

V41

V11

V40

V10

E41

  • Subdivision is a repeated 2 step process

    • Topological split

    • Local averaging / smoothing


Results in a b spline curve
Results in a B-spline Curve

Knots:

4

1

2

3

4

1

2

3

4


Subdivision curve summary
Subdivision Curve Summary

  • Subdivsion is a recursive 2 step process:

    • Topological split at midpoints,

    • Local averaging/smoothing operator applied.

  • Doubles the number of vertices at each step

  • Subdivision curves are nothing new:

    • Suitable averaging rules can yield uniform B-spline curves.


Outline2
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


Subdivision overview
Subdivision Overview

Control Mesh

Topological Split

Averaging

Limit Surface

  • Subdivision is a two part process:

    • Topological split

    • Local averaging / smoothing


Subdivision overview1
Subdivision Overview

Control Mesh

Generation 1

Generation 2

Generation 3

Repeated uniform subdivisions of the control mesh converge to the limit surface.

Limit surface can be calculated in closed form for stationary schemes(averaging mask does not change).


Outline3
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces:

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


B spline surfaces
B-spline Surfaces

  • A cubic B-spline surface patch is controlled by a regular 4x4 grid of control points


B spline surfaces1
B-spline Surfaces

  • 2 adjacent patches share 12 control points and meet with C2 continuity


B spline surfaces2
B-spline Surfaces

  • Requires a regular rectangular control mesh grid and all valence-4 vertices to guarantee continuity.


Catmull clark subdivision surface
Catmull-Clark Subdivision Surface

  • Yields smooth surfaces over arbitrary topology control meshes.

  • Closed control mesh  closed limit surface.

  • Quad mesh generalization of B-splines

    • C1 at non-valence-4 vertices,

    • C2 everywhere else (B-splines).

  • Also: Sharp corners can be tagged

    • Allows for smooth and sharp features,

    • Allows for non-closed meshes.


Catmull clark subdivision
Catmull-Clark Subdivision

Gen 0

Gen 1

Gen 2

  • Extraordinary vertices are generated by non-valence-4vertices and faces in the input mesh.

  • No additional extraordinary vertices are created after the first generation of subdivision.


Catmull clark averaging

C20

V20

C10

C30

V30

F20

E20

F10

F30

E30

E40

V00

E10

V10

V40

En0

F40

Fn0

C40

Cn0

Vn0

Catmull-Clark Averaging

(simple averaging)

n = valence


Outline4
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


Loop subdivision surface
Loop Subdivision Surface

Gen 0

Gen 1

Gen 2

n = valence


Summary
Summary

  • Subdivision is a 2 step recursive process:

    • Topological split,

    • Local averaging / smoothing.

  • It is an easy way to make smooth objects

    • of irregular shape

    • of topologies other than rectangular (torus).


Outline5
Outline

  • Review Bézier Curves

  • Subdivision Curves

  • Subdivision Surfaces

    • Quad mesh (Catmull-Clark scheme)

    • Triangle mesh (Loop scheme)

  • Fractal Mountains


Fractals
Fractals

Sierpinski Triangle

  • Self-similar recursive modeling operators:

Koch Snowflake


Linear fractal mountains
Linear Fractal Mountains

Gen 0:

  • 2-step recursive process:

    • Subdivide chain by creating edge midpoints,

    • Randomly perturb midpoint positions(proportional to subdivided edge length).

Gen 1:

Gen 2:

Gen 3:


Fractal mountain surfaces
Fractal Mountain Surfaces

Gen 0

Gen 1

Gen 2

  • 2-step recursive process:

    • Subdivide triangles at edge midpoints,

    • Randomly perturb midpoint positions.


Fractal mountains summary
Fractal Mountains Summary

  • 2-step recursive process:

    • Topological split at edge midpoints,

    • Random perturbation of midpoint positions.

  • Triangle topological split maintains a water-tight connected mesh.

  • Useful to make uneven, “natural” terrain.

  • Often a low-order subdivision is good enough to control terrain-following vehicles.