pset_back_data_map_method(3g) — Subroutines
Name
pset_back_data_map_method − Specifies the back data mapping method for displaying back-facing portions of area primitives.
Operating States: PHOP, ∗, STOP, ∗
PHIGS PLUS function
Creates a structure element
Syntax
void pset_back_data_map_method (
const Pdata_map_rep ∗method /∗ (I) Data mapping method ∗/
)
Data Structures
typedef struct {
Pint method; /∗ data mapping method ∗/
Psource_select_listselectors; /∗ list of source selectors ∗/
union Pdata_map_rep_data {
struct Pdata_map_rep_single_uniform {
Pint ind; /∗ data value index ∗/
Pfloat lower_limit; /∗ lower range limit ∗/
Pfloat upper_limit; /∗ upper range limit ∗/
Pint colr_type; /∗ color type ∗/
Pcolrv_list colr_values; /∗ list of color values ∗/
} single_uniform;
struct Pdata_map_rep_single_non_uniform {
Pint ind; /∗ data value index ∗/
Pfloat_list range; /∗ range boundaries ∗/
Pint colr_type; /∗ color type ∗/
Pcolrv_list colr_values; /∗ list of color values ∗/
} single_non_uniform;
struct Pdata_map_rep_bi_uniform {
Pint inds[2]; /∗ data value indexes ∗/
Pfloat lower_limit_a; /∗ lower limit of Ra range ∗/
Pfloat upper_limit_a; /∗ upper limit of Ra range ∗/
Pfloat lower_limit_b; /∗ lower limit of Rb range ∗/
Pfloat upper_limit_b; /∗ upper limit of Rb range ∗/
Pint colr_type; /∗ color type ∗/
Pcolrv_set colr_values; /∗ list of color value lists ∗/
} bi_uniform;
struct Pdata_map_rep_bi_non_uniform {
Pint inds[2]; /∗ data value indexes ∗/
Pfloat_list range_a; /∗ Ra range boundaries ∗/
Pfloat_set range_b; /∗ Rb range boundaries ∗/
Pint colr_type; /∗ color type ∗/
Pcolrv_set colr_values; /∗ array of color values ∗/
} bi_non_uniform;
} data;
} Pdata_map_rep;
typedef struct {
Pint num_selectors; /∗ number of selectors ∗/
Psource_select ∗selectors; /∗ list of source selectors ∗/
} Psource_select_list;
typedef enum {
PB_SOURCE_SELECT_COLR_ASPECT, /∗ color aspect ∗/
PB_SOURCE_SELECT_VERT_COLR, /∗ vertex color ∗/
PB_SOURCE_SELECT_VERT_DATA, /∗ vertex data ∗/
PB_SOURCE_SELECT_FACET_COLR, /∗ facet color ∗/
PB_SOURCE_SELECT_FACET_DATA /∗ facet data ∗/
} Psource_select;
typedef struct {
Pint num_colrs; /∗ number of colors ∗/
Pcolrv_ptr colrs; /∗ list of color values ∗/
} Pcolrv_list;
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 {
Pint num_floats; /∗ number of floats in list ∗/
Pfloat ∗floats; /∗ list of floats ∗/
} Pfloat_list;
typedef struct {
Pint num_lists; /∗ number of color value lists ∗/
Pcolrv_list ∗colrs; /∗ list of color value lists ∗/
} Pcolrv_set;
typedef struct {
Pint num_lists; /∗ number of float lists ∗/
Pfloat_list ∗floats; /∗ list of float lists ∗/
} Pfloat_set;
Constants
Data Structure Constants Constant Description
---------------------------------------------------------------------------
Data mapping methods PDATA_MAP_METHOD_COLR Digital PHIGS uses any
colors specified with
the output primitive
as the source of
color.
PDATA_MAP_METHOD_SINGLE_ Digital PHIGS maps a
UNIFORM single data value to
a color selected from
a specified list of
colors. Digital PHIGS
selects the color
based on the
relationship of the
data value to a
specified data range.
PDATA_MAP_METHOD_SINGLE_ Digital PHIGS maps a
NON_UNIFORM single data value to
a color selected from
a specified list of
colors. Digital PHIGS
selects the color
based on the
relationship of the
data value to a
specified set of data
ranges.
PDATA_MAP_METHOD_BI_ Digital PHIGS maps two
UNIFORM data values to a
single color selected
from one of a set of
color lists. The
The first value
specifies the list to
use, and the second
value specifies which
color to select from
that list.
PDATA_MAP_METHOD_BI_ Digital PHIGS maps two
NON_UNIFORM data values to a
single color selected
from one of a set of
color lists. Digital
PHIGS selects the
color based on the
relationships of the
data values to a
specified set of data
ranges.
---------------------------------------------------------------------------
Description
pset_back_data_map_method specifies the back data mapping method Digital PHIGS uses to display back-facing portions of area primitives. Depending on the edit mode, this function either inserts the new structure element directly after the pointer or replaces the element indicated by the pointer. The pointer then points to the new set back data mapping method element. If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element.
During structure traversal, Digital PHIGS sets the current back data mapping method entry in the PHIGS traversal state list to the value associated with the element. When the current back data mapping method ASF entry in the state list is INDIVIDUAL, Digital PHIGS uses this value to display subsequent back-facing portions of area primitives. If the specified data mapping method is not available on a workstation, Digital PHIGS uses data mapping method 1.
Digital PHIGS Version 4.1 does not support this function.
See Also
pinq_data_map_facs
pinq_data_map_rep
pset_data_map_rep