pfill_area_set_data(
Pint colr_type, /* colour type */ const Pfacet *facet_data, /* facet data (optional) */ const Pedge_flag_set *edge_flags, /* list of edge flag lists (optional) */ const Pvertex_set *vertex_data /* list of vertex lists */
)
#define PCOLR_INDIRECT 0
#define PCOLR_RGB 1
#define PCOLR_CIELUV 2
#define PCOLR_HSV 3
#define PCOLR_HLS 4
typedef struct {
Pint num_data_per_facet; /* number of data values per facet */
Pcolrv *facet_colrv; /* facet colour */
Pvec3 *facet_norm; /* facet normal */
Pfloat *facet_data; /* facet data */
} Pfacet;
typedef union {
Pint colr_ind; /* colour index */
Pcolr_rep colr_rep; /* colour representation */
} Pcolrv;
typedef union {
Prgb rgb; /* red green blue colour specification */
Pcieluv cieluv; /* CIE L*u*v* colour specification */
Phls hls; /* hue lightness saturation colour specification */
Phsv hsv; /* hue saturation value colour specification */
} Pcolr_rep;
typedef struct {
Pint num_lists; /* number of edges flag list */
Pedge_flag_list *edge_flags; /* list of edge flags lists */
} Pedge_flag_set;
typedef struct {
Pint num_edges; /* number of edges in list */
Pedge_flag *edge_flags; /* list of edge flags */
} Pedge_flag_list;
typedef enum {
PEDGE_OFF,
PEDGE_ON
} Pedge_flag;
typedef struct {
Pint num_lists; /* number of vertex lists */
Pvertex_list *vertices; /* list of vertex lists */
} Pvertex_set;
typedef struct {
Pint num_vertices; /* number of vertices */
Pint num_data_per_vertex; /* number of data values per vertex */
Ppoint *vertex_points; /* list of vertex points */
Pcolrv_ptr vertex_colrvs; /* list of vertex colours */
Pvec3 *vertex_norms; /* list of vertex normals */
Pfloat *vertex_data; /* list of vertex data lists */
} Pvertex_list;
typedef union {
Pint *color_inds; /* pointer to colour indices */
Pcolr_rep_ptr colr_reps; /* pointer to colour representations */
} Pcolrv_ptr;
typedef union {
Prgb *rgb; /* pointer to RGB colour values */
Pcieluv *cieluv; /* pointer to CIELUV colour values */
Phls *hls; /* pointer to HLS colour values */
Phsv *hsv; /* pointer to HSV colour values */
} Pcolr_rep_ptr;
This function restricts the 3D fill area set with data function to 2D (x, y). The z coordinate is set to 0.
The FILL AREA SET WITH DATA element is inserted in the open structure after element pointer or replaces the element indicated by element pointer, depending on the edit mode value. Element pointer is updated and points to the FILL AREA SET WITH DATA structure element. The values specified in the function are associated with the element.
A NULL value for the facet_data or edge_flags parameters indicates the corresponding optional data is not supplied.
Attributes associated with Fill Area Set With Data:
INTERIOR STYLE
INTERIOR STYLE INDEX
INTERIOR COLOUR
EDGE FLAG
EDGE TYPE
EDGE WIDTH SCALE FACTOR
EDGE COLOUR
DATA MAPPING METHOD

If used in one of the two GPHIGS specific modes NRS or NDDS, the effect of this function is different from the effect described in the standard.
In NRS mode, (see OPEN PIPE), the element is not stored in a structure. It is sent to the workstation on which the pipe is opened.
In NDDS mode, (see BEGIN NON DUPLICATE DATA STORE), the element is stored in the structure but its content is not copied into the CSS. GPHIGS stores only the pointer to the user's data.
See GPHIGS user guide for more details on NRS and NDDS modes.
open structure, open pipe (ext), begin non duplicate data storage (ext), set interior index, set interior style, set interior style index, set interior colour, set interior colour index, set edge flag, set edgetype, set edgewidth scale factor, set edge colour, set edge colour index, fill area set with data, fill area set, inquire current element content, inquire current element type and size, set data mapping representation