CS335 (Fall 2008) Solution of Homework 7 (20 points) Due: December 13, 2008 (Thursday) ************************************************************************ 1. (Subdivision) It was shown in class that by performing a mid-point subdivision on the control points of a cubic Bezier curve segment, we split the curve into two segments, each with its own control points. Why is the mid-point subdivision technique important? (explain to me its application in Bezier curve rendering and curve intersection point computation) (10 points) SOL. By recursively subdividing a Bezier curve, we get a sequence of linear polygons (control polygons of the resulting segments) that converges to the curve. Therefore, we can use those linear polygons to approximate the given curve in applications such as curve rendering and curve-curve intersection. 2. (Forward Differencing) Using forward differencing technique to render a cubic polynomial curve, one only needs three additions for each point. By far, this is the most efficient way to render a cubic polynomial curve. But this technique has a problem. What is it and why? (10 points) SOL. The method is fast, but numerically not stable. This is because the rounding and truncation errors generated in this process will accumulate all the way from the start point to the last point. Therefore, by the time we reach the last point, the error could be so large that the computed point is not on the curve at all. The situation is worse when the number of points in the forwarding process is large.