CSCE 441 Lecture 31

From Notes
Jump to navigation Jump to search

« previous | Friday, April 4, 2014 | next »


Smooth Surfaces

Lagrange Surfaces

Given 2D array of 3D points,

  1. interpolate lines connecting points along one axis
  2. pick a parameter Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle t} , evaluate each line at Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle t} to get 4 points
  3. interpolate line connecting 4 parameter points
  4. pick a parameter Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle s} , evaluating the second interpolation at Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle s} gives a point on the curve.

Boundaries of the patch are defined by control points on the boundary of the array

Given a set of parametric curves Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p_0(u), p_1(u), \ldots, p_n(u)} , how can we build a surface that interpolates them?

  1. evaluate each curve at parameter
  2. interpolate points at parameter

Assumes all parameterized curves have corresponding values for corresponding parameters (i.e., all points are coplanar)


Bezier Surfaces

Same type of construction: find bezier curves for one axis of control points, evaluate curve at parameter, and create bezier curve of parameterized points.

Properties:

  • convex hulls
  • interpolates four corners, but not all points


B-Spline Surfaces

Find b-spline curves around one direction Switch axis and find b-spline curves around other direction.

  • Surface inside convex hull of control points
  • Guaranteed to be defined everywhere
  • Smoothness determined by number of averaging steps.


Cannot b-spline a cube.


Subdivision Surfaces

a generalization of B-Spline surfaces to arbitrary topology

Guaranteed to be smooth.

Set of rules Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle S} applied recursively to some polygon shape Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p_0} : Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p_{k+1} = S(p_k)}

  • Assume survace is made out of quads
    • Any number of quads may touch a single vertex
  • Subdivision rules: linear subdivision followed by averaging


Generalized Linear Subdivision

  • Find midpoints of each edge
  • Find centroid of each quad
  • connect centroid of each quad to each midpoint of quad's edges