Review on Skeletal Stroke Deformation

The skeletal stroke deformation has been discussed in detail in [28], here we will only briefly go through the main points but leave out the mathematical details and derivations.

The skeletal stroke deformation is based on localized parametric coordinate system transformation along the stroke application path. A skeletal stroke is defined by specifying a reference backbone and a reference thickness on any arbitrary picture. The purpose of defining the reference backbone and thickness is for parameterizing the coordinate system of the original picture. On applying the stroke along a path, the original picture is redrawn on the deformed coordinate system defined by the path, the width of the stroke application, and some other optional parameters like shear angle and twist.

Figure 5: A stroke applied onto the same Stroke Definition path with 3 different types of joints.

(a) Mitrejoint

Naively using the instantaneous normals along the application path as the deformed local y axes would cause the flesh (the picture abstracted in a stroke) to wrinkle or fold back onto itself.

To eliminate these undesirable effects, we have proposed a deformation model based on an idealized material with non-localized deformation on axial compression. The lateral deformation is handled by spatially constraining the material to the local centre of curvature. In the cases of extreme bending, which is common for thick polyline strokes, we introduced a macroscopic centre of curvature (MCC) which is the intersection point of two angle bisectors at two adjacent joints. The coordinate space would converge towards the MCC as in the case for continuous stroke paths. The joint zone coordinate systems for mitre, bevel and round joints are also derived.

If we use an undistorted skeletal stroke as a texture coordinate space [11], sampled images can be deformed with a skeletal stroke application using standard texture mapping techniques. Since the relation between the original (defined by the reference backbone) and the distorted (specified in the stroke application) coordinate systems is well defined, proper filtering of the texture map can be performed.

Normally, the flesh would freely stretch and shrink with the length of the application path. This might not be desirable for special features in a stroke, like serifs or other stroke-end forms. We have therefore defined an anchoring mechanism which allows the aspect ratio of part of the flesh (i.e. a subset of vertices or control points in the original picture) to be retained. This is actually achieved by parameterizing the coordinates to a new coordinate system with a shifted origin known as the anchor origin. The final coordinates (both x and y) on application are controlled by the width of the stroke application alone, hence a part of the flesh anchored to a single anchor origin would retain its aspect ratio and would not stretch or shrink with the application path length but would move with the final position of the anchor origin. If we anchor different parts of the flesh to different anchor origins, they would shift to different absolute positions.

Figure 6: Anchoring different parts to different anchor origins.

anchoring and the use of this mechanism to construct pseudo-3D models shall be described in a subsequent section.

Stroke definition

Application to paths of different lengths

Stroke definition

Application to paths of different lengths

The effect of anchoring to different anchor origins can be interesting. In figure 6, the figure's pupils (and half of each eye) and the rest of its face are both anchored but to different ends of the stroke. The former is anchored to the point A1; the latter to A2. If we change the stroke length while fixing the stroke width, the eyes will bulge with the end of the stroke while the rest of the face stays with the beginning of the stroke.

If the anchor origins themselves are anchored to other anchor origins, the deformation result would be even more dramatic. In fact, we have proved that for nth order anchoring, the final x and y coordinates are actually nth degree parametric equations with the coefficients being the respective x and y coordinates of the various anchor origins and the parameter being the changes in aspect ratio from the origin aspect ratio on definition[28]. Therefore we could conveniently encode any subtle deformations to a single stroke definition.

The elegance of the general anchoring mechanism lies in its consistency with the intuitive zeroth order anchoring and arbitrary deformation. The extension to piecewise continuous general

Figure 7: A stroke resembling a head. 2nd order anchoring has been used to control the deformation of the head to give an illusion of rotation. The anchor origins are determined automatically by the system.

Figure 7: A stroke resembling a head. 2nd order anchoring has been used to control the deformation of the head to give an illusion of rotation. The anchor origins are determined automatically by the system.

Was this article helpful?

0 0

Post a comment