Geometric Modeling and Curves/Surfaces
Domain scope
Geometric Modeling and Curves/Surfaces tests mesh representations, parametric curves, splines, subdivision, and the trade-offs between control, continuity, and computational cost.
Core rules
- A Bézier curve of degree n has n+1 control points; it interpolates its endpoints and is tangent to the first and last control segments.
- de Casteljau's algorithm evaluates a Bézier curve by repeated linear interpolation and is numerically stable.
- B-splines have local control: moving one control point affects only a bounded span, unlike a global Bézier curve.
- Continuity matters: C0 is positional, C1 is tangent continuity, and G1 is geometric tangent continuity.
Worked example
Evaluate the quadratic Bézier with P0=(0,0), P1=(1,2), P2=(2,0) at t=0.5. The Bernstein form is B(t)=(1-t)^2P0+2(1-t)tP1+t^2P2. At t=0.5 the weights are 0.25, 0.5, 0.25, so B=(0.25·0+0.5·1+0.25·2, 0.25·0+0.5·2+0.25·0)=(1,1). The de Casteljau check interpolates P0-P1 at 0.5 to (0.5,1) and P1-P2 to (1.5,1), then interpolates those to (1,1).
Traps that cost marks
- Assuming a Bézier curve passes through interior control points.
- Forgetting that uniform B-splines are not interpolating at their control points.
- Treating rational weights as simple scaling; weights change the projective shape.
- Computing vertex normals by averaging unweighted face normals on irregular meshes without area weighting.