Computer Graphics: Difference between revisions

From Adam Colton
Jump to navigation Jump to search
No edit summary
 
(15 intermediate revisions by the same user not shown)
Line 18: Line 18:


Catmull-Clark Surface
Catmull-Clark Surface
=== Curves and Surfaces for CAGD ===
Resume: 1
==== 1 (1) ====
In the French Auto industry both Paul de Castlejau and Pierre Bezier both created equivalent systems to describe the curves on automobiles. At Renault, Bezier developed UNISURF, an early CAD/CAM model.
This chapter provides a bunch of weird analogies for Curves.
==== Points and Vectors (13) ====
A point defines a location. Vectors are the result of subtracting points. Vectors can be added, points cannot.
Barycentric (or affine) Combinations allow points to be summed if the scalar coefficients of the expression sum to 1. I like this, it works, even with out addition because
  b = b<sub>0</sub> + &sum; a<sub>i</sub>(b<sub>i</sub> - b<sub>0</sub>)
which is still the sum of a point and a vector.


== B-spline ==
== B-spline ==
Line 53: Line 38:
   N<sub>i,j</sub>(t) = (t - t<sub>i</sub>)/(t<sub>i+j</sub> - t<sub>i</sub>)N<sub>i,j-1</sub>(t) + (t<sub>i+j+1</sub> - t)/(t<sub>i+j+1</sub> - t<sub>i+1</sub>)N<sub>i+1,j-1</sub>(t)
   N<sub>i,j</sub>(t) = (t - t<sub>i</sub>)/(t<sub>i+j</sub> - t<sub>i</sub>)N<sub>i,j-1</sub>(t) + (t<sub>i+j+1</sub> - t)/(t<sub>i+j+1</sub> - t<sub>i+1</sub>)N<sub>i+1,j-1</sub>(t)
This forms a triangle because each N where j!= is dependent on two N where j is one less. And the curve itself is the case where i=0 j=n. The ternary acts like a switch that turns on one N where j=0.
This forms a triangle because each N where j!= is dependent on two N where j is one less. And the curve itself is the case where i=0 j=n. The ternary acts like a switch that turns on one N where j=0.
[[Category:Computer Graphics]]

Latest revision as of 14:02, 28 August 2019

I'm leaving this as is, but really my interest is "Computational Geometry"

Notes

BCS

  • Flat shading
  • Gouraud Shading
  • Phong Shading

Catmull-Clark Surface

B-spline

Basis Spline; a curve defined by control points and a knot vector.

  • Joins many low degree Bezier curves

A k degree B-spline deined by n control points will have n-k Bezier curves. So a cubic (k=3) B-spline with 6 control points will have n-k = 6-3 = 3 Bezier curves.

  • C0 continuity means that the last point on each Bezier curve is the same as the first point on the next - there are no gaps.
  • C1 the derivatives of the curves are continuous
  • C2 the second derivatives of the curves are continuous

The length of the knot vector is m=k+n. For a uniform knot vector (most common), the numbers will be integers increasing by one, so m=5 will be T=(0,1,2,3,4).

 S(t) = ∑inNi,k(t)Pi
 Ni,0(t) = (ti <= t < ti+1</sub) ? 1 : 0
 Ni,j(t) = (t - ti)/(ti+j - ti)Ni,j-1(t) + (ti+j+1 - t)/(ti+j+1 - ti+1)Ni+1,j-1(t)

This forms a triangle because each N where j!= is dependent on two N where j is one less. And the curve itself is the case where i=0 j=n. The ternary acts like a switch that turns on one N where j=0.