Surface of Revolution Component

This component generates an additional geometrical primitive: a surface of rev­olution. The user can edit the silhouette as a polygonal curve as well as deter­mine the resolution in the direction of rotation. Since this type of editing needs a special dialogue, the component was separated from the base component.

Leaf Component

Leaf components are needed for all types of leaves and petals. The leaf surface is produced by a sequence of area primitives, which are afterwards triangu­lated. Different parameters determine the appearance of the leaf. The geomet­rical complexity is defined by the number of points per area primitive and the number of area-primitives per leaf. A parameter determines to what extent the leaf is to be shaped in the form of a heart (see Fig. 6.3), another parameter specifies its width.

The leaf surface can be bent along or perpendicular to the main axis. The profile of the leaf surface can also be edited in order to produce deformations perpen­dicular to the main axis (Fig. 6.3e). The outline is defined using a polygonal curve, and the user can further specify jagged or irregularly formed leaves. The phototropism adjustable in the base parameter set can at this point be applied

to align the leaf surface independent of the position of the branch relative to the incident light.

In practice it is often better to use simple geometry with only a few triangles1 and to project a texture obtained from a photograph of a real leaf. The reason lies in the structure of today’s graphics hardware in which the frame rate is determined by the total number of triangles produced, regardless of weather textures are applied or not. As a consequence, it is better to use fewer triangles with complex textures instead of many triangles without textures.

Figure 6.3

Definition of various leaf geometries: (a) jagged edges; (b) standard form; (c) narrow leaf; (d) heart shaped;

Surface of Revolution Component(e) profiled and bent