VARKON Version 1.15 1997-10-24
getseg - Procedure
Get curve segment from GM
Description
Reads a geometric or graphic curve segment from GM.
Syntax
getseg(curve_id, segnum, rep, segdata, offset, type, subtype, surfid_1, surfid_2)
REF curve_id; INT segnum; INT rep; FLOAT segdata(4,4); FLOAT offset; INT type; INT subtype; REF surfid_1; REF surfid_2;
Principal parameters
id - Global identity of a curve segnum - The segment to read, first segment = 1 rep - 0 = Read geometric segment, 1 = Read graphic segment segdata - A 4 by 4 matrix with polynomial coefficients offset - Offset type - 1 = Rational cubic segment, 2 = UV-segment
Optional parameters
subtype - Always 0 for a rational cubic segment. 1 for an UV-segment that lies on one surface 2 for an UV-segment that lies on two surfaces (intersect curve) surfid_1 - Identity of first surface if subtype = 1 or 2 surfid_2 - Identity of second surface if subtype = 2
Comments
Each segment is a rational cubic with 0 to 1 parametrisation and the coefficients ordered as follows:
k0x k0y k0z k0w
k1x k1y k1z k1w
k2x k2y k2z k2w
k3x k3y k3z k3w
Se for example Faux and Pratt, "Computational Geometry for design and manufacture", page 144 for a further discussion on rational cubic parametric segments.
Graphical segments and geometric segments can be the same thing since many curves use their geometric representation also for graphics. In that case an attempt to read graphical segment number n will simply return geometrical segment number n.