void pinq_elem_content(
Pint struct_id, /* structure identifier */ Pint element, /* element number */ Pstore store, /* handle to Store object */ Pint *error_ind, /* (out) error indicator */ Pelem_data **data /* (out) element data */
)
typedef void * Pstore;
typedef union {
Pint int_data; /* integer valued data */
Pfloat float_data; /* float valued data */
Ppoint_list3 point_list3; /* list of 3D points */
Ppoint_list point_list; /* list of 2D points */
Ppoint_list_list3 point_list_list3; /* list of 3D point lists */
Ppoint_list_list point_list_list; /* list of 2D point lists */
struct Pelem_text3 {
Ppoint3 pos; /* text position */
Pvec3 dir[2]; /* direction vectors */
char *char_string; /* character string */
} text3;
struct Pelem_text {
Ppoint pos: /* text position */
char *char_string: /* character string */
} text;
struct Pelem_anno_text_rel3 {
Ppoint3 ref_point: /* reference point */
Pvec3 offset: /* annotation offset */
char *char_string: /* character string */
} anno_text_rel3;
struct Pelem_anno_text_rel {
Ppoint ref_point: /* reference point */
Pvec offset: /* annotation offset */
char *char_string: /* character string */
} anno_text_rel;
struct Pelem_cell_array3 {
Pparal paral: /* parallelogram */
Ppat_rep colr_array: /* colour array */
} cell_array3;
struct Pelem_cell_array {
Prect rect: /* rectangle */
Ppat_rep colr_array: /* colour array */
} cell_array;
struct Pelem_gdp3 {
Pint id: /* GDP 3 identifier */
Ppoint_list3 point_list; /* point list */
Pgdp_data3 data: /* data record */
} gdp3;
struct Pelem_gdp {
Pint id: /* GDP identifier */
Ppoint_list point_list; /* point list */
Pgdp_data data: /* data record */
} gdp;
Ptext_prec text_prec: /* text precision */
Pvec char_up_vec; /* character up vector */
Ptext_path text_path: /* text path */
Ptext_align text_align: /* text alignment */
Pint_style int_style: /* interior style */
Pedge_flag edge_flag: /* edge flag */
Ppoint pat_ref_point: /* pattern reference point */
Pfloat_size pat_size: /* pattern size */
struct Pelem_pat_ref_point_vecs {
Ppoint3 ref_point: /* pattern reference point */
Pvec3 ref_vec[2]: /* vectors */
} pat_ref_point_vecs;
Pint_list names: /* name sets */
struct Pelem_asf {
Paspect id: /* attribute id */
Pasf source: /* attribute source */
} asf;
struct Pelem_local_tran3 {
Pcompose_type compose_type: /* composition type */
Pmatrix3 matrix: /* transformation matrix */
} local_tran3;
struct Pelem_local_tran {
Pcompose_type compose_type: /* composition type */
Pmatrix matrix: /* transformation matrix */
} local_tran;
Pmatrix3 global_tran3: /* global transformation 3 */
Pmatrix global_tran: /* global transformation */
struct Pelem_model_clip3 {
Pint op: /* operator */
Phalf_space_list3 half_spaces: /* half space list */
} model_clip3;
struct Pelem_model_clip {
Pint op: /* operator */
Phalf_space_list half_spaces: /* half space list */
} model_clip;
Pclip_ind clip_ind: /* clipping indicator */
Pdata appl_data: /* application data */
struct Pelem_gse {
Pint id: /* GSE id */
Pgse_data data: /* GSE data */
} gse;
struct Pelem_polyline_set3_colr {
Pint colr_type;
Pvertex3_set vertex_data;
} polyline_set3_colr; /* polyline set 3 with data */
struct Pelem_fill_area_set3_data {
Pint colr_type;
Pfacet *facet_data;
Pedge_flag_set *edge_flags;
Pvertex3_set vertex_data;
} fill_area_set3_data; /* fill area set 3 with data */
struct Pelem_fill_area_set_data {
Pint colr_type;
Pfacet *facet_data;
Pedge_flag_set *edge_flags;
Pvertex_set vertex_data;
} fill_area_set_data; /* fill area set with data */
struct Pelem_cell_array3_plus {
Pparal paral;
Ppat_rep_plus pattern;
} cell_array3_plus;
struct Pelem_set_of_fill_area_sets3_data {
Pint colr_type;
Pset_of_fill_area_sets_data *set_data;
Pedge_flag_set_list *edge_flags;
Pvertex3_list vertices;
Pcontour_set_list contours;
} set_of_fill_area_sets3_data; /* set of fill area sets 3 with data */
struct Pelem_set_of_fill_area_sets_data {
Pint colr_type;
Pset_of_fill_area_sets_data *set_data;
Pedge_flag_set_list *edge_flags;
Pvertex_list vertices;
Pcontour_set_list contours;
} set_of_fill_area_sets_data; /* set of fill area sets with data */
struct Pelem_tri_set3_data {
Pint colr_type;
Ptri_set_data *set_data;
Pedge_flag_triplet_list *edge_flags;
Pvertex3_list vertices;
Pvertex_ind_triplet_list vertex_inds;
} tri_set3_data; /* triangle set 3 with data */
struct Pelem_tri_set_data {
Pint colr_type;
Ptri_set_data *set_data;
Pedge_flag_triplet_list *edge_flags;
Pvertex_list vertices;
Pvertex_ind_triplet vertex_inds;
} tri_set_data; /* triangle set with data */
struct Pelem_tri_strip3_data {
Pint colr_type;
Pfacet_list *facet_data;
Pedge_flag_list *edge_flags;
Pvertex3_list vertex_data;
} tri_strip3_data; /* triangle strip 3 with data */
struct Pelem_tri_strip_data {
Pint colr_type;
Pfacet_list *facet_data;
Pedge_flag_list *edge_flags;
Pvertex_list vertex_data;
} tri_strip_data; /* triangle strip with data */
struct Pelem_quad_mesh3_data {
Pint colr_type;
Pfacet_array *facet_data;
Pedge_flag_array *edge_flags;
Pvertex3_array vertex_data;
} quad_mesh3_data; /* quadrilateral mesh 3 with data */
struct Pelem_quad_mesh_data {
Pint colr_type;
Pfacet_array *facet_data;
Pedge_flag_array *edge_flags;
Pvertex_array vertex_data;
} quad_mesh_data; /* quadrilateral mesh with data */
struct Pelem_non_uniform_b_spline_curve3 {
Pcurve_geom_spline geom_spline;
} non_uniform_b_spline_curve3; /* non uniform b-spline curve 3 */
struct Pelem_non_uniform_b_spline_curve3_colr {
Pcurve_geom_spline geom_spline;
Pcurve_colr_spline *colr_spline;
} non_uniform_b_spline_curve3_colr; /* non uniform b-spline curve 3 with colour */
struct Pelem_non_uniform_b_spline_surf3 {
Psurf_geom_spline geom_spline;
Ptrim_curve_loop_list *trim_loops;
} non_uniform_b_spline_surf3; /* non uniform b-spline surface 3 */
struct Pelem_non_uniform_b_spline_surf3_data {
Psurf_geom_spline geom_spline;
Ptrim_curve_loop_list *trim_loops;
Psurf_colr_spline *colr_spline;
Psurf_data_spline *data_spline;
} non_uniform_b_spline_surf3_data; /* non uniform b-spline surface 3 with data */
Pgcolr colr;
Pfacet_disting_mode facet_disting_mode;
Pfacet_cull_mode facet_cull_mode;
Pdata_map_rep data_map_rep;
Prefl_prop refl_prop;
struct Pelem_light_source_st {
Pint_list act_list;
Pint_list deact_list;
} light_source_st;
Pcurve_approx_crit curve_approx_crit;
Psurf_approx_crit surf_approx_crit;
Pparam_surf_chars param_surf_chars;
} Pelem_data;
The memory referenced by *data is managed by store