SET REFLECTANCE PROPERTIES(3P+) — Kubota Pacfic Computer Inc. (29 February 1991)
NAME
SET REFLECTANCE PROPERTIES − create a structure element to set surface area properties
SYNOPSIS
C Syntax
void
pset_refl_props ( properties )
Prefl_props∗properties;surface area properties
Required PHIGS Operating States
(PHOP, ∗, STOP, ∗)
DESCRIPTION
Purpose
SET REFLECTANCE PROPERTIES creates a structure element to set surface area properties. When the current area properties Aspect Source Flag (ASF) is set to INDIVIDUAL, the current value of this attribute applies to the following output primitives:
• FILL AREA
• FILL AREA 3
• FILL AREA SET
• FILL AREA SET 3
• FILL AREA SET 3 WITH DATA
• SET OF FILL AREA SET 3 WITH DATA
• QUADRILATERAL MESH 3 WITH DATA
• TRIANGLE STRIP 3 WITH DATA
• NON-UNIFORM B-SPLINE SURFACE
C Input Parameters
properties
A pointer to a Prefl_props structure that specifies the area properties. Prefl_props is defined in phigs.h as follows:
typedef struct {
Pfloatambient_coef;/∗ ambient reflectance coefficient ∗/
Pfloatdiffuse_coef;/∗ diffuse reflectance coefficient ∗/
Pfloatspecular_coef; /∗ specular reflectance coefficient ∗/
Pgcolrspecular_colr; /∗ specular colour ∗/
Pfloatspecular_exp;/∗ specular exponent ∗/
Pfloattranspar_coef; /∗ transparency coefficient ∗/
} Prefl_props;
Pgcolr is defined as:
typedef struct {
Pint type;/∗ indirect, RGB, CIE, HSV, HLS ∗/
union {
Pintind;/∗ colour table index ∗/
struct {
Pfloatx; /∗ red, hue, etc. ∗/
Pfloaty; /∗ green, saturation, lightness, etc. ∗/
Pfloatz; /∗ blue, value, saturation, etc. ∗/
} general;
} val;
} Pgcolr;
The color type is one of the following:
0PINDIRECT
1PMODEL_RGB
2PMODEL_CIELUV
3PMODEL_HSV
4PMODEL_HLS
Execution
Depending upon the edit mode, a SET REFLECTANCE PROPERTIES element is inserted into the open structure after the element pointer or replaces the element pointed at by the element pointer. The element pointer is then updated to point to this SET REFLECTANCE PROPERTIES element.
When the structure is traversed, the current area properties entry in the traversal state list is set to the specified value. This value is used with subsequent filled area output primitives when the current area properties ASF entry in the traversal state list is INDIVIDUAL. During traversal, if the specified area properties are not available on a workstation, method one (None) will be used on that workstation.
When the current area properties ASF is set to BUNDLED, the area properties are taken from the workstation extended representation indicated by the current interior index. In this case, the area properties set with SET REFLECTANCE PROPERTIES have no effect.
The area properties supported by a workstation type can be determined with the function INQUIRE INTERIOR FACILITIES PLUS.
ERRORS
005Ignoring function, function requires state (PHOP,∗,STOP,∗)
SEE ALSO
INTRO PHIGS PLUS (3P+)
FILL AREA (3P)
FILL AREA SET (3P)
FILL AREA 3 (3P)
FILL AREA SET 3 (3P)
FILL AREA SET 3 WITH DATA (3P+)
SET OF FILL AREA SET 3 WITH DATA (3P+)
SET INDIVIDUAL ASF (3P)
SET INTERIOR REPRESENTATION (3P)
SET INTERIOR REPRESENTATION PLUS (3P+)
INQUIRE INTERIOR FACILITIES PLUS (3P+)
NON-UNIFORM B-SPLINE SURFACE (3P+)
QUADRILATERAL MESH 3 WITH DATA (3P+)
TRIANGLE STRIP 3 WTIH DATA (3P+)
September 02, 1992