Next: 8.5.4 Examples Up: 8.5 Contouring constant curvature Previous: 8.5.2 Finding starting points   Contents   Index


8.5.3 Mathematical formulation of contouring

Contour curves for constant curvature satisfy the following equation
    (8.127)

where is a curvature at the given point ( ). The procedure for tracing contour curves is same as that of tracing method in the intersection problem that we discussed in Sect. 5.8.1. We now consider a space curve which lies on the surface represented by the parametric form . Differentiating (8.127) with respect to yields
    (8.128)

where , are the first derivatives with respect to , and ( , ) gives the direction of the contour line in parameter space. The solutions to (8.128) can be written as
    (8.129)

where is an arbitrary nonzero factor. When the curvature map is constructed in the parameter space, can be chosen to provide arc-length parametrization in the parameter domain as follows
    (8.130)

or when it is constructed on the surface itself, can be chosen to provide arc length parametrization using first fundamental form (3.13) of the surface as a normalization condition as in (5.91)
    (8.131)

where and are given in (8.35), (8.48) and (8.60) for Gaussian, mean and principal curvatures respectively.

The points of the contour curves are computed successively by integrating the initial value problem for a system of coupled nonlinear differential equations (8.129) using, for example the Runge-Kutta method or a more sophisticated variable stepsize and variable order Adams method [69]. Starting points are computed by the method described in Sect. 8.5.2. Accuracy of the contour curve depends on the number of points used to represent the contour curve by straight line segments. Note that for principal curvatures, and become singular at an umbilical point, therefore we avoid the contour level which is equivalent to the curvature value at the umbilics.

To generate a color curvature map, graphics packages require closed polygonal geometry. Therefore, for display purposes and also for theoretical interest, it is necessary to decompose a parameter sub-domain further into closed polygonal regions. We may use the trip algorithm introduced by Preusser [337] to polygonize the area between contour curves.

A closed polygon is defined by contour curves and the border lines of the domain as illustrated in Fig. 8.10. Let and be the starting and ending point of a contour curve respectively, and be the vertices of the rectangular sub-domain. The algorithm is given as follows:

Trip algorithm [337]

  1. Start the first round trip from .
  2. At continue in a counter-clockwise direction on the rectangular boundary to the next starting point or vertex.
  3. Search a way back to the starting point by following a contour curve from , or a rectangular boundary from a vertex. As a result, the first polygon is given by - - - - - .
  4. A second polygon is started at the next unused starting point in counter-clockwise direction and is completed in the same way which results in - - - - - .
  5. When there are no unused points , we start the remaining polygons at points that have served only as the end of a contour curve, i.e. and .

Figure 8.10: Trip algorithm



Next: 8.5.4 Examples Up: 8.5 Contouring constant curvature Previous: 8.5.2 Finding starting points   Contents   Index
December 2009