Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ppolyline_set3_colr(3g) — PHIGS 5.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

ppolyline_set3_colr(3g)  —  Subroutines

Name

ppolyline_set3_colr − Generates a set of unconnected 3D polylines, where color information can be specified for each vertex. 

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

Syntax

void ppolyline_set3_colr (
  Pint                   colr_type,     /∗ (I) Color type. ∗/
  const Pvertex3_set    ∗vertex_data    /∗ (I) List of vertex lists.
                                               Digital PHIGS uses only
                                               the vertex points and
                                               color portions of the
                                               data pointed to by this
                                               argument, and ignores
                                               all other data. ∗/
)

Data Structures

typedef struct {
    Pint             num_lists;    /∗ number of vertex lists ∗/
    Pvertex3_list   ∗vertices;     /∗ list of vertex lists ∗/
} Pvertex3_set;
    typedef struct {
        Pint          num_vertices;          /∗ number of vertices ∗/
        Pint          num_data_per_vertex;   /∗ number of data values per
                                                vertex ∗/
        Ppoint3      ∗vertex_points;         /∗ list of vertex points ∗/
        Pcolrv_ptr    vertex_colrvs;         /∗ list of vertex colors ∗/
        Pvec3        ∗vertex_norms;          /∗ ignored by Digital PHIGS ∗/
        Pfloat       ∗vertex_data;           /∗ ignored by Digital PHIGS ∗/
    } Pvertex3_list;
        typedef struct {
            Pfloat   x;   /∗ x coordinate ∗/
            Pfloat   y;   /∗ y coordinate ∗/
            Pfloat   z;   /∗ z coordinate ∗/
        } Ppoint3;
        typedef union {
            Pint           ∗colr_inds;  /∗ pointer to color indexes ∗/
            Pcolr_rep_ptr   colr_reps;  /∗ pointer to color
                                           representations ∗/
        } Pcolrv_ptr;
            typedef union {
                Prgb       ∗rgb;       /∗ pointer to RGB color values ∗/
                Pcieluv    ∗cieluv;    /∗ pointer to CIELUV color values ∗/
                Phls       ∗hls;       /∗ pointer to HLS color values ∗/
                Phsv       ∗hsv;       /∗ pointer to HSV color values ∗/
                Pdata      ∗unsupp;    /∗ pointer to unsupported color
                                          values ∗/
            } Pcolr_rep_ptr;
                typedef struct {
                    Pfloat    red;     /∗ red intensity   ∗/
                    Pfloat    green;   /∗ green intensity ∗/
                    Pfloat    blue;    /∗ blue intensity  ∗/
                } Prgb;
                typedef struct {
                    Pfloat    cieluv_x;      /∗ x coefficient ∗/
                    Pfloat    cieluv_y;      /∗ y coefficient ∗/
                    Pfloat    cieluv_y_lum;  /∗ y luminance ∗/
                } Pcieluv;
                typedef struct {
                    Pfloat    hue;        /∗ hue ∗/
                    Pfloat    lightness;  /∗ lightness ∗/
                    Pfloat    satur;      /∗ saturation ∗/
                } Phls;
                typedef struct {
                    Pfloat    hue;    /∗ hue ∗/
                    Pfloat    satur;  /∗ saturation ∗/
                    Pfloat    value;  /∗ value ∗/
                } Phsv;
                typedef struct {
                    size_t   size;   /∗ size of data ∗/
                    void    ∗data;   /∗ pointer to the data ∗/
                } Pdata;
        typedef struct {
            Pfloat   delta_x;   /∗ delta x value ∗/
            Pfloat   delta_y;   /∗ delta y value ∗/
            Pfloat   delta_z;   /∗ delta z value ∗/
        } Pvec3;

Constants

Defined Argument      Constant           Description
---------------------------------------------------------------------------
colr_type             PCOLR_INDIRECT     Indirect (indexed) color
                      PCOLR_RGB          Direct specification of red,
                                         green, and blue
                      PCOLR_CIELUV       Direct specification in the format
                                         of the Commission Internationale
                                         de l’Eclairage
                      PCOLR_HSV          Direct specification of hue,
                                         saturation, and value
                      PCOLR_HLS          Direct specification of hue,
                                         lightness, and saturation
---------------------------------------------------------------------------

Description

ppolyline_set3_colr generates a set of unconnected polylines, where color information can be specified for each vertex. 

  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 polyline set 3 with color element. 

If the data per vertex flag indicates that you have specified a color per vertex, you must also have specified a color type for this primitive. 

A point sequence with less than two points is considered degenerate and is treated in an implementation-dependent manner. 

During structure traversal, Digital PHIGS generates an unconnected set of sequences of connected straight lines, starting from the first vertex coordinate point of each sequence and ending at the last vertex coordinate point for each sequence. 

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

Digital PHIGS uses only the vertex points and color portions of the data pointed to by vertex_data.  Digital PHIGS ignores all the other data. 

See Also

padd_names_set
pinq_line_facs_plus
ppolyline
ppolyline3
pe_polyline_set
pe_polyline_set3
premove_names_set
pset_depth_cue_ind
pset_hlhsr_id
pset_indiv_asf
pset_linetype
pset_linewidth
pset_pick_id
pset_line_colr
pset_line_colr_ind
pset_line_ind
pset_line_shad_method
pset_rend_colr_model
pset_view_ind

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