home << prev next >> contents  

Space Curve Geometry

Unlike trimming curves, space curves are defined in 3D space. A space curve object may not contain any other type of geometry, such as free-form surfaces or polygons. Space curves are not rendered but serve as input geometry for modeling operations, by passing the space curve object as a parameter to a geometry shader. The curve geometry is defined as a list of space curves, each referencing multiple curve segments.

An object containing space curve geometry follows this outline:

    object "object_name"  
        [ tag label_numberint ]  
        [ basis list ]  
            vector list  
            vertex list  
            [ list of curves ]  
            space curve  
            [ list of curve segment references ]  
        end group  
    end object  

A single space curve definition follows this outline:

    space curve "curve_name"min max  

The dots indicate that each space curve statement may be followed by more than one curve segment reference. The min and max parameters allow using only part of the curve referenced. min and max must be in the range of the parameter vector of the curve.

Here is an example of a space curve object:

     object "myspacecurve"
         basis "bezier_1" bezier 1
             0.4 0.4 1.2
             0.6 0.4 1.2
             0.6 0.6 1.2
             0.4 0.6 1.2
             v 0 v 1 v 2 v 3 
             curve "curve1" bezier_1
                    0. 1. 2. 3. 4.
                    0 1 2 3 0
             space curve "sp1"
                    "curve1" 0. 4.
         end group
     end object
home << prev next >> contents  

Copyright © 1986-2007 by mental images GmbH