1 /***********************************************************************
5 Fichier OpenGl_tgl_funcs.h
12 HISTORIQUE DES MODIFICATIONS :
13 --------------------------------
14 ??-??-?? : PCT ; creation
15 10-07-96 : FMN ; Suppression #define sur calcul matrice
16 05-08-97 : PCT ; support texture mapping
17 23-12-97 : FMN ; Suppression TelBackInteriorStyle, TelBackInteriorStyleIndex
18 15-01-98 : FMN ; Ajout Hidden line
19 08-04-98 : FGU ; Ajout emission
20 27-11-98 : CAL ; S4062. Ajout des layers.
21 30-11-98 : FMN ; S3819 : Textes toujours visibles
22 22-03-04 : SAN ; OCC4895 High-level interface for controlling polygon offsets
23 04-10-04 : ABD ; Added User Defined marker type
25 ************************************************************************/
27 /*----------------------------------------------------------------------*/
29 #ifndef OPENGL_TGL_FUNCS_H
30 #define OPENGL_TGL_FUNCS_H
32 #define BUC60570 /* GG 06-09-99
33 // The model view SD_NORMAL must shown objects with FLAT shading
37 #define G003 /* EUG 06-10-99 Degeneration support
42 #define BUC61044 /* 25/10/01 SAV ; added functionality to control gl depth testing
44 #define BUC61045 /* 25/10/01 SAV ; added functionality to control gl lighting
48 /*----------------------------------------------------------------------*/
52 #include <OpenGl_tgl_all.hxx>
53 #include <OpenGl_telem.hxx>
54 #include <OpenGl_telem_pick.hxx>
55 #include <OpenGl_tsm.hxx>
56 #include <InterfaceGraphic_Aspect.hxx>
57 #include <InterfaceGraphic_Graphic3d.hxx>
58 #include <InterfaceGraphic_Visual3d.hxx>
60 #include <OSD_FontAspect.hxx>
62 /*----------------------------------------------------------------------*/
67 typedef float matrix3[4][4];
80 float x; /* x coordinate */
81 float y; /* y coordinate */
82 float z; /* z coordinate */
86 float delta_x; /* x magnitude */
87 float delta_y; /* y magnitude */
88 float delta_z; /* z magnitude */
92 float x_min; /* x min */
93 float x_max; /* x max */
94 float y_min; /* y min */
95 float y_max; /* y max */
96 float z_min; /* z min */
97 float z_max; /* z max */
101 float x_min; /* x min */
102 float x_max; /* x max */
103 float y_min; /* y min */
104 float y_max; /* y max */
108 limit win; /* window limits */
109 limit3 proj_vp; /* viewport limits */
110 projtype proj_type; /* projection type */
111 point3 proj_ref_point; /* projection reference point */
112 float view_plane; /* view plane distance */
113 float back_plane; /* back plane distance */
114 float front_plane; /* front plane distance */
117 /*----------------------------------------------------------------------*/
122 extern void call_func_label(Tint); /* lid */
123 extern void call_func_set_view_ind(Tint); /* vid */
124 extern void call_func_appl_data(void*); /* data */
125 extern void call_func_set_local_tran3(Tmatrix3, TComposeType); /* mat, mode */
126 extern void call_func_set_linewidth(Tfloat); /* lw */
127 extern void call_func_set_linetype(Tint); /* lt */
128 extern void call_func_set_int_style(Tint); /* is */
129 extern void call_func_set_edge_flag(Tint); /* state */
130 extern void call_func_set_edge_type(Tint); /* type */
131 extern void call_func_set_edgewidth(Tfloat); /* width */
132 extern void call_func_set_int_style_ind(Tint); /* ind */
133 extern void call_func_set_face_disting_mode(Tint); /* mode */
134 extern void call_func_set_face_cull_mode(Tint); /* mode */
135 extern void call_func_set_marker_type(Tint); /* type */
136 extern void call_func_set_marker_size(Tfloat); /* size */
137 extern void call_func_exec_struct(Tint); /* stid */
138 extern void call_func_init_tgl(void);
139 extern void call_func_post_struct(Tint, Tint, Tfloat); /* ws, stid, prio */
140 extern void call_func_set_int_shad_meth(Tint); /* method */
141 extern void call_func_set_refl_eqn(Tint); /* eqn */
142 extern void call_func_set_back_refl_eqn(Tint); /* eqn */
143 extern void call_func_set_text_font(Tchar*); /* font */
144 extern void call_func_set_char_space(Tfloat); /* sp */
145 extern void call_func_set_char_expan(Tfloat); /* exp */
146 extern void call_func_set_pick_id(Tint); /* pickid */
147 extern void call_func_redraw_all_structs (Tint, Tint); /* wsid, swap */
148 extern void call_func_redraw_all_structs_begin (Tint); /* wsid */
149 extern void call_func_redraw_all_structs_proc (Tint); /* wsid */
150 extern void call_func_redraw_all_structs_end (Tint, Tint); /* wsid, swap */
151 extern void call_func_set_anno_char_ht(Tfloat); /* height */
152 extern void call_func_set_anno_char_up_vec(Tfloat[2]); /* up_vector */
153 extern void call_func_set_anno_path(Tint); /* path */
154 extern void call_func_set_anno_align(Tint, Tint); /* hor, ver */
155 extern void call_func_anno_text_rel3( tel_point, Tchar* );
156 extern void call_func_dcue_ind(Tint); /* dcid */
157 extern void call_func_set_do_texturemap(Tint); /* bool */
158 extern void call_func_set_texture_id(Tint); /* TextureID */
159 extern void call_func_set_text_style(int); /* style */
160 extern void call_func_set_text_display_type(int); /* display_type */
162 extern void call_func_set_degenerate_model ( Tint, Tfloat ); /* degenerate model */
165 extern void call_func_set_text_zoomable(Tint); /*Text Zoomable usage*/
166 extern void call_func_set_text_angle(Tfloat); /*Text Angle usage*/
167 extern void call_func_set_text_fontaspect(OSD_FontAspect); /*Text Zoomable usage*/
169 /* OCC4895 SAN 22/03/04 High-level interface for controlling polygon offsets */
170 extern void call_func_set_polygon_offset_params( Tint, /* mode */
172 Tfloat ); /* units */
173 /* OCC4895 SAN 22/03/04 High-level interface for controlling polygon offsets */
175 /* ABD 29/10/04 Transform Persistence of Presentation( pan, zoom, rotate ) */
176 extern void call_func_set_transform_persistence( Tint, Tfloat, Tfloat, Tfloat );
177 /* extern void call_func_set_transform_persistence( tel_transform_persistence tp );*/
178 /* ABD 29/10/04 Transform Persistence of Presentation( pan, zoom, rotate ) */
181 /* OCC18942: obsolete in OCCT6.3, might be removed in further versions! */
182 extern void call_func_eval_ori_matrix3( point3 *vrp, vec3 *vpn, vec3 *vup,
183 int *err_ind, float mout[4][4] );
184 /* OCC18942: obsolete in OCCT6.3, might be removed in further versions! */
185 extern void call_func_eval_map_matrix3( view_map3 *Map, int *err_ind,
188 /*----------------------------------------------------------------------*/
194 #define CALL_PHIGS_EDGE_OFF TOff
195 #define CALL_PHIGS_EDGE_ON TOn
197 /* Edge data flags */
198 #define CALL_PHIGS_EDGE_NONE TOff
199 #define CALL_PHIGS_EDGE_VISIBILITY TOn
202 #define CALL_PHIGS_LINE_SOLID TEL_LS_SOLID
203 #define CALL_PHIGS_LINE_DASH TEL_LS_DASH
204 #define CALL_PHIGS_LINE_DOT TEL_LS_DOT
205 #define CALL_PHIGS_LINE_DASH_DOT TEL_LS_DASH_DOT
208 #define CALL_PHIGS_MARKER_DOT TEL_PM_DOT
209 #define CALL_PHIGS_MARKER_PLUS TEL_PM_PLUS
210 #define CALL_PHIGS_MARKER_ASTERISK TEL_PM_STAR
211 #define CALL_PHIGS_MARKER_CIRCLE TEL_PM_CIRC
212 #define CALL_PHIGS_MARKER_CROSS TEL_PM_CROSS
213 #define CALL_PHIGS_MARKER_USER_DEFINED TEL_PM_USERDEFINED
216 #define CALL_PHIGS_PATH_RIGHT 0
217 #define CALL_PHIGS_PATH_LEFT 0
218 #define CALL_PHIGS_PATH_UP 0
219 #define CALL_PHIGS_PATH_DOWN 0
221 /* Text : Horizontal alignment */
222 #define CALL_PHIGS_HOR_LEFT 0
223 #define CALL_PHIGS_HOR_CENTER 1
224 #define CALL_PHIGS_HOR_RIGHT 2
226 /* Text : Vertical alignment */
227 #define CALL_PHIGS_VERT_BOTTOM 0
228 #define CALL_PHIGS_VERT_CENTER 1
229 #define CALL_PHIGS_VERT_TOP 2
231 /* Interior styles */
232 #define CALL_PHIGS_STYLE_HOLLOW TSM_HOLLOW
233 #define CALL_PHIGS_STYLE_SOLID TSM_SOLID
234 #define CALL_PHIGS_STYLE_HATCH TSM_HATCH
235 #define CALL_PHIGS_STYLE_EMPTY TSM_EMPTY
236 #define CALL_PHIGS_STYLE_HIDDENLINE TSM_HIDDENLINE
238 /* Light Source Types */
239 #define CALL_PHIGS_LIGHT_AMBIENT TLightAmbient
240 #define CALL_PHIGS_LIGHT_DIRECTIONAL TLightDirectional
241 #define CALL_PHIGS_LIGHT_POSITIONAL TLightPositional
242 #define CALL_PHIGS_LIGHT_SPOT TLightSpot
245 #define CALL_PHIGS_HATCH_HORIZ TEL_HS_HORIZONTAL
246 #define CALL_PHIGS_HATCH_HORIZ_DBL TEL_HS_HORIZONTAL_SPARSE
247 #define CALL_PHIGS_HATCH_VERT TEL_HS_VERTICAL
248 #define CALL_PHIGS_HATCH_VERT_DBL TEL_HS_VERTICAL_SPARSE
249 #define CALL_PHIGS_HATCH_DIAG_45 TEL_HS_DIAG_45
250 #define CALL_PHIGS_HATCH_DIAG_45_DBL TEL_HS_DIAG_45_SPARSE
251 #define CALL_PHIGS_HATCH_DIAG_135 TEL_HS_DIAG_135
252 #define CALL_PHIGS_HATCH_DIAG_135_DBL TEL_HS_DIAG_135_SPARSE
253 #define CALL_PHIGS_HATCH_GRID_R TEL_HS_GRID
254 #define CALL_PHIGS_HATCH_GRID_R_DBL TEL_HS_GRID_SPARSE
255 #define CALL_PHIGS_HATCH_GRID_D TEL_HS_CROSS
256 #define CALL_PHIGS_HATCH_GRID_D_DBL TEL_HS_CROSS_SPARSE
259 #define CALL_PHIGS_EDIT_INSERT TEditInsert
260 #define CALL_PHIGS_EDIT_REPLACE TEditReplace
263 #define CALL_PHIGS_TYPE_PRECONCAT TPreConcatenate
264 #define CALL_PHIGS_TYPE_POSTCONCAT TPostConcatenate
265 #define CALL_PHIGS_TYPE_REPLACE TReplace
267 /* Clipping indicators */
268 #define CALL_PHIGS_IND_NO_CLIP TOff
269 #define CALL_PHIGS_IND_CLIP TOn
271 /* Projection types */
272 #define CALL_PHIGS_TYPE_PARAL TelParallel
273 #define CALL_PHIGS_TYPE_PERSPECT TelPerspective
275 /* shading methods */
276 #define CALL_PHIGS_SD_NONE TEL_SM_FLAT
277 #define CALL_PHIGS_SD_COLOUR TEL_SM_GOURAUD
278 #define CALL_PHIGS_SD_DOT_PRODUCT TEL_SM_GOURAUD
280 #define CALL_PHIGS_SD_NORMAL TEL_SM_GOURAUD
282 #define CALL_PHIGS_SD_NORMAL TEL_SM_FLAT
285 /* lighting methods */
286 #define CALL_PHIGS_REFL_NONE 0x0000
287 #define AMBIENT_MASK 0x0001
288 #define DIFFUSE_MASK 0x0002
289 #define SPECULAR_MASK 0x0004
290 #define EMISSIVE_MASK 0x0008
293 #define CALL_PHIGS_CULL_NONE TelCullNone
294 #define CALL_PHIGS_CULL_BACKFACE TelCullBack
295 #define CALL_PHIGS_CULL_FRONTFACE TelCullFront
298 #define CALL_PHIGS_SUPPRESSED TelDCSuppressed
299 #define CALL_PHIGS_ALLOWED TelDCAllowed
301 /* distinguish mode */
302 #define CALL_PHIGS_DISTING_NO TOff
303 #define CALL_PHIGS_DISTING_YES TOn
305 #define CALL_DEF_ENABLE_ZBUFFER TOn
306 #define CALL_DEF_DISABLE_ZBUFFER TOff
309 #define ASPECT_TOST_NORMAL 0
310 #define ASPECT_TOST_ANNOTATION 1
312 /* display type of the text */
313 #define ASPECT_TODT_NORMAL 0
314 #define ASPECT_TODT_SUBTITLE 1
315 #define ASPECT_TODT_DEKALE 2
316 #define ASPECT_TODT_BLEND 3
319 #define PTOP_FIRST TTopFirst
320 #define PBOTTOM_FIRST TBottomFirst
323 #define CALL_PHIGS_SHAPE_COMPLEX TEL_SHAPE_COMPLEX
324 #define CALL_PHIGS_SHAPE_NONCONVEX TEL_SHAPE_CONCAVE
325 #define CALL_PHIGS_SHAPE_CONVEX TEL_SHAPE_CONVEX
326 #define CALL_PHIGS_SHAPE_UNKNOWN TEL_SHAPE_UNKNOWN
329 #define CALL_PHIGS_VERT_COORD TEL_VTFLAG_NONE
330 #define CALL_PHIGS_VERT_COORD_COLOUR TEL_VTFLAG_COLOUR
331 #define CALL_PHIGS_VERT_COORD_NORMAL TEL_VTFLAG_NORMAL
332 #define CALL_PHIGS_VERT_COORD_COLOUR_NORMAL TEL_VTFLAG_COLOURNORMAL
334 /* Facet data flags */
335 #define CALL_PHIGS_FACET_NONE TEL_FAFLAG_NONE
336 #define CALL_PHIGS_FACET_COLOUR TEL_FAFLAG_COLOUR
337 #define CALL_PHIGS_FACET_NORMAL TEL_FAFLAG_NORMAL
338 #define CALL_PHIGS_FACET_COLOUR_NORMAL TEL_FAFLAG_COLOURNORMAL
341 #define call_func_open_struct TsmOpenStructure
342 #define call_func_close_struct TsmCloseStructure
343 #define call_func_set_edit_mode TsmSetEditMode
344 #define call_func_set_elem_ptr TsmSetElementPointer
345 #define call_func_offset_elem_ptr TsmOffsetElementPointer
346 #define call_func_set_elem_ptr_label TsmSetElementPointerAtLabel
347 #define call_func_del_elem TsmDeleteElement
348 #define call_func_del_elem_range TsmDeleteElementRange
349 #define call_func_del_elems_labels TsmDeleteElementsBetweenLabels
350 #define call_func_del_struct TsmDeleteStructure
352 #define call_func_inq_elem_ptr TsmGetCurElemPtr
354 /* Declarations des subroutines triedron */
356 void EXPORT call_togl_ztriedron_setup (
365 void EXPORT call_togl_triedron_display (
366 CALL_DEF_VIEW * aview,
375 void EXPORT call_togl_triedron_erase (
379 void EXPORT call_togl_triedron_echo (
380 CALL_DEF_VIEW *aview,
384 /* Graduated trihedron */
386 void EXPORT call_togl_graduatedtrihedron_get(CALL_DEF_VIEW* view,
387 CALL_DEF_GRADUATEDTRIHEDRON* cubic);
389 void EXPORT call_togl_graduatedtrihedron_display(CALL_DEF_VIEW* view,
390 CALL_DEF_GRADUATEDTRIHEDRON* cubic);
392 void EXPORT call_togl_graduatedtrihedron_erase(CALL_DEF_VIEW* view);
394 void EXPORT call_togl_graduatedtrihedron_minmaxvalues(float xmin, float ymin, float zmin,
395 float xmax, float ymax, float zmax);
397 /* Declarations des subroutines mode immediat */
399 int EXPORT call_togl_begin_ajout_mode (
403 void EXPORT call_togl_end_ajout_mode (
406 int EXPORT call_togl_begin_immediat_mode (
407 CALL_DEF_VIEW *aview,
408 CALL_DEF_LAYER *anunderlayer,
409 CALL_DEF_LAYER *anoverlayer,
414 void EXPORT call_togl_end_immediat_mode (
418 void EXPORT call_togl_clear_immediat_mode (
419 CALL_DEF_VIEW *aview,
423 void EXPORT call_togl_transform (
424 CALL_DEF_MATRIX4X4 amatrix,
428 void EXPORT call_togl_begin_polyline (
431 void EXPORT call_togl_end_polyline (
434 void EXPORT call_togl_begin_polygon (
437 void EXPORT call_togl_end_polygon (
440 void EXPORT call_togl_begin_trianglemesh (
443 void EXPORT call_togl_end_trianglemesh (
446 void EXPORT call_togl_begin_marker (
449 void EXPORT call_togl_end_marker (
452 void EXPORT call_togl_begin_bezier (
455 void EXPORT call_togl_end_bezier (
458 void EXPORT call_togl_move (
464 void EXPORT call_togl_movenormal (
473 void EXPORT call_togl_moveweight (
480 void EXPORT call_togl_draw (
486 void EXPORT call_togl_drawnormal (
495 void EXPORT call_togl_drawweight (
502 void EXPORT call_togl_draw_text (
506 void EXPORT call_togl_draw_structure (
510 void EXPORT call_togl_set_linecolor (
516 void EXPORT call_togl_set_interiorcolor (
522 void EXPORT call_togl_set_linetype (
528 void EXPORT call_togl_set_interiortype (
534 void EXPORT call_togl_set_linewidth (
540 void EXPORT call_togl_set_textcolor (
548 void EXPORT call_togl_set_textfont (
556 void EXPORT call_togl_set_markercolor (
564 void EXPORT call_togl_set_markertype (
571 void EXPORT call_togl_set_minmax (
582 void EXPORT call_togl_set_rgb (
590 /* Declarations des subroutines appelees du C++ */
591 /* dans les packages Graphic3d et Visual3d */
593 void EXPORT call_togl_opengroup (
595 CALL_DEF_GROUP *agroup
599 void EXPORT call_togl_closegroup (
601 CALL_DEF_GROUP *agroup
605 void EXPORT call_togl_cleargroup (
607 CALL_DEF_GROUP *agroup
611 void EXPORT call_togl_linecontextgroup (
613 CALL_DEF_GROUP *agroup,
618 void EXPORT call_togl_facecontextgroup (
620 CALL_DEF_GROUP *agroup,
625 void EXPORT call_togl_markercontextgroup (
627 CALL_DEF_GROUP *agroup,
632 void EXPORT call_togl_textcontextgroup (
634 CALL_DEF_GROUP *agroup,
639 void EXPORT call_togl_group (
641 CALL_DEF_GROUP *agroup
645 void EXPORT call_togl_marker (
647 CALL_DEF_GROUP *agroup,
648 CALL_DEF_MARKER *amarker
652 void EXPORT call_togl_marker_set (
654 CALL_DEF_GROUP *agroup,
655 CALL_DEF_LISTMARKERS *almarkers
659 void EXPORT call_togl_polyline (
661 CALL_DEF_GROUP *agroup,
662 CALL_DEF_LISTPOINTS *alpoints
666 void EXPORT call_togl_polygon (
668 CALL_DEF_GROUP *agroup,
669 CALL_DEF_FACET *afacet
673 void EXPORT call_togl_polygon_holes (
675 CALL_DEF_GROUP *agroup,
676 CALL_DEF_LISTFACETS *alfacets
680 void EXPORT call_togl_polygon_indices (
682 CALL_DEF_GROUP *agroup,
683 CALL_DEF_LISTPOINTS *alpoints,
684 CALL_DEF_LISTEDGES *aledges,
685 CALL_DEF_LISTINTEGERS *albounds
689 void EXPORT call_togl_pickid (
691 CALL_DEF_GROUP *agroup
695 void EXPORT call_togl_quadrangle (
697 CALL_DEF_GROUP *agroup,
702 void EXPORT call_togl_removegroup (
704 CALL_DEF_GROUP *agroup
708 void EXPORT call_togl_text (
710 CALL_DEF_GROUP *agroup,
715 void EXPORT call_togl_triangle (
717 CALL_DEF_GROUP *agroup,
718 CALL_DEF_TRIKE *atrike
722 void EXPORT call_togl_bezier (
724 CALL_DEF_GROUP *agroup,
725 CALL_DEF_LISTPOINTS *alpoints
729 void EXPORT call_togl_bezier_weight (
731 CALL_DEF_GROUP *agroup,
732 CALL_DEF_LISTPOINTS *alpoints,
733 CALL_DEF_LISTREALS *alweights
737 void EXPORT call_togl_blink (
739 CALL_DEF_STRUCTURE *astructure,
744 void EXPORT call_togl_boundarybox (
746 CALL_DEF_STRUCTURE *astructure,
751 void EXPORT call_togl_clearstructure (
753 CALL_DEF_STRUCTURE *astructure
757 void EXPORT call_togl_contextstructure (
759 CALL_DEF_STRUCTURE *astructure
763 void EXPORT call_togl_highlightcolor (
765 CALL_DEF_STRUCTURE *astructure,
766 CALL_DEF_COLOR *acolor,
771 void EXPORT call_togl_namesetstructure (
773 CALL_DEF_STRUCTURE *astructure
777 void EXPORT call_togl_removestructure (
779 CALL_DEF_STRUCTURE *astructure
783 void EXPORT call_togl_structure (
785 CALL_DEF_STRUCTURE *astructure
789 void EXPORT call_togl_transformstructure (
791 CALL_DEF_STRUCTURE *astructure
795 void EXPORT call_togl_degeneratestructure (
797 CALL_DEF_STRUCTURE *astructure
801 void EXPORT call_togl_connect (
803 CALL_DEF_STRUCTURE *afather,
804 CALL_DEF_STRUCTURE *ason
808 void EXPORT call_togl_disconnect (
810 CALL_DEF_STRUCTURE *afather,
811 CALL_DEF_STRUCTURE *ason
815 int EXPORT call_togl_begin_animation (
821 void EXPORT call_togl_end_animation (
827 int EXPORT call_togl_begin (
834 int EXPORT call_togl_begin_display (
841 void EXPORT call_togl_end (
846 void EXPORT call_togl_structure_exploration (
854 void EXPORT call_togl_element_exploration (
860 CALL_DEF_NORMAL *npt,
866 void EXPORT call_togl_element_type (
874 void EXPORT call_togl_activateview (
880 void EXPORT call_togl_antialiasing (
882 CALL_DEF_VIEW *aview,
887 void EXPORT call_togl_background (
893 void EXPORT call_togl_gradient_background (
896 tel_colour tcolor1, tel_colour tcolor2
900 void EXPORT call_togl_set_gradient_type (
906 int EXPORT call_togl_project_raster (
917 int EXPORT call_togl_adopt_to_rect(
923 int EXPORT call_togl_unproject_raster (
938 int EXPORT call_togl_unproject_raster_with_ray (
956 void EXPORT call_togl_cliplimit (
958 CALL_DEF_VIEW *aview,
963 void EXPORT call_togl_deactivateview (
969 void EXPORT call_togl_depthcueing (
971 CALL_DEF_VIEW *aview,
976 void EXPORT call_togl_displaystructure (
978 CALL_DEF_VIEW *aview,
984 void EXPORT call_togl_erasestructure (
991 void EXPORT call_togl_init_pick (
996 void EXPORT call_togl_pick (
1002 void EXPORT call_togl_ratio_window (
1004 CALL_DEF_VIEW *aview
1008 void EXPORT call_togl_redraw (
1010 CALL_DEF_VIEW *aview,
1011 CALL_DEF_LAYER *anunderlayer,
1012 CALL_DEF_LAYER *anoverlayer
1016 void EXPORT call_togl_redraw_area (
1018 CALL_DEF_VIEW *aview,
1019 CALL_DEF_LAYER *anunderlayer,
1020 CALL_DEF_LAYER *anoverlayer,
1021 int x, int y, int width, int height
1025 void EXPORT call_togl_removeview (
1027 CALL_DEF_VIEW *aview
1031 void EXPORT call_togl_setlight (
1033 CALL_DEF_VIEW *aview
1037 void EXPORT call_togl_setplane (
1039 CALL_DEF_VIEW *aview
1043 void EXPORT call_togl_setvisualisation (
1045 CALL_DEF_VIEW *aview
1049 void EXPORT call_togl_transparency (
1057 void EXPORT call_togl_update (
1059 CALL_DEF_VIEW *aview,
1060 CALL_DEF_LAYER *anunderlayer,
1061 CALL_DEF_LAYER *anoverlayer
1065 int EXPORT call_togl_view (
1067 CALL_DEF_VIEW *aview
1071 int EXPORT call_togl_viewmapping (
1073 CALL_DEF_VIEW *aview,
1078 int EXPORT call_togl_vieworientation (
1080 CALL_DEF_VIEW *aview,
1085 int EXPORT call_togl_inquiretexture (
1090 int EXPORT call_togl_inquirelight (
1095 int EXPORT call_togl_inquireplane (
1100 int EXPORT call_togl_inquireview (
1105 int EXPORT call_togl_inquiremat (
1107 CALL_DEF_VIEW *aview,
1108 CALL_DEF_MATRIX4X4 ori_matrix,
1109 CALL_DEF_MATRIX4X4 map_matrix
1113 void EXPORT call_togl_view_exploration (
1120 int EXPORT call_togl_create_texture (
1124 unsigned int Height,
1125 unsigned char *Data,
1130 void EXPORT call_togl_create_bg_texture (
1132 CALL_DEF_VIEW *aview,
1135 unsigned char *data,
1139 #endif /* OCC1188 */
1141 void EXPORT call_togl_set_bg_texture_style(
1143 CALL_DEF_VIEW* aview,
1148 void EXPORT call_togl_destroy_texture (
1154 void EXPORT call_togl_modify_texture (
1157 CALL_DEF_INIT_TEXTURE *init_tex
1161 void EXPORT call_togl_environment (
1163 CALL_DEF_VIEW *aview
1167 /* Declarations des subroutines layer mode */
1169 void EXPORT call_togl_layer2d (
1171 CALL_DEF_LAYER *alayer
1175 void EXPORT call_togl_removelayer2d (
1177 CALL_DEF_LAYER *alayer
1181 void EXPORT call_togl_begin_layer2d (
1183 CALL_DEF_LAYER *alayer
1187 void EXPORT call_togl_end_layer2d (
1190 void EXPORT call_togl_clear_layer2d (
1192 CALL_DEF_LAYER *alayer
1196 void EXPORT call_togl_begin_polyline2d (
1199 void EXPORT call_togl_end_polyline2d (
1202 void EXPORT call_togl_begin_polygon2d (
1205 void EXPORT call_togl_end_polygon2d (
1208 void EXPORT call_togl_move2d (
1215 void EXPORT call_togl_draw2d (
1222 void EXPORT call_togl_edge2d (
1229 void EXPORT call_togl_rectangle2d (
1238 void EXPORT call_togl_set_color (
1246 void EXPORT call_togl_set_transparency (
1252 void EXPORT call_togl_unset_transparency ( );
1254 void EXPORT call_togl_set_line_attributes (
1261 void EXPORT call_togl_set_text_attributes (
1271 void EXPORT call_togl_set_text_attributes (
1275 OSD_FontAspect type,
1282 void EXPORT call_togl_set_text_scale_factors (
1289 void EXPORT call_togl_text2d (
1298 void EXPORT call_togl_textsize2d (
1308 void EXPORT call_togl_backfacing (
1314 /* *** group of parray functions *** */
1316 void EXPORT call_togl_parray (
1318 CALL_DEF_GROUP *agroup,
1319 CALL_DEF_PARRAY* parray
1323 void EXPORT call_togl_userdraw (
1325 CALL_DEF_GROUP *agroup,
1326 CALL_DEF_USERDRAW *anobject
1330 /* ------------------------- */
1331 void EXPORT call_togl_print (
1333 CALL_DEF_VIEW *aview,
1334 CALL_DEF_LAYER *anunderlayer,
1335 CALL_DEF_LAYER *anoverlayer,
1336 const Aspect_Drawable hPrintDC,
1337 const int background,
1338 const char* filename
1344 void EXPORT call_togl_depthtest (
1346 CALL_DEF_VIEW *aview,
1351 int EXPORT call_togl_isdepthtest (
1353 CALL_DEF_VIEW *aview
1359 void EXPORT call_togl_gllight (
1361 CALL_DEF_VIEW *aview,
1366 int EXPORT call_togl_isgllight (
1368 CALL_DEF_VIEW *aview
1373 /*----------------------------------------------------------------------*/