Interpolating/approximating pp gcurves
|
|
- Brendan Watkins
- 5 years ago
- Views:
Transcription
1 Chap 3 Interpolating Values 1
2 Outline Interpolating/approximating pp gcurves Controlling the motion of a point along a curve Interpolation of orientation Working with paths
3 Interpolation between key frames Parameters to be interpolated Position of an object Normal Joint angle between two joints Transparency attribute of an object 3
4 Interpolation between key frames Interpolation between frames is not trivial Appropriate interpolating function Parameterization ti of fthe function Maintain the desired control of the interpolated values over time Example (-5,0,0) at frame, (5,0,0) art frame 67 Stop at frame and accelerate to reach a max speed by frame 34 Start to decelerate at frame 50 and come to a stop at frame 67 4
5 Interpolation between key frames desired result undesired result Need a smooth interpolation with user control 5
6 Interpolation between key frames Solution Generate a space curve Distribute points evenly along curve Speed control: vary points temporally B A Time = 10 Time = 0 C Time = 35 6 D Time = 60
7 Interpolation functions Interpolation vs. approximation Interpolation Hermite, Catmull-Rom approximation Bezier, B-spline 7
8 Interpolation functions Complexity => computational efficiency Polynomials Lower than cubic No inflection point, may not fit smoothly to some data points Higher than cubic Doesn t provide any significant advantages, costly to evaluate Piecewise cubic Provides sufficient smoothness Allows enough flexibility to satisfy constraints such as end- point position and tangents 8
9 Interpolation functions Continuity within a curve Zero-order First order (tangential) Suffices for most animation applications Second order Important when dealing with time-distance curve Continuity between curve segments Hermite, Ct Catmull-Rom, llr cubic Bezier provide first order continuity between segments 9
10 Interpolation functions 10
11 Continuity position tangent curvature none (0th order) (1st order) (nd order) At junction of two circular arcs 11
12 Interpolation functions Global vs. local control 1
13 Types of Curve Representation Explicit y = f(x) Good for generate points For each input, there is a unique output Implicit f(x,y) = 0 Good for testing ti if a point is on a curve Bad for generating a sequence of points Parametric x = f(u), y = g(u) Good for generating a sequence of points Can be used for multi-valued function of x 13
14 Example: Representing Unit Circle Cannot be represented explicitly as a function of x f>0 f=0 Implicit form: f<0 f(x,y)=x +y =1 Parametric form: x=cos(u), y=sin(u), 0<u<π u 14
15 More on 3-D Parametric Curves Parametric form: P(u) = (P x (u), P y (u), P z (u)) x = P x x( (u), y = P y y( (u), z = P z z( (u) u=0.00 u=/3 u=1/3 u=1.0 Space-curve P = P(u) 0.0 <=u<=1.0 15
16 Polynomial Interpolation An n-th degree polynomial fits a curve to n+1 points Example: fit a second degree curve to three points y(x)= a x + b x + c points to be interpolated (x 1,y 1 ), (x,y ), (x 3,y 3 ) solve for coefficients (a, b, c): 3 linear equations, 3 unknowns called Lagrange Interpolation 16
17 Polynomial Interpolation (cont.) Result is a curve that is too wiggly, change to any control point affects entire curve (nonlocal) this method is poor We usually want the curve to be as smooth as possible minimize the wiggles high-degree g polynomials are bad Higher degree, higher the wiggles 17
18 Composite Segments Divide a curve into multiple segments Represent each in a parametric form Maintain continuity between segments position Tangent (C1-continuity vs. G1-continuity) curvature P 1 (u) P (u) P 3 (u) P n (u) 18
19 Splines: Piecewise Polynomials A spline is a piecewise polynomial - many low degree polynomials are used to interpolate (pass through) the control points Cubic polynomials are the most common lowest order polynomials that interpolate two points and allow the gradient at each point to be defined - C1 continuity is possible Higher or lower degrees are possible, of course 19
20 A Linear Piecewise Polynomial The simple form for interpolating two points. p1 Each segment is of the form: (this is a vector equation) p p ( u) = up1 + (1 u) p 1 u Two basis (blending) functions 0 1 u 0
21 Hermite Interpolation Hermite Curves cubic polynomial for two points 3 P ( u) = au + bu + cu + P ( u ) = ( Px ( u ), Py ( u ), Pz ( u )) Hermite interpolation requires Endpoint positions derivatives at endpoints P(0) d control points/knots P(1) P '(0) P' (1) To create a composite curve, use the end of one as the beginning gof the other and share the tangent vector 1
22 Hermite Curve Formation Cubic polynomial and its derivative 3 P ( u) = a u + b u + c u + x x x ' P ( u ) = 3a u + b u + c x x x x x d x Given P x (0), P x (1), P x (0), P x (1), solve for a, b, c, d 4 equations are given for 4 unknowns P (0) = P + P = P + x d x x (1) = ax + bx + cx d x ' x(0) c x ' x(1) = 3a x + bx cx
23 Hermite Curve Formation (cont.) Problem: solve for a, b, c, d Solution: P (0) = P + P = P + a b c x d x x (1) = ax + bx + cx d x ' x(0) c x ' x(1) = 3a x + bx cx x x x = = = ( P 3( P P ' x x x (0) d x = P x (0) (0) (1) 3 P P x x (1)) (0)) + P ' x P (0) ' x + (0) P ' x P (1) ' x (1)
24 Hermite Curves in Matrix Form 3 P ( u ) = au + bu + cu + d P( u) = U T = [ u M is B is U 3, T u MB, u,1] is the coefficient matrix the parameter the geometric information P x (0) P x(1) B = ' P x(0) 1 ' Px (1) M = ith segment in composite curves Pi P i+ B = ' Pi ' 1 P i + 1
25 Blending Functions of Hermite Splines Blending Functions of Hermite Splines Each cubic Hermite spline is a linear combination of p 4 blending functions geometric information M B U P T ) ( M B U u P T ) ( = ) ( p p u u u u + = ' ' ) ( p p u u u u p 5 3 p u u
26 Composite Hermite Curve Continuity between connected segments is ensured by using ending tangent vector of one segment as the beginning i tangent tvector of fthe next. 6
27 Bezier Curves Similar to Hermite Curve Instead of endpoints and tangents, four control points are given points P1 and P4 are on the curve points P and P3 are used to control the shape p 1 = P1, p = P4, p 1 ' = 3(P-P1), p ' = 3(P4 - P3) p( u) = [ 1] 3 u u u P P P P4 7
28 Bezier Curves Another representation Blend the control point position using Bernstein polynomials p( u) = n k = 0 B n where k, B k B k ( u), n( u) P k, n( u) = C( n, k) u (1 u) C( n, k) = n! k!( n k are Bernstein polynomials k)! n k 8
29 Bezier Curves 9
30 Composite Bezier Curves How to control the continuity between adjacent Bezier segment? 30
31 De Casteljau Construction of Bezier Curves How to derive a point on a Bezier curve? 31
32 Bezier Curves (cont.) Variant of the Hermite spline basis matrix derived from the Hermite basis (or from scratch) Gives more uniform control knobs (series of points) than Hermite Scale factor (3) is chosen to make velocity approximately constant 3
33 Catmull-Rom Splines With Hermite splines, the designer must arrange for consecutive tangents to be collinear, to get C 1 continuity. Similar for Bezier. This gets tedious. Ct Catmull-Rom: llr an interpolating ti cubic spline with built-in C 1 continuity. Compared to Hermite/Bezier: fewer control points required, but less freedom. 33
34 Catmull-Rom Splines (cont.) Given n control points in 3-D: p 1, p,, p n, Tangent at p i given by s(p i+1 p i-1 ) for i=..n-1, for some s. Curve between p i and p i+1 is determined by p i-1, p i, p i+1,p i+. 34
35 Catmull-Rom Splines (cont.) Given n control points in 3-D: p 1, p,, p n, Tangent at p i given by s(p i+1 p i-1 ) for i=..n-1, for some s Curve between p i and p i+1 is determined by p i-1, p i, p i+1, p i+ What about endpoint tangents? (several good answers: extrapolate, t or use extra control points p 0, p n+1 ) Now we have positions and tangents at each knot a Hermite specification. 35
36 Catmull-Rom Spline Matrix Derived similarly to Hermite and Bezier s is the tension parameter; typically s=1/ When s p ( u ) = U = 1/, T P i 11 1 i 1 Pi 0 Pi + 0 P i
37 Catmull-Rom Spline What about endpoint tangents? Provided by users Several good answers: extrapolate, or use extra control points p 0, p n+1 P 1 = (( P1 ( P 1 = (P P ' 0 P1 )) P0 1 P0 ) ) 37
38 Catmull-Rom Spline Example 38
39 Drawback Catmull-Rom Spline An internal tangent is not dependent on the position of the internal point relative to its two neighbors 39
40 p(0) = P p (0) = s(p3 P1) p(0) = P, p (0) = s(p3-p1), p(1) = P3, p (1) = s(p4-p) ) ( P P U T = ) ( P P s s s s U u p T 4 1 P P s s s s = P P P s s s s s s U T P
41 Splines and Other Interpolation Forms See Computer Graphics textbooks Review Appendix B.4 in Parent 41
42 Now What? We have key frames or points We have a way to specify the space curve Now we need to specify velocity to traverse the curve Speed Curves 4
43 Speed Control The speed of tracing a curve needs to be under the direct control of the animator Varying u at a constant t rate will not necessarily generate P(u) at a constant speed. 43
44 Non-uniformity in Parametrization Generally, equally spaced samples in parameter space are not equally spaced along the curve u u s( u ) s ( ) 1 ( u1 B s ( u ) = Px ( u ) + Py ( u ) + Pz ( u ) du A Time = 10 Time = 0 C Time = 35 D 44 Time = 60
45 Arc Length Reparameterization To ensure a constant speed for the interpolated value, the curve has to be parameterized a e ed by arc length (for most applications) Computing arc length Analytic method (many curves do not have, e.g., B- splines) Numeric methods Table and differencing Gaussian quadrature 45
46 Arc Length Reparameterization Space curve vs. time-distance function Relates time to the distance traveled along the curve, i.e., Relates time to the arc length along the curve 46
47 Arc Length Reparameterization Given a space curve with arc length parameterization Allow movement along the curve at a constant speed by stepping at equal arc length intervals Allows acceleration and deceleration along the curve by controlling the distance traveled in a given time interval Problems Given a parametric curve and two parameter values u 1 and u, find arclength(u 1,u ) Given an arc length s, and parameter value u 1, find u such that arclength(u 1,u ) = s 47
48 Arc Length Reparameterization Converting a space curve P(u) to a curve with arc-length ac parameterization a e a Find s=s(u), and u=s -1 (s)=u(s) P*(s)=P(U(s)) P(U( )) Analytic arc-length parameterization is difficult or impossible for most curves, e.g., B- spline curve cannot be parameterized with arc length. Approximate arc-length parameterization ti 48
49 Forward Differencing Sample the curve at small intervals of the parameter Compute the distance between samples Build a table of arc length for the curve u Arc Length
50 Arc Length Reparameterization Using Forward Differencing Given a parameter u, find the arc length Find the entry in the table closest to this u Or take the u before and after it and interpolate arc length linearly u Arc Length
51 Arc Length Reparameterization Using Forward Differencing Given an arc length s and a parameter u 1, find the parametric value u such that arclength(u 1, u )=s Find the entry in the table u Arc Length closest to this u using binary search Or take the u before and after it and interpolate t linearly l
52 Arc Length Reparameterization Using Forward Differencing Easy to implement, intuitive, and fast Introduce errors Super-sampling in forming table 1000 equally spaced parameter values ebtries in each interval Better interpolation Adaptive forward differencing 5
53 Arc Length Reparameterization Using Adaptive forward differencing 53
54 Arc Length Reparameterization Using Arc length integral Numerical Integral s( u) = Px ( u) + Py ( u) + Pz ( u) du Simpson s and trapezoidal integration using evenly spaced intervals Gaussian quadrature using unevenly spaced intervals 54
55 Speed Control Given a arc-length parameterized space curve, how to control o the speed at which the curve is traced? By a speed-control functions that relate an equally spaced time interval to arc length Input time t, output t arc length: s=s(t) Linear function: constant speed control Most common: ease-in/ease-out Smooth motion from stopped position, accelerate, reach a max velocity, and then decelerate to a stop position 55
56 Speed Control Function Relates an equally spaced time interval to arc length Input time t, output arc length: s=s(t) Normalized arc length parameter s=ease(t) Start at 0, slowly increase in value and gain speed until the middle value and then decelerate as it approaches to 1. 56
57 Constant Velocity Speed Curve Moving at 1 m/s if meters and seconds are the units Too simple to be what we want 57
58 Distance Time Function and Speed Control We have a space curve p=p(u) and a speed control o function s=s(t). For a given t, s=s(t) Find the corresponding value u=u(s) by looking up an arc length table for a given s A point on the space curve with parameter u p=p(u(s(t))) ( ( 58
59 Speed Control P(u( * ) u* Arc Length Table u Arc Length s* Speed Control Curve t* 59
60 Distance Time Function Assumptions on distance time function The entire arc length of the curve is to be traversed during the given total time Additional optional assumptions The function should be monotonic in t The function should be continuous 60
61 Ease-in/Ease-out Most useful and most common ways to control motion o along acurve Arc length (distance) Time Equally spaced samples in time specify arc length required for that t frame 61
62 s Ease-in/Ease-out Sine Interpolation 1 π 1 = ease( t) = sin ( tπ ) +, 0 t 1 1 π/ π/ Arc Length -1 sin( α), π α π Time 6
63 Ease-in/Ease-out Sine Interpolation The speed of s w.r.t. t is never constant over an interval but rather is always accelerating e a or decelerating. Zero derivatives at t=0 and t=1 indicating smooth accelerating and deceleration at end points. 63
64 Ease-in/Ease-out Piecing i Curves Together for Ease In/Out Arc Length Linear segment Time Sinusoidal segments 64
65 Ease-in/Ease-out Piecing i Curves Together for Ease In/Out 65
66 Ease-in/Ease-out Integrating to avoid the sine function acceleration A velocity Find v such that area = 1 v time D t 1 t arc length t 1 t V 1 = V A*t 1 = - D*(1-t ) time time 66
67 Ease-in/Ease-out Integrating to avoid the sine function To avoid the transcendental function evaluation while providing a constant speed interval between ease-in and ease-out intervals Acceleration-time time curve Velocity-time curve Velocity-time curve is defined by integral of the acceleration-time curve Distance-time curve is defined by integral of the velocity-time curve 67
68 Ease-in/Ease-out Integrating to avoid the sine function In ease-in/ease-out function Velocity starts out at 0 and ends at 0 V 1 = V inplies A*t 1 = - D*(1-t ) 68
69 Ease-in/Ease-out Integrating to avoid the sine function Total distance = 1 implies 1 = ½ V 0 t + V 0 (t -t 1 )+1/ V 0 (1-t ) Users specifies any two of three variables t 1, t, and V 0, and the system can solve for the third 69
70 Ease-in/Ease-out Integrating to avoid the sine function The result is Parabolic ease-in/ease-out More flexible than the sinusoidal ease-in/ease-out 70
71 Videos Bunny (Blue Sky Studios, 1998) 71
72 q Review - Quaternions Similar to axis-angleangle representations 4-tuple of real numbers q=(s, x, y, z) or [s, v]s is a scalar; v is a vector The quaternion for rotating an angle about an axis (an axis-angle rotation): = Rot ( θ,( a, a, a )) x y θ θ = cos( ),sin( ) ( ax, ay, az ) If a is unit length, then q will be also z Y Z a=(a x, a y, a z ) θ X Animation(U), Chap, Tech. Background 7
73 Review - Quaternions Review Quaternions If a is unit length, then q will be also = q q q q q sin sin sin cos = θ θ θ θ z y x a a a ( ) sin cos = θ θ y a a a ( ) sin cos = θ θ θ θ z y x a a a sin cos sin cos + = + = θ θ θ θ a Animation(U), Chap, Tech. Background Animation(U), Chap, Tech. Background 73 1 =1 =
74 Review - Quaternions Rotating some angle around an axis is the same as rotating the negative angle around the negated axis θ θ Rot θ, ( x, y, z) = cos( ), sin( )( x, y, z) = q Animation(U), Chap, Tech. Background 74
75 Addition Review - Quaternion Math [ s, v ] + [ s, v ] = [ s + s, v + v ] Multiplication [ s, v ][ s, v ] = [ s s v v, s v + s v + v v ] Multiplication is associative but not commutative q ( = q 1 qq3) ( q1q ) 3 q 1q qq1 Animation(U), Chap, Tech. Background 75
76 Review - Quaternion Math (cont.) Multiplicative identity: [1, 0,0,0] Inverse [ 1, 0, 0, 0 ] q q = [ ] 1 s, v 1 q = qq 1 = [ 1, 0, 0, 0 ] q qq 1 = Normalization for unit quaternion [ 1, 0, 0, 0] Normalization for unit quaternion ) q q = ) qq q = q q = s + x + y + z z q = s + x + y + Animation(U), Chap, Tech. Background 76
77 Review Rotating Vectors Using Quaternion A point in space, v, is represented as [0, v] To rotate a vector v using quaternion q Represent the vector as v = [0, v] Represent the rotation as a quaternion q Using quaternion multiplication v' = Rot ( v) = qvq q The proof isn t that hard Note that tthe result v always has zero scalar value 1 Animation(U), Chap, Tech. Background 77
78 Review - Compose Rotations Rotating a vector v by first quaternion p followed by a quaternion q is like rotation using qp Rot ( Rot ( v )) = q p = = Rot q qpvp p ( pvp 1 1 q ( qp) v( qp) = Rot qp (v) 1 ) 1 Animation(U), Chap, Tech. Background 78
79 Review - Compose Rotations To rotate a vector v by quaternion q followed by its inverse quaternion q -1 Rot 1 ( Rot ( v )) = Rot 1 q q = = q v 1 q qvq qq ( qvq 1 q 1 ) Animation(U), Chap, Tech. Background 79
80 Review - Quaternion Interpolation A quaternion is a point on a 4D unit sphere Unit quaternion: q=(s,x,y,z), q = 1 Form a subspace: a 4D sphere Interpolating quaternion means moving between two points on the 4D unit sphere A unit quaternion at each step another point on the 4D unit sphere Move with constant angular velocity along the greatest circle between the two points on the 4D unit sphere Animation(U), Chap, Tech. Background 80
81 Review - Linear Interpolation Linear interpolation generates unequal spacing of points after projecting to circle Animation(U), Chap, Tech. Background 81
82 Review Spherical Linear Interpolation (slerp) Want equal increment along arc connecting two quaternion on the spherical surface Spherical linear interpolation (slerp) sin((1 u) θ ) slerp q, q, u) = q1 + sin θ sin( uθ ) sin θ ( 1 q 1 where u goes from 0 to1andθ = cos ( q1 q Normalize to regain unit quaternion ) Animation(U), Chap, Tech. Background 8
83 Review Spherical Linear Interpolation (slerp) Let q = α q1 + βq We can solve for given : q = 1, q 1 q = θ, q1 q to give = u θ sin((1 u) θ ) sin( uθ ) slerp( q1, q, u) = q1 + q sin θ sin θ Animation(U), Chap, Tech. Background 83
84 Review Spherical Linear Interpolation (slerp) q 1 q > 0 q 1 q q Animation(U), Chap, Tech. Background 84
85 Review Spherical Linear Interpolation (slerp) Recall that q and q represent same rotation What is the difference between: Slerp(u, q 1, q ) and Slerp(u, q 1, -q )? One of these will travel less than 90 degrees while the other will travel more than 90 degrees across the sphere This corresponds to rotating the short way or the long way Usually, we want to take the short way, so we negate one of them if their dot product is < 0 Animation(U), Chap, Tech. Background 85
86 Review Spherical Linear Interpolation (slerp) If we have an intermediate position q, the interpolation from q 1 -->q -->q 3 will not necessarily follow the same path as the interpolation from q 1 to q 3. Animation(U), Chap, Tech. Background 86
87 Interpolating a Series of Quaternions As linear interpolation in Euclidean space, we can have first order discontinuity problem when interpolating a series of orientations. Need a cubic curve interpolation to maintain first order continuity in Euclidean space Similarly, slerp can have 1st order discontinuity We also need a cubic curve interpolation in 4D spherical space for 1st order continuity 87
88 Interpolating a Series of Quaternions Interpolated points [, p n-1, p n, p n+1,.]in3d Between each pair of points, two control points will be constructed. e.g., For p n a n : the one intermediate after p n b n : the one immediately before p n p n +(p n -p n-1 ) Take average 88
89 Interpolating a Series of Quaternions Interpolated points [, p n-1, p n, p n+1,.] in 3D Between each pair of points, two control points will be constructed. e.g., For p n a n : the one intermediate after p n b n : the one immediately before p n b n= p n +(p n -a n ) 89
90 Interpolating a Series of Quaternions Interpolated points [, p n-1, p n, p n+1,.] in 3D End conditions 90
91 Interpolating a Series of Quaternions Interpolated points [, p n-1, p n, p n+1,.] in 3D Between any interpolated points p n and p n+1, a cubic Bezier curve segment is defined by p n, a n, b n+1, and p n+1 91
92 Interpolating a Series of Quaternions How to evaluate a point on Bezier curve? De Casteljau Construction Constructing Bezier curve by multiple linear interpolation u=1/3 p(1/3) 9
93 Interpolating a Series of Quaternions Animation: See gif 93
94 Interpolating a Series of Quaternions Bezier interpolation on 4D sphere? How are control points generated? How are cubic Beziers defined? Control points are automatically ti generated as it is not intuitive to manually adjust them on a 4D sphere Derive Bezier curve points by iteratively subdivision s on p n, a n, b n+1, and p n+1 94
95 Interpolating a Series of Quaternions Connecting Segments on 4D Sphere Automatically generating interior (spherical) control points b n = double( an, qn) b n q n q n a n. Bisect the span Bi sect( q' n, q n+ 1 ) = q' q' n n + q + q n+ 1 n+ 1 q n+1 q n-1 1. Double the arc q ' n = double q ( qn 1, qn ) = ( qn 1 qn ) qn qn 1 95
96 Interpolating a Series of Quaternions De Casteljau Construction on 4D Sphere p 1 = slerp(q n,a n, 1 3) p = slerp(a n,b n +1, 1 3) p 3 = slerp(b n +1,q n +1, 1 3) p = slerp(p 1 1 1, p, 3) 3 u=1/3 p 1 a n p P(1/3) b n+1 p 3 p 3 = slerp(p, p 3, 1 3) p = slerp(p 1, p 3, 1 3) q n q n+1 96
97 Path Following Issues about path following Arc length parameterization and speed control Changing the orientation Smoothing a path Path along a surface 97
98 Orientation Along a Curve A local coordinate system (u, v, w) is defined for an object to be animated a Position along the path P(s), denoted as POS w-axis: the direction the object tis facing v-axis: up vector u-axis: perpendicular to w and v (u, v, w): a right-handed coordinate system 98
99 Orientation Along a Curve 99
100 Orientation Along a Curve Frenet Frame Frenet frame: a moving coordinate system determined by curve tangent and curvature w = P '( s ) u = P"( s) v = u w P'( s) 100
101 Problems Orientation Along a Curve Frenet Frame No concept of up vector Is undefined in segments that has no curvature; i.e., P (u)=0 Can be dealt with by interpolating a Frenet frame from the Frenet frames at segment s boundary, which differ by only a rotation around w A discontinuity in the curvature vector Frenet frame has a discontinuous jump in orientation Resulting motions are usually too extreme and not natural looking 101
102 Orientation Along a Curve Frenet Frame 10
103 Orientation Along a Curve Frenet Frame 103
104 Orientation Along a Curve Camera Path Following COI: center of interest A fixed point in the scene Center point of an object in the scene Points along the path itself Points on a separate path in the scene Points on the interpolation between points in the scene w = COI POS u = w y_axis w = C ( s ) P ( s ) w = C ( s ) P ( s ) u = w y_axis u = w ( U ( s) P( s)) v = u w v = u w v = u w 104
105 Smoothing a Path with Linear Interpolation Two points on either sides of a point are averaged, and this point is averaged with the original point. Repeated application P + P + P i 1 i+ 1 i P' i = = P i 1 + P i + P i
106 Smoothing a Path with Linear Interpolation 106
107 Smoothing a Path with Cubic Interpolation Four points on either sides of a point are fitted by a cubic curve, and the midpoint of the curve is averaged with the original point. 3 P ( u ) = au + bu + cu + d P i = P (0) = i d Pi 1 = P(1/ 4) = a + b + c + d P i + 1 = P(3/ 4) = a + b + c + d P i = P(1 = a + b + c + d + ) 107
108 Smoothing a Path with Cubic Interpolation 108
109 Smoothing a Path with Cubic Interpolation 109
110 Determine a Path on a Surface If one object is to move across the surface of another object, we need to specify a path across the surface. Given start and destination points Find a shortest path between the points expensive Determine a plane that contain two points and dis generally perpendicular to the surface (averaged normal of two points) Intersection of the plane with the surface (mesh) 110
111 Determine a Path on a Surface 111
112 Determine a Path on a Parametric Surface Given start and destination points on parametric domain Define the straight line connecting two points in the parametric space The curve on the surface corresponding to this line 11
Computer Animation. Rick Parent
Algorithms and Techniques Interpolating Values Animation Animator specified interpolation key frame Algorithmically controlled Physics-based Behavioral Data-driven motion capture Motivation Common problem:
More informationSplines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes
CSCI 420 Computer Graphics Lecture 8 Splines Jernej Barbic University of Southern California Hermite Splines Bezier Splines Catmull-Rom Splines Other Cubic Splines [Angel Ch 12.4-12.12] Roller coaster
More informationFall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.
Fall 2014 CSCI 420: Computer Graphics 4.2 Splines Hao Li http://cs420.hao-li.com 1 Roller coaster Next programming assignment involves creating a 3D roller coaster animation We must model the 3D curve
More information3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013
3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels
More information3D Modeling Parametric Curves & Surfaces
3D Modeling Parametric Curves & Surfaces Shandong University Spring 2012 3D Object Representations Raw data Point cloud Range image Polygon soup Solids Voxels BSP tree CSG Sweep Surfaces Mesh Subdivision
More informationCS 475 / CS 675 Computer Graphics. Lecture 16 : Interpolation for Animation
CS 475 / CS 675 Computer Graphics Lecture 16 : Interpolation for Keyframing Selected (key) frames are specified. Interpolation of intermediate frames. Simple and popular approach. May give incorrect (inconsistent)
More information3.3 Interpolation of rotations represented by quaternions
3 S 3.3 Interpolation of rotations represented by quaternions : set of unit quaternions ; S :set of unit 3D vectors Interpolation will be performed on 3 S (direct linear interpolation produces nonlinear
More informationDesign considerations
Curves Design considerations local control of shape design each segment independently smoothness and continuity ability to evaluate derivatives stability small change in input leads to small change in
More informationKnow it. Control points. B Spline surfaces. Implicit surfaces
Know it 15 B Spline Cur 14 13 12 11 Parametric curves Catmull clark subdivision Parametric surfaces Interpolating curves 10 9 8 7 6 5 4 3 2 Control points B Spline surfaces Implicit surfaces Bezier surfaces
More informationParametric curves. Brian Curless CSE 457 Spring 2016
Parametric curves Brian Curless CSE 457 Spring 2016 1 Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics
More informationFundamentals of Computer Animation
Fundamentals of Computer Animation Quaternions as Orientations () page 1 Multiplying Quaternions q1 = (w1, x1, y1, z1); q = (w, x, y, z); q1 * q = ( w1.w - v1.v, w1.v + w.v1 + v1 X v) where v1 = (x1, y1,
More informationAnimation Curves and Splines 2
Animation Curves and Splines 2 Animation Homework Set up Thursday a simple avatar E.g. cube/sphere (or square/circle if 2D) Specify some key frames (positions/orientations) Associate Animation a time with
More informationParametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required:
Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Parametric curves CSE 457 Winter 2014 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics and Geometric
More informationSung-Eui Yoon ( 윤성의 )
CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and
More informationCS130 : Computer Graphics Curves. Tamar Shinar Computer Science & Engineering UC Riverside
CS130 : Computer Graphics Curves Tamar Shinar Computer Science & Engineering UC Riverside Design considerations local control of shape design each segment independently smoothness and continuity ability
More informationParametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell
Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c
More informationCGT 581 G Geometric Modeling Curves
CGT 581 G Geometric Modeling Curves Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Technology Curves What is a curve? Mathematical definition 1) The continuous image of an interval
More informationParametric Curves. University of Texas at Austin CS384G - Computer Graphics
Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c
More informationAnimation. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 4/23/07 1
Animation Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 4/23/07 1 Today s Topics Interpolation Forward and inverse kinematics Rigid body simulation Fluids Particle systems Behavioral
More informationCurve and Surface Basics
Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric
More information2D Spline Curves. CS 4620 Lecture 13
2D Spline Curves CS 4620 Lecture 13 2008 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes [Boeing] that is, without discontinuities So far we can make things with corners
More informationCentral issues in modelling
Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to
More informationThe goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a
The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with
More informationIntroduction to Computer Graphics
Introduction to Computer Graphics 2016 Spring National Cheng Kung University Instructors: Min-Chun Hu 胡敏君 Shih-Chin Weng 翁士欽 ( 西基電腦動畫 ) Data Representation Curves and Surfaces Limitations of Polygons Inherently
More informationCOMPUTER AIDED ENGINEERING DESIGN (BFF2612)
COMPUTER AIDED ENGINEERING DESIGN (BFF2612) BASIC MATHEMATICAL CONCEPTS IN CAED by Dr. Mohd Nizar Mhd Razali Faculty of Manufacturing Engineering mnizar@ump.edu.my COORDINATE SYSTEM y+ y+ z+ z+ x+ RIGHT
More informationSplines. Connecting the Dots
Splines or: Connecting the Dots Jens Ogniewski Information Coding Group Linköping University Before we start... Some parts won t be part of the exam Basically all that is not described in the book. More
More informationFreeform Curves on Spheres of Arbitrary Dimension
Freeform Curves on Spheres of Arbitrary Dimension Scott Schaefer and Ron Goldman Rice University 6100 Main St. Houston, TX 77005 sschaefe@rice.edu and rng@rice.edu Abstract Recursive evaluation procedures
More information08 - Designing Approximating Curves
08 - Designing Approximating Curves Acknowledgement: Olga Sorkine-Hornung, Alexander Sorkine-Hornung, Ilya Baran Last time Interpolating curves Monomials Lagrange Hermite Different control types Polynomials
More informationA Curve Tutorial for Introductory Computer Graphics
A Curve Tutorial for Introductory Computer Graphics Michael Gleicher Department of Computer Sciences University of Wisconsin, Madison October 7, 2003 Note to 559 Students: These notes were put together
More informationIn this course we will need a set of techniques to represent curves and surfaces in 2-d and 3-d. Some reasons for this include
Parametric Curves and Surfaces In this course we will need a set of techniques to represent curves and surfaces in 2-d and 3-d. Some reasons for this include Describing curves in space that objects move
More informationAnimation. Animation
CS475m - Computer Graphics Lecture 5 : Interpolation for Selected (key) frames are specified. Interpolation of intermediate frames. Simple and popular approach. May give incorrect (inconsistent) results.
More informationLecture IV Bézier Curves
Lecture IV Bézier Curves Why Curves? Why Curves? Why Curves? Why Curves? Why Curves? Linear (flat) Curved Easier More pieces Looks ugly Complicated Fewer pieces Looks smooth What is a curve? Intuitively:
More informationTrajectory planning in Cartesian space
Robotics 1 Trajectory planning in Cartesian space Prof. Alessandro De Luca Robotics 1 1 Trajectories in Cartesian space! in general, the trajectory planning methods proposed in the joint space can be applied
More informationComputer Graphics Curves and Surfaces. Matthias Teschner
Computer Graphics Curves and Surfaces Matthias Teschner Outline Introduction Polynomial curves Bézier curves Matrix notation Curve subdivision Differential curve properties Piecewise polynomial curves
More informationCurves D.A. Forsyth, with slides from John Hart
Curves D.A. Forsyth, with slides from John Hart Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction
More informationSpline Notes. Marc Olano University of Maryland, Baltimore County. February 20, 2004
Spline Notes Marc Olano University of Maryland, Baltimore County February, 4 Introduction I. Modeled after drafting tool A. Thin strip of wood or metal B. Control smooth curved path by running between
More information2D Spline Curves. CS 4620 Lecture 18
2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,
More informationAnimation. CS 4620 Lecture 32. Cornell CS4620 Fall Kavita Bala
Animation CS 4620 Lecture 32 Cornell CS4620 Fall 2015 1 What is animation? Modeling = specifying shape using all the tools we ve seen: hierarchies, meshes, curved surfaces Animation = specifying shape
More informationComputer Animation Fundamentals. Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics
Computer Animation Fundamentals Animation Methods Keyframing Interpolation Kinematics Inverse Kinematics Lecture 21 6.837 Fall 2001 Conventional Animation Draw each frame of the animation great control
More informationManipulator trajectory planning
Manipulator trajectory planning Václav Hlaváč Czech Technical University in Prague Faculty of Electrical Engineering Department of Cybernetics Czech Republic http://cmp.felk.cvut.cz/~hlavac Courtesy to
More informationCurve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur
Curve Representation ME761A Instructor in Charge Prof. J. Ramkumar Department of Mechanical Engineering, IIT Kanpur Email: jrkumar@iitk.ac.in Curve representation 1. Wireframe models There are three types
More informationGeometric Modeling of Curves
Curves Locus of a point moving with one degree of freedom Locus of a one-dimensional parameter family of point Mathematically defined using: Explicit equations Implicit equations Parametric equations (Hermite,
More informationCS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside
CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside Blending Functions Blending functions are more convenient basis than monomial basis canonical form (monomial
More informationCurves and Surfaces Computer Graphics I Lecture 9
15-462 Computer Graphics I Lecture 9 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] February 19, 2002 Frank Pfenning Carnegie
More informationCurves. Computer Graphics CSE 167 Lecture 11
Curves Computer Graphics CSE 167 Lecture 11 CSE 167: Computer graphics Polynomial Curves Polynomial functions Bézier Curves Drawing Bézier curves Piecewise Bézier curves Based on slides courtesy of Jurgen
More informationQuaternions and Rotations
CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body
More informationAnimation. Keyframe animation. CS4620/5620: Lecture 30. Rigid motion: the simplest deformation. Controlling shape for animation
Keyframe animation CS4620/5620: Lecture 30 Animation Keyframing is the technique used for pose-to-pose animation User creates key poses just enough to indicate what the motion is supposed to be Interpolate
More informationSpline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1
Spline Curves Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1 Problem: In the previous chapter, we have seen that interpolating polynomials, especially those of high degree, tend to produce strong
More informationThe Three Dimensional Coordinate System
The Three-Dimensional Coordinate System The Three Dimensional Coordinate System You can construct a three-dimensional coordinate system by passing a z-axis perpendicular to both the x- and y-axes at the
More informationBezier Curves, B-Splines, NURBS
Bezier Curves, B-Splines, NURBS Example Application: Font Design and Display Curved objects are everywhere There is always need for: mathematical fidelity high precision artistic freedom and flexibility
More informationCOMP3421. Global Lighting Part 2: Radiosity
COMP3421 Global Lighting Part 2: Radiosity Recap: Global Lighting The lighting equation we looked at earlier only handled direct lighting from sources: We added an ambient fudge term to account for all
More informationInformation Coding / Computer Graphics, ISY, LiTH. Splines
28(69) Splines Originally a drafting tool to create a smooth curve In computer graphics: a curve built from sections, each described by a 2nd or 3rd degree polynomial. Very common in non-real-time graphics,
More informationCity Research Online. Permanent City Research Online URL:
Slabaugh, G.G., Unal, G.B., Fang, T., Rossignac, J. & Whited, B. Variational Skinning of an Ordered Set of Discrete D Balls. Lecture Notes in Computer Science, 4975(008), pp. 450-461. doi: 10.1007/978-3-540-7946-8_34
More informationLecture 9: Introduction to Spline Curves
Lecture 9: Introduction to Spline Curves Splines are used in graphics to represent smooth curves and surfaces. They use a small set of control points (knots) and a function that generates a curve through
More informationTO DUY ANH SHIP CALCULATION
TO DUY ANH SHIP CALCULATION Ship Calculattion (1)-Space Cuvers 3D-curves play an important role in the engineering, design and manufature in Shipbuilding. Prior of the development of mathematical and computer
More informationFriday, 11 January 13. Interpolation
Interpolation Interpolation Interpolation is not a branch of mathematic but a collection of techniques useful for solving computer graphics problems Basically an interpolant is a way of changing one number
More informationCurves and Surfaces Computer Graphics I Lecture 10
15-462 Computer Graphics I Lecture 10 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] September 30, 2003 Doug James Carnegie
More informationPart II: OUTLINE. Visualizing Quaternions. Part II: Visualizing Quaternion Geometry. The Spherical Projection Trick: Visualizing unit vectors.
Visualizing Quaternions Part II: Visualizing Quaternion Geometry Andrew J. Hanson Indiana University Part II: OUTLINE The Spherical Projection Trick: Visualizing unit vectors. Quaternion Frames Quaternion
More informationAnimation. CS 4620 Lecture 33. Cornell CS4620 Fall Kavita Bala
Animation CS 4620 Lecture 33 Cornell CS4620 Fall 2015 1 Announcements Grading A5 (and A6) on Monday after TG 4621: one-on-one sessions with TA this Friday w/ prior instructor Steve Marschner 2 Quaternions
More informationReading. Parametric surfaces. Surfaces of revolution. Mathematical surface representations. Required:
Reading Required: Angel readings for Parametric Curves lecture, with emphasis on 11.1.2, 11.1.3, 11.1.5, 11.6.2, 11.7.3, 11.9.4. Parametric surfaces Optional Bartels, Beatty, and Barsky. An Introduction
More informationProf. Fanny Ficuciello Robotics for Bioengineering Trajectory planning
Trajectory planning to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectories path and trajectory joint space trajectories operational
More informationCurves and Surface I. Angel Ch.10
Curves and Surface I Angel Ch.10 Representation of Curves and Surfaces Piece-wise linear representation is inefficient - line segments to approximate curve - polygon mesh to approximate surfaces - can
More informationInteractive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1
Interactive Graphics Lecture 9: Introduction to Spline Curves Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 13: Slide 2 Splines The word spline comes from the ship building trade
More informationComputer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail
Computer Graphics CS 54 Lecture 1a Curves, Tesselation/Geometry Shaders & Level of Detail Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines
More informationEssential Mathematics for Computational Design
Essential Mathematics for Computational Design, Third edition, by Robert McNeel & Associates, 2013 is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License. ii Preface Essential
More informationIntro to Curves Week 1, Lecture 2
CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University Outline Math review Introduction to 2D curves
More informationCSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016
CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements Project 3 due tomorrow Midterm 2 next
More informationMath (Spring 2009): Lecture 5 Planes. Parametric equations of curves and lines
Math 18.02 (Spring 2009): Lecture 5 Planes. Parametric equations of curves and lines February 12 Reading Material: From Simmons: 17.1 and 17.2. Last time: Square Systems. Word problem. How many solutions?
More informationUntil now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple
Curves and surfaces Escaping Flatland Until now we have worked with flat entities such as lines and flat polygons Fit well with graphics hardware Mathematically simple But the world is not composed of
More informationCS 536 Computer Graphics Intro to Curves Week 1, Lecture 2
CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 Outline Math review Introduction to 2D curves
More informationVisual Recognition: Image Formation
Visual Recognition: Image Formation Raquel Urtasun TTI Chicago Jan 5, 2012 Raquel Urtasun (TTI-C) Visual Recognition Jan 5, 2012 1 / 61 Today s lecture... Fundamentals of image formation You should know
More informationCOMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg
COMPUTER AIDED GEOMETRIC DESIGN Thomas W. Sederberg January 31, 2011 ii T. W. Sederberg iii Preface This semester is the 24 th time I have taught a course at Brigham Young University titled, Computer Aided
More informationObjects 2: Curves & Splines Christian Miller CS Fall 2011
Objects 2: Curves & Splines Christian Miller CS 354 - Fall 2011 Parametric curves Curves that are defined by an equation and a parameter t Usually t [0, 1], and curve is finite Can be discretized at arbitrary
More informationCurves and Surfaces. CS475 / 675, Fall Siddhartha Chaudhuri
Curves and Surfaces CS475 / 675, Fall 26 Siddhartha Chaudhuri Klein bottle: surface, no edges (Möbius strip: Inductiveload@Wikipedia) Möbius strip: surface, edge Curves and Surfaces Curve: D set Surface:
More informationRepresenting Curves Part II. Foley & Van Dam, Chapter 11
Representing Curves Part II Foley & Van Dam, Chapter 11 Representing Curves Polynomial Splines Bezier Curves Cardinal Splines Uniform, non rational B-Splines Drawing Curves Applications of Bezier splines
More informationComputer Animation 4-Motion Control SS 13
Computer Animation 4-Motion Control SS 13 Prof. Dr. Charles A. Wüthrich, Fakultät Medien, Medieninformatik Bauhaus-Universität Weimar caw AT medien.uni-weimar.de Controlling motion along curves We all
More informationAdvanced Computer Graphics Transformations. Matthias Teschner
Advanced Computer Graphics Transformations Matthias Teschner Motivation Transformations are used To convert between arbitrary spaces, e.g. world space and other spaces, such as object space, camera space
More informationQuaternion Interpolation
Quaternion Interpolation 3D Rotation Repreentation (reiew) Rotation Matrix orthornormal column/row bad for interpolation Fixed Angle rotate about global axe bad for interpolation, gimbal lock Euler Angle
More informationBackground for Surface Integration
Background for urface Integration 1 urface Integrals We have seen in previous work how to define and compute line integrals in R 2. You should remember the basic surface integrals that we will need to
More informationPS Geometric Modeling Homework Assignment Sheet I (Due 20-Oct-2017)
Homework Assignment Sheet I (Due 20-Oct-2017) Assignment 1 Let n N and A be a finite set of cardinality n = A. By definition, a permutation of A is a bijective function from A to A. Prove that there exist
More informationQuaternions and Exponentials
Quaternions and Exponentials Michael Kazhdan (601.457/657) HB A.6 FvDFH 21.1.3 Announcements OpenGL review II: Today at 9:00pm, Malone 228 This week's graphics reading seminar: Today 2:00-3:00pm, my office
More informationRobots are built to accomplish complex and difficult tasks that require highly non-linear motions.
Path and Trajectory specification Robots are built to accomplish complex and difficult tasks that require highly non-linear motions. Specifying the desired motion to achieve a specified goal is often a
More informationFor each question, indicate whether the statement is true or false by circling T or F, respectively.
True/False For each question, indicate whether the statement is true or false by circling T or F, respectively. 1. (T/F) Rasterization occurs before vertex transformation in the graphics pipeline. 2. (T/F)
More informationECE 600, Dr. Farag, Summer 09
ECE 6 Summer29 Course Supplements. Lecture 4 Curves and Surfaces Aly A. Farag University of Louisville Acknowledgements: Help with these slides were provided by Shireen Elhabian A smile is a curve that
More informationMotivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010)
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 19: Basic Geometric Concepts and Rotations Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs283/fa10 Motivation Moving from rendering to simulation,
More informationCurves and Surfaces. Shireen Elhabian and Aly A. Farag University of Louisville
Curves and Surfaces Shireen Elhabian and Aly A. Farag University of Louisville February 21 A smile is a curve that sets everything straight Phyllis Diller (American comedienne and actress, born 1917) Outline
More informationFathi El-Yafi Project and Software Development Manager Engineering Simulation
An Introduction to Geometry Design Algorithms Fathi El-Yafi Project and Software Development Manager Engineering Simulation 1 Geometry: Overview Geometry Basics Definitions Data Semantic Topology Mathematics
More information(Discrete) Differential Geometry
(Discrete) Differential Geometry Motivation Understand the structure of the surface Properties: smoothness, curviness, important directions How to modify the surface to change these properties What properties
More information(Spline, Bezier, B-Spline)
(Spline, Bezier, B-Spline) Spline Drafting terminology Spline is a flexible strip that is easily flexed to pass through a series of design points (control points) to produce a smooth curve. Spline curve
More informationCSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013
CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Homework assignment 5 due tomorrow, Nov
More informationComputer Graphics. Curves and Surfaces. Hermite/Bezier Curves, (B-)Splines, and NURBS. By Ulf Assarsson
Computer Graphics Curves and Surfaces Hermite/Bezier Curves, (B-)Splines, and NURBS By Ulf Assarsson Most of the material is originally made by Edward Angel and is adapted to this course by Ulf Assarsson.
More informationCSE 167: Introduction to Computer Graphics Lecture #13: Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017
CSE 167: Introduction to Computer Graphics Lecture #13: Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 4 due Monday Nov 27 at 2pm Next Tuesday:
More informationCurves and Surfaces 1
Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing
More informationPhysically-Based Modeling and Animation. University of Missouri at Columbia
Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids
More informationIntro to Modeling Modeling in 3D
Intro to Modeling Modeling in 3D Polygon sets can approximate more complex shapes as discretized surfaces 2 1 2 3 Curve surfaces in 3D Sphere, ellipsoids, etc Curved Surfaces Modeling in 3D ) ( 2 2 2 2
More informationCurves and Curved Surfaces. Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006
Curves and Curved Surfaces Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006 Outline for today Summary of Bézier curves Piecewise-cubic curves, B-splines Surface
More informationComputer Graphics Splines and Curves
Computer Graphics 2015 9. Splines and Curves Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2015-11-23 About homework 3 - an alternative solution with WebGL - links: - WebGL lessons http://learningwebgl.com/blog/?page_id=1217
More informationQuaternions and Rotations
CSCI 520 Computer Animation and Simulation Quaternions and Rotations Jernej Barbic University of Southern California 1 Rotations Very important in computer animation and robotics Joint angles, rigid body
More informationHomework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves
Computer Graphics Instructor: Brian Curless CSE 457 Spring 2013 Homework #2 Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves Assigned: Sunday, May 12 th Due: Thursday,
More informationGEOMETRIC TOOLS FOR COMPUTER GRAPHICS
GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W
More information