Summary

This document explains curves and surfaces, including their mathematical descriptions and parametric representations. It details functional descriptions, polygon-mesh approximations for surfaces, and the use of splines for curve design in computer graphics.

Full Transcript

Unit V – Curves and Surfaces Shape description requirements and Parametric Functions Curves and Surfaces Displays of three dimensional curved lines and surfaces can be generated from an input set of mathematical functions defining the objects from set of us...

Unit V – Curves and Surfaces Shape description requirements and Parametric Functions Curves and Surfaces Displays of three dimensional curved lines and surfaces can be generated from an input set of mathematical functions defining the objects from set of use specified data points. When functions are specified, a package can project the defining equations for a curve to the display plane and plot pixel positions along the path of the projected function. For surfaces, a functional description is often tessellated to produce a polygon-mesh approximation to the surface. Usually, this is done with triangular polygon patches to ensure that all vertices of any polygon are in one plane. Polygons specified with four or more vertices may not have all vertices in a single plane. Examples of display surfaces generated from functional descriptions include the quadrics and the superquadrics. When a set of discrete coordinate points is used to specify an object shape, a functional description is obtained that best fits the designated points according to the constraints of the application. Spline representations are examples of this class of curves and surfaces. These methods are commonly used to design new object shapes, to digitize drawings, and to describe animation paths. Curve-fitting methods are also used to display graphs of data values by fitting specified curve functions to the discrete data set, using regression techniques such as the least-squares method Curve and surface equations can be expressed in either a parametric or a nonparametric form For computer graphics applications, parametric representations are generally more convenient PARAMETRIC REPRESENTATIONS Euclidean curves are one-dimensional objects, and positions along the path of a three-dimensional curve can be described with a single parameter u. That is, we can express each of the three Cartesian coordinates in terms of parameter u, and any point on the curve can then be represented with the following vector point Function (relative to a particular Cartesian reference frame): Often, the coordinate equations can be set up so that parameter u is defined over the unit interval from 0 to 1. For example, a circle in the xy plane with center at the coordinatc origin could be defined in parametric form as Other parametric fomx are also possible for describing circles and circular arcs Curved (or plane) Euclidean surfaces are two-dimensional objects, and positions on a surface can be described with two parameters u and v. A coordinate position on the surface is then represented with the parametric vector function where the Cartesian coordinate values for x, y, and z are expressed as functions of parameters u and v. As with curves, it is often possible to arrange the parametric descriptions so that parameters u and v are defined over the range from 0 to 1. A spherical surface with center at the coordinate origin, for example, can be described with the equations where r is the radius of the sphere. Parameter u describes lines of constant latitude over the surface, and parameter v describes lines of constant longitude. By keeping one of these parameters fixed while varying the other over a subinterval of the range from 0td 1,we could plot latitude and longitude lines for any spherical section Spline Representation In drafting terminology, a spline is a flexible strip used to produce a smooth curve through a designated set of points. Several small weights are distributed along the length of the strip to hold it in position on the drafting table as the curve is drawn. The term spline curve originally referred to a curve drawn in this manner. We can mathematically describe such a curve with a piecewise cubic polynomial function whose first and second derivatives are continuous across the various curve section In computer graphics, the term spline curve now refers to any composite curve formed with polynomial sections satisfying specified continuity conditions at the boundary of the pieces. A spline surface can be described with two sets of orthogonal spline curves Splines are used in graphics applications to design curve and surface shapes, to digitize drawings for computer storage, and to specify animation paths for the objects or the camera in a scene. Typical CAD applications for splines include the design of automobile bodies, aircraft and spacecraft surfaces, and ship hulls Interpolation and Approximation Splines We specify a spline curve by giving a set of coordinate positions, called control points, which indicates the general shape of the curve, These, control points are then fitted with piecewise continuous parametric polynomial functions in one of two ways. When polynomial sections are fitted so that the curve passes through each control point, as in Fig. 10-19, the resulting curve is said to interpolate the set of control points. On the other hand, when the polynomials are fitted to the general control-point path without necessarily passing through Interpolation curves are commonly used to digitize drawings or to specify animation paths. Approximation curves are primarily used as design tools to structure object surfaces Figure10-21 shows an approximation spline surface created for a design application. Straight lines connect the control-point positions above the surface. A spline curve is defined, modified, and manipulated with operations on the control points. By interactively selecting spatial positions for the control points, a designer can set up an initial curve. After the polynomial fit is displayed for a given set of control points, the designer can then reposition some or all of the control points to restructure the shape of the curve. In addition, the curve can be translated, rotated, or scaled with transformations applied to the control points. CAD packages can also insert extra control points to aid a designer in adjusting the curve shapes. The convex polygon boundary that encloses a set of control points is called the convex hull. One way to envision the shape of a convex hull is to imagine a rubber band stretched around the positions of the control points so that each control point is either on the perimeter of the hull or inside it (Fig. 10-22) Convex hulls provide a measure for the deviation of a curve or surface from the region bounding the control points. Parametric Continuity Conditions To ensure a smooth transition from one section of a piecewise parametric curve to the next, we can impose various continuity conditions at the connection points. If each section of a spline is described with a set of parametric coordinate functions of the form we set parametric continuity by matching the parametric derivatives of adjoining curve sections at their common boundary. Zero-order parametric continuity, described as C0 continuity, means simply that the curves meet. That is, the values of x, y and z evaluated at u2 for the first curve section are equal, respectively, to the values of x, y, and z evaluated at u1 for the next curve section. First-order parametric continuity, referred to as C1 continuity, means that the first parametric derivatives (tangent lines) of the coordinate functions in Eq. 10-20 for two successive curve sections are equal at their joining point. Second-order parametric continuity, or C2 continuity, means that both the first and second parametric derivatives of the two curve sections are the same at the intersection Higher-order parametric continuity conditions are defined similarly. Figure 10- 24 shows examples of C0, C1,and C2 continuity. Geometric Continuity Conditions An alternate method for joining two successive curve sections is to specify conditions for geometric continuity. In this case, we only require parametric derivatives of the two sections to be proportional to each other at their common boundary instead of equal to each other. Zero-order geometric continuity, described as G0 continuity, is the same as zero-order parametric continuity. That is, the two curves sections must have the same coordinate position at the boundary point. First-order geometric continuity function or G 0 continuity, means that the parametric first derivatives are proportional at the intersection of two successive sections. If we denote the parametric position on the curve as P(u), the direction of the tangent vector P'(u), but not necessarily its magnitude, will be the same for two successive curve sections at their joining point under G1 continuity. Second-order geometric continuity, or G2 continuity means that both the first and second parametric derivatives of the two curve sections are proportional at their boundary. Under G2 continuity, curvatures of two curve sections will match at the joining position. A curve generated with geometric continuity conditions is similar to one generated with parametric continuity, but with slight differences in curve shape. Figure 10-25 provides a comparison of geometric and parametric continuity. With geometric continuity, the curve is pulled toward the section with the greater tangent vector. Spline Specifications There are three equivalent methods for specifying a particular spline representation: (1) We can state the set of boundary conditions that are imposed on the spline; or (2) we can state the matrix that characterizes the spline; or (3) we can state the set of blending functions (or basis functions) that determine how specified geometric constraints on the curve are combined to calculate positions along the curve path To illustrate these three equivalent specifications, suppose we have the following parametric cubic polynomial representation for the x coordinate along the path of a spline section: Boundary conditions for this curve might be set, for example, on the endpoint coordinates x(0) and x(1) and on the parametric first derivatives at the endpoints x'(0) and x’(1).These four boundary conditions are sufficient to determine the values of the four coefficients ax , bx, cx and dx From the boundary conditions, we can obtain the matrix that characterizes this spline curve by first rewriting Eq. 10-21 as the matrix product where U is the row matrix of powers of parameter u, and C is the coefficient column matrix. Using Eq. 10-22, we can write the boundary conditions in matrix form and solve for the coefficient matrix C as where Mgeom is a four-element column matrix containing the geometric constraint values (boundary condihons) on the spline; and M spline is the 4-by- 4 matrix that transforms the geometric constraint values to the polynomial coefficients and provides a characterization for the spline curve. Matrix Mgeom contains control point coordinate values and other geometric constraints that have been specified. Thus, we can substitute the matrix representation for C into Eq. 10-22 to obtain The matrix, Mspline characterizing a spline representation, sometimes called the basis matrix, is particularly useful for transforming from one spline representation to another Bezier Curves and surfaces This spline approximation method was developed by the French engineer Pierre Bezier for use in the design of Renault automobile bodies. Bezier splines have a number of properties that make them highly useful and convenient for curve and surface design. They are also easy to implement. For these reasons, Bezier splines are widely available in various CAD systems, in general graphics packages (such as GL on Silicon Graphics systems), and in assorted drawing and painting packages (such as Aldus Superpaint and Cricket Draw). Bezier Curves In general, a Bezier curve section can be fitted to any number of control points. The number of control points to be approximated and their relative position determine the degree of the Bezier polynomial. As with the interpolation splines, a Bezier curve can be specified with boundary conditions, with a characterizing matrix, or with blending functions. For general Bezier curves, the blending- function specification is the most convenient. Suppose we are given n + 1 control-point positions: pk = (Xk, yk, zk),with k varying from 0 to n. These coordinate points can be blended to produce the following position vector P(u),which describes the path of an approximating Bezier polynomial function between p0 and pn As a rule, a Bezier curve is a polynomial of degree one less than the number of control points used: Three points generate a parabola, four points a cubic curve, and so forth. Figure 10-34 demonstrates the appearance of some Bezier curves for various selections of control points in the xy plane (z = 0). With certain control-point placements, however, we obtain degenerate Bezier polynomials. For example, a Bezier curve generated with three collinear control points is a straight-line segment. And a set of control points that are all at the same coordinate position produces a Bezier "curve" that is a single point. Bezier curves are commonly found in painting and drawing packages, as well as CAD systems, since they are easy to implement and they are reasonably powerful in curve design. Efficient methods for determining coordinate positions along a Bezier curve can be set up using recursive calculations. For example, successive binomial coefficients can be calculated as

Use Quizgecko on...
Browser
Browser