Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pinq_param_surf_rep(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pinq_param_surf_rep(3g)  —  Subroutines

Name

pinq_param_surf_rep − Returns the parametric surface representation. 

Operating States: PHOP, WSOP, ∗, ∗
PHIGS PLUS function

Syntax

void pinq_param_surf_rep (
  Pint              wsid,      /∗ (I) Workstation identifier. ∗/
  Pint              index,     /∗ (I) Parametric surface index. ∗/
  Pinq_type         type,      /∗ (I) Type of returned values. ∗/
  Pstore            store,     /∗ (I) Handle to store the object.  store
                                      manages the memory referenced by
                                      ∗rep. ∗/
  Pint             ∗error_ind, /∗ (O) Error indicator. ∗/
  Pparam_surf_rep ∗∗rep        /∗ (O) Parametric surface
                                      representation. ∗/
)

 

Data Structures

typedef enum {
    PINQ_SET,        /∗ Use the exact state list values. ∗/
    PINQ_REALIZED    /∗ Use the values approximated by the graphics
                        handler. ∗/
} Pinq_type;
typedef void ∗Pstore;
typedef struct {
    Psurf_approx_crit   approx_crit;    /∗ surface approximation
                                           criteria ∗/
    Pparam_surf_chars   chars_data;     /∗ parametric surface
                                           characteristics data ∗/
} Pparam_surf_rep;
    typedef struct {
        Pint    type;  /∗ surface approximation criteria type∗/
        union Psurf_approx_crit_data {
            struct Psurf_approx_const_param_subd {
                Pint   u_count;   /∗ u count ∗/
                Pint   v_count;   /∗ v count ∗/
            } const_param_subd;
            struct Psurf_approx_chordal_size_wc {
                Pfloat  u_approx;  /∗ u approximation value
                Pfloat  v_approx;  /∗ v approximation value ∗/
            } chordal_size_wc;
            struct Psurf_approx_chordal_size_npc {
                Pfloat  u_approx;  /∗ u approximation value ∗/
                Pfloat  v_approx;  /∗ v approximation value ∗/
            } chordal_size_npc;
            struct Psurf_approx_chordal_size_dc {
                Pfloat    u_approx;   /∗ u approximation value ∗/
                Pfloat    v_approx;   /∗ v approximation value ∗/
            } chordal_size_dc;
            struct Psurf_approx_planar_dev_wc {
                Pfloat    approx;   /∗ approximation value ∗/
            } planar_dev_wc;
            struct Psurf_approx_planar_dev_npc {
                Pfloat    approx;   /∗ approximation value ∗/
            } planar_dev_npc;
            struct Psurf_approx_planar_dev_dc {
                Pfloat    approx;   /∗ approximation value ∗/
            } planar_dev_dc;
            struct Psurf_approx_rel_wc {
                Pfloat    approx;   /∗ approximation value ∗/
            } rel_wc;
            struct Psurf_approx_rel_npc {
                Pfloat    approx;   /∗ approximation value ∗/
            } rel_npc;
            struct Psurf_approx_rel_dc {
                Pfloat    approx;   /∗ approximation value ∗/
            } rel_dc;
            Pdata   unsupp;    /∗ unsupported surface approximation
                                  criteria data ∗/
        } data;
    } Psurf_approx_crit;
    typedef struct {
        Pint    type;   /∗ parametric surface characteristics type ∗/
        union Pparam_surf_chars_data {
            struct Pparam_surf_isoparam {
                Pplacement  placement;      /∗ curve placement ∗/
                Pint        num_u_curves;   /∗ curve count in u
                                               direction ∗/
                Pint        num_v_curves;   /∗ curve count in v
                                               direction ∗/
            } isoparam;
            struct Pparam_surf_level_mc {
                Ppoint3       origin;       /∗ origin point ∗/
                Pvec3         dir;          /∗ direction vector ∗/
                Pfloat_list   params;       /∗ parameter list ∗/
            } level_mc;
            struct Pparam_surf_level_wc {
                Ppoint3       origin;       /∗ origin point ∗/
                Pvec3         dir;          /∗ direction vector ∗/
                Pfloat_list   params;       /∗ parameter list ∗/
            } level_wc;
            Pdata    unsupp;     /∗ unsupported parametric surface
                                    characteristics data ∗/
        } data;
    } Pparam_surf_chars;
        typedef enum {
            PPLACE_UNIFORM_OVER_SURF,      /∗ uniform placement over
                                              surface ∗/
            PPLACE_UNIFORM_BETWEEN_KNOTS   /∗ uniform placement between
                                              knots ∗/
        } Pplacement;
        typedef struct {
            Pfloat     x;    /∗ x coordinate ∗/
            Pfloat     y;    /∗ y coordinate ∗/
            Pfloat     z;    /∗ z coordinate ∗/
        } Ppoint3;
        typedef struct {
            Pfloat     delta_x;    /∗ delta x value ∗/
            Pfloat     delta_y;    /∗ delta y value ∗/
            Pfloat     delta_z;    /∗ delta z value ∗/
        } Pvec3;
        typedef struct {
            Pint      num_floats;  /∗ number of floats in the list ∗/
            Pfloat   ∗floats;      /∗ list of floats ∗/
        } Pfloat_list;

Constants

Data Structure Constants  Constant                    Description
---------------------------------------------------------------------------
Approximation types       PSURF_APPROX_WS_DEP         Workstation-dependent
                                                      method
                          PSURF_APPROX_CONST_PARAM    Constant parametric
                          _SUBD                       subdivision between
                                                      knots
                          PSURF_APPROX_CHORDAL_       Chordal size, in
                          SIZE_WC                     world coordinate
                                                      units
                          PSURF_APPROX_CHORDAL_       Chordal size, in
                          SIZE_NPC                    normalized projection
                                                      units
                          PSURF_APPROX_CHORDAL_       Chordal size, in
                          SIZE_DC                     device coordinate
                                                      units
                          PSURF_APPROX_PLANAR_        Planar deviation, in
                          DEV_WC                      world coordinates
                          PSURF_APPROX_PLANAR_        Planar deviation, in
                          DEV_NPC                     normalized projection
                                                      coordinates
                          PSURF_APPROX_PLANAR_        Planar deviation, in
                          DEV_DC                      device coordinates
                          PSURF_APPROX_REL_WC         Relative, in world
                                                      coordinate units
                          PSURF_APPROX_REL_NPC        Relative, in
                                                      normalized projection
                                                      coordinates
                          PSURF_APPROX_REL_DC         Relative, in device
                                                      coordinate units
Parametric surface        PPARAM_SURF_CHARS_NONE      None
characteristic types
                          PPARAM_SURF_CHARS_WS_       Workstation-dependent
                          DEP
                          PPARAM_SURF_CHARS_          Isoparametric curves
                          ISOPARAM
                          PPARAM_SURF_CHARS_          Level curves, in
                          LEVEL_MC                    modeling coordinates
                          PPARAM_SURF_CHARS_          Level curves, in
                          LEVEL_WC                    world coordinates
---------------------------------------------------------------------------

Description

pinq_param_surf_rep returns the parametric surface representation, including the surface approximation data and the surface characteristics. 

Digital PHIGS Version 4.1 does not support this function.

See Also

pcreate_store
pdel_store
pinq_int_rep
pinq_int_rep_plus
pinq_list_param_surf_inds
pinq_param_surf_facs
pinq_pred_param_surf_rep
pset_param_surf_rep

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