Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pbsc3(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

PBSC3(3g)  —  Subroutines

Name

PBSC3 − Specifies the 3D nonuniform B-spline curve primitive. 

Operating States: PHOP, ∗, STOP, ∗
PHIGS PLUS function
Creates a structure element

Old Syntax

DNUBSC (ORDER, NCP, NKN, KNOTS, RATSEL, PXA, PYA, PZA, PWA, TMIN,
TMAX)

Argument    Data Type     Access    Description
---------------------------------------------------------------------------
ORDER       Integer       Read      Order of the curve
NCP         Integer       Read      Number of control points
NKN         Integer       Read      Number of knots
KNOTS(NKN)  Array of      Read      Knot vector
            reals
RATSEL      Integer       Read      Type of control points
PXA(NCP),   Real          Read      Control points
PYA(NCP),
PZA(NCP),
PWA(NCP)
TMIN        Real          Read      Minimum parameter value for evaluation
TMAX        Real          Read      Maximum parameter value for evaluation
--------------------------------------------------------------------------

New Syntax

PBSC3 (SORD, NKA, KNOTS, PARL, RTYPE, NCP, PXA, PYA, PZA, PWA)

Argument    Data Type     Access    Description
---------------------------------------------------------------------------
SORD        Integer       Read      Order of the curve
NKA         Integer       Read      Number of knots
KNOTS(NKA)  Array of      Read      Knots
            reals
PARL(2)     Real          Read      Parameter range limits (minimum,
                                    maximum)
RTYPE       Integer       Read      Rationality
NCP         Integer       Read      Number of control points
PXA(NCP),   Real          Read      Control points
PYA(NCP),                           in modeling coordinates
PZA(NCP),
PWA(NCP)
--------------------------------------------------------------------------

Constants

Defined Argument    Constant     Description
---------------------------------------------------------------------------
RTYPE               PRAT         Rational (4D) control points
                    PNRAT        Nonrational (3D) control points
--------------------------------------------------------------------------

Description

PBSC3 specifies the three-dimensional nonuniform B-spline curve primitive, a primitive consisting of a curve determined by connecting points. 

Depending on the edit mode, this function either inserts the new structure element directly after the element indicated by the pointer or replaces the element indicated by the pointer.  The pointer then points to the new nonuniform B-spline curve 3 element. 

During structure traversal, the polyline set 3 with data primitive attributes provide additional data.  Digital PHIGS computes the curve approximation criteria, and draws a nonuniform B-spline curve 3. The following are important considerations when using this function:

•The spline order must be a positive integer.  The knots must form an increasing sequence of numbers. 

•The type parameter may have the enumerated value PRAT or PNRAT.  The number of control points must be at least as large as the spline order. The number of control points plus the spline order must equal the number of knots. 

•The PARL argument specifies over what range the B-spline curve is evaluated.  The minimum value must be less than or equal to the maximum value. 

•At structure traversal, PHIGS draws a nonuniform B-spline curve primitive with the attributes used by polyline set 3 with data, and the current curve approximation criteria.  It uses these for the values specified in PARL. 

If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element. 

The new function syntax conforms to the ISO Fortran standard.  Digital recommends that you code using the new function syntax. 

See Also

PADS
PQCVF
PBSS3
PSCAC
PSDCI
PSHRID
PSIASF
PSLN
PSLWSC
PSPKID
PSPLC
PSPLCI
PSPLI
PSPLP
PSPLSM
PSVWI

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026