pset_refl_props(3g) — Subroutines
Name
pset_refl_props − Sets the surface properties of the front-facing portions of area primitives.
Operating States: PHOP, ∗, STOP, ∗
PHIGS PLUS function
Creates a structure element
Syntax
void pset_refl_props (
const Prefl_prop ∗refl_prop /∗ (I) Reflectance property data ∗/
)
Data Structures
typedef struct {
Pint type; /∗ reflectance property type ∗/
union Prefl_prop_data {
struct Prefl_prop_simple_refl {
Pfloat amb_coeff; /∗ ambient reflection coefficient ∗/
Pfloat diff_coeff; /∗ diffuse reflection coefficient ∗/
Pfloat spec_coeff; /∗ specular reflection coefficient ∗/
Pgcolr spec_colr; /∗ specular color ∗/
Pfloat spec_exp; /∗ specular exponent ∗/
} simple_refl;
Pdata unsupp; /∗ unsupported reflectance property data ∗/
} data;
} Prefl_prop;
typedef struct {
Pint colr_type; /∗ color type ∗/
Pcolrv colr_value; /∗ color value ∗/
} Pgcolr;
typedef union {
Pint colr_ind; /∗ color index ∗/
Pcolr_rep colr_rep; /∗ color representation ∗/
} Pcolrv;
typedef union {
Prgb rgb; /∗ red, green, and blue color
specification ∗/
Pcieluv cieluv; /∗ CIELUV color specification ∗/
Phls hls; /∗ hue, lightness, and
saturation color
specification ∗/
Phsv hsv; /∗ hue, saturation, and value
color specification ∗/
Pdata unsupp; /∗ color in an unsupported color
model ∗/
int impl_dep; /∗ implementation-defined ∗/
} Pcolr_rep;
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;
Constants
Data Structure Constants Constant Description
---------------------------------------------------------------------------
Reflectance property PREFL_PROPS_ Simple reflectance
type SIMPLE_REFL
Color types 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
pset_refl_props sets the surface properties of the front-facing portions of area primitives. The argument values specified by this function help to define the lighting calculation that Digital PHIGS conceptually applies at one or more points on the front-facing areas of the primitive being illuminated and shaded. The aspects defined by the pset_int_colr function also affect the front-facing areas. These aspects, in conjunction with the face-processing mode, determine the appearance of the surface.
Depending on the current 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 set reflectance properties element.
If Digital PHIGS is in immediate mode, it performs this function immediately, but the function does not create a structure element.
See Also
pcell_array
pcell_array3
pcell_array3_plus
pfill_area
pfill_area3
pfill_area_set
pfill_area_set3
pfill_area_set_data
pfill_area_set3_data
pe_fill_area_set_wshape
pe_fill_area_set3_wshape
pe_fill_area_wshape
pe_fill_area3_wshape
pinq_int_facs_plus
pnon_uniform_b_spline_surf3
pquad_mesh3_data
pset_back_refl_props
pset_indiv_asf
pset_int_colr
pset_int_ind
pset_int_rep
pset_int_rep_plus
pset_of_fill_area_sets3_data
pset_refl_model
ptri_strip3_data