Revision: | 1.1 |
Committed: | Sat Feb 22 02:07:21 2003 UTC (21 years, 2 months ago) by greg |
Branch: | MAIN |
CVS Tags: | rad5R2, rad4R2P2, rad5R0, rad5R1, rad3R7P2, rad3R7P1, rad4R2, rad4R1, rad4R0, rad3R5, rad3R6, rad3R6P1, rad3R8, rad3R9, rad4R2P1 |
Log Message: | Changes and check-in for 3.5 release Includes new source files and modifications not recorded for many years See ray/doc/notes/ReleaseNotes for notes between 3.1 and 3.5 release |
# | User | Rev | Content |
---|---|---|---|
1 | greg | 1.1 | { |
2 | Cubic Basis Functions | ||
3 | } | ||
4 | |||
5 | bezier(p1, p2, p3, p4, t) = p1 * (1+t*(-3+t*(3-t))) + | ||
6 | p2 * 3*t*(1+t*(-2+t)) + | ||
7 | p3 * 3*t*t*(1-t) + | ||
8 | p4 * t*t*t ; | ||
9 | |||
10 | hermite(p0, p1, r0, r1, t) = p0 * ((2*t-3)*t*t+1) + | ||
11 | p1 * (-2*t+3)*t*t + | ||
12 | r0 * (((t-2)*t+1)*t) + | ||
13 | r1 * ((t-1)*t*t); | ||
14 | |||
15 | bspline(pp, p0, p1, pn, t) = pp * (1/6+t*(-1/2+t*(1/2-1/6*t))) + | ||
16 | p0 * (2/3+t*t*(-1+1/2*t)) + | ||
17 | p1 * (1/6+t*(1/2+t*(1/2-1/2*t))) + | ||
18 | pn * (1/6*t*t*t) ; |