Advanced Methods in Computer Graphics

Kinematics (Advanced Methods in Computer Graphics) Part 3

The Jacobian In general, we can assume that the end effector position E = (xe, ye, ze) of an n-link joint chain can be expressed as a function of joint angles 9, for , = 1,..,n, (for example, see Eq. 6.1). Thus we can write If A9, denotes an infinitesimal change in the joint angles […]

Kinematics (Advanced Methods in Computer Graphics) Part 4

Cyclic Coordinate Descent The Cyclic Coordinate Descent (CCD) algorithm is a well-known method used for inverse kinematics solutions in computer graphics applications involving joint chains and moving targets. CCD performs a series of rotations on the links of a joint chain, starting with the last link, each time trying to move the end effector closer […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 1

Overview In computer graphics, blending curves and surfaces are widely used for both interpolation and approximation. We have previously seen the application of Hermite polynomials in vertex blending, and Catmull-Rom splines for keyframe interpolation. Spline curves and surfaces also find applications in the interactive design of three-dimensional models. This topic gives an overview of polynomial […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 2

Parametric Continuity In the previous section we saw an example (Fig. 7.2) of a set of piecewise cubic curves joined together to form a single “continuous” curve. Clearly we require higher levels of continuity at the points where two curves meet, in order to get a smooth transition from one polynomial curve on to another. […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 3

Bezier Curves Bezier splines are approximating curves generated using Bernstein polynomials as the blending functions (see Box 2.4, Sect. 2.7). Denoting n + 1 control points by P1… Pn+1, the parametric representation of the nth degree Bezier curve is given by where, ß,,n(t) denotes Bernstein polynomials of degree n. Since Bernstein polynomials always yield non-negative […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 4

Polynomial Interpolants The parametric curves introduced in previous sections were all based on piecewise cubic polynomials and the points on each segment were generated by varying the parameter t from 0 to 1. In this section, we will develop the framework of a more general class of interpolating splines where t can have an arbitrary […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 5

Approximating Curves We shall now look at ways of constructing approximating curves using a set of n control points P1… Pn, and B-splines as the blending functions. Since the curve is not required to pass through all control points, we have a selection of polynomials of different degrees for blending functions. A parametric curve of […]

Curves and Surfaces (Advanced Methods in Computer Graphics) Part 6

Coons Patches The interpolation methods discussed in the previous section use positions and derivatives defined at the control points as boundary conditions. A surface patch may be required to have curves with known equations along its four edges. Suppose four edge curves forming the boundary of a region are given by parametric functions C1(u), C2(u), […]

Mesh Processing (Advanced Methods in Computer Graphics) Part 1

Overview In computer graphics applications, three-dimensional models are almost always represented using polygonal meshes. A mesh in its simplest form consists of a set of vertices, polygons, and optionally a number of additional vertex and polygonal attributes. The complexity of a mesh can vary from low to very high depending on requirements such as rendering […]

Mesh Processing (Advanced Methods in Computer Graphics) Part 2

Mesh Data Structures Mesh data structures are designed to provide information about both mesh geometry and topology so that they could be used for fast traversal and processing of meshes. A large number of mesh operations extensively use information about mesh connectivity and local orientation around vertices. Mesh data structures also support efficient processing of […]