GRASS GIS 8 Programmer's Manual  8.4.0dev(2024)-112dd97adf
defs/ogsf.h
Go to the documentation of this file.
1 #ifndef GRASS_OGSFDEFS_H
2 #define GRASS_OGSFDEFS_H
3 
4 /* GK2.c */
5 int GK_set_interpmode(int);
6 void GK_set_tension(float);
7 void GK_showtension_start(void);
8 void GK_showtension_stop(void);
9 void GK_update_tension(void);
10 void GK_update_frames(void);
11 void GK_set_numsteps(int);
12 void GK_clear_keys(void);
13 void GK_print_keys(const char *);
14 int GK_move_key(float, float, float);
15 int GK_delete_key(float, float, int);
16 int GK_add_key(float, unsigned long, int, float);
17 void GK_do_framestep(int, int);
18 void GK_show_path(int);
19 void GK_show_vect(int);
20 void GK_show_site(int);
21 void GK_show_vol(int);
22 void GK_show_list(int);
23 
24 /* GP2.c */
25 int GP_site_exists(int);
26 int GP_new_site(void);
27 int GP_num_sites(void);
28 int *GP_get_site_list(int *);
29 int GP_delete_site(int);
30 int GP_load_site(int, const char *);
31 int GP_get_sitename(int, char **);
32 int GP_get_style(int, int *, int *, float *, int *);
33 int GP_set_style(int, int, int, float, int);
34 int GP_set_style_thematic(int, int, const char *, const char *, const char *,
35  const char *, struct Colors *);
37 int GP_attmode_color(int, const char *);
38 int GP_attmode_none(int);
39 int GP_set_zmode(int, int);
40 int GP_get_zmode(int, int *);
41 void GP_set_trans(int, float, float, float);
42 void GP_get_trans(int, float *, float *, float *);
43 int GP_select_surf(int, int);
44 int GP_unselect_surf(int, int);
45 int GP_surf_is_selected(int, int);
46 void GP_draw_site(int);
47 void GP_alldraw_site(void);
48 int GP_Set_ClientData(int, void *);
49 void *GP_Get_ClientData(int);
50 int GP_str_to_marker(const char *);
51 
52 /* GS2.c */
53 void void_func(void);
54 void GS_libinit(void);
55 int GS_get_longdim(float *);
56 int GS_get_region(float *, float *, float *, float *);
57 void GS_set_att_defaults(float *, float *);
58 int GS_surf_exists(int);
59 int GS_new_surface(void);
60 int GS_new_light(void);
61 void GS_set_light_reset(int);
62 int GS_get_light_reset(void);
63 void GS_setlight_position(int, float, float, float, int);
64 void GS_setlight_color(int, float, float, float);
65 void GS_setlight_ambient(int, float, float, float);
66 void GS_lights_off(void);
67 void GS_lights_on(void);
68 void GS_switchlight(int, int);
69 int GS_transp_is_set(void);
70 void GS_get_modelposition1(float *);
71 void GS_get_modelposition(float *, float *);
72 void GS_draw_X(int, float *);
73 void GS_set_Narrow(int *, int, float *);
74 void GS_draw_line_onsurf(int, float, float, float, float);
75 int GS_draw_nline_onsurf(int, float, float, float, float, float *, int);
76 void GS_draw_flowline_at_xy(int, float, float);
77 void GS_draw_lighting_model1(void);
78 void GS_draw_lighting_model(void);
79 int GS_update_curmask(int);
80 int GS_is_masked(int, float *);
81 void GS_unset_SDsurf(void);
82 int GS_set_SDsurf(int);
83 int GS_set_SDscale(float);
84 int GS_get_SDsurf(int *);
85 int GS_get_SDscale(float *);
86 int GS_update_normals(int);
87 int GS_get_att(int, int, int *, float *, char *);
88 int GS_get_cat_at_xy(int, int, char *, float, float);
89 int GS_get_norm_at_xy(int, float, float, float *);
90 int GS_get_val_at_xy(int, int, char *, float, float);
91 int GS_unset_att(int, int);
92 int GS_set_att_const(int, int, float);
93 int GS_set_maskmode(int, int);
94 int GS_get_maskmode(int, int *);
95 int GS_Set_ClientData(int, void *);
96 void *GS_Get_ClientData(int);
97 int GS_num_surfs(void);
98 int *GS_get_surf_list(int *);
99 int GS_delete_surface(int);
100 int GS_load_att_map(int, const char *, int);
101 void GS_draw_surf(int);
102 void GS_draw_wire(int);
103 void GS_alldraw_wire(void);
104 void GS_alldraw_surf(void);
105 void GS_set_exag(int, float);
106 void GS_set_global_exag(float);
107 float GS_global_exag(void);
108 void GS_set_wire_color(int, int);
109 int GS_get_wire_color(int, int *);
110 int GS_setall_drawmode(int);
111 int GS_set_drawmode(int, int);
112 int GS_get_drawmode(int, int *);
113 void GS_set_nozero(int, int, int);
114 int GS_get_nozero(int, int, int *);
115 int GS_setall_drawres(int, int, int, int);
116 int GS_set_drawres(int, int, int, int, int);
117 void GS_get_drawres(int, int *, int *, int *, int *);
118 void GS_get_dims(int, int *, int *);
119 int GS_get_exag_guess(int, float *);
120 void GS_get_zrange_nz(float *, float *);
121 void GS_set_trans(int, float, float, float);
122 void GS_get_trans(int, float *, float *, float *);
123 unsigned int GS_default_draw_color(void);
124 unsigned int GS_background_color(void);
125 void GS_set_draw(int);
126 void GS_ready_draw(void);
127 void GS_done_draw(void);
128 void GS_set_focus(float *);
129 int GS_get_focus(float *);
130 void GS_set_focus_center_map(int);
131 void GS_moveto(float *);
132 void GS_moveto_real(float *);
133 void GS_set_focus_real(float *);
134 void GS_get_to_real(float *);
135 int GS_get_zextents(int, float *, float *, float *);
136 int GS_get_zrange(float *, float *, int);
137 void GS_get_from(float *);
138 void GS_get_from_real(float *);
139 void GS_get_to(float *);
140 void GS_get_viewdir(float *);
141 void GS_set_viewdir(float *);
142 void GS_set_fov(int);
143 void GS_set_rotation(double, double, double, double);
144 void GS_get_rotation_matrix(double *);
145 void GS_set_rotation_matrix(double *);
146 void GS_init_rotation(void);
147 void GS_unset_rotation(void);
148 int GS_get_fov(void);
149 int GS_get_twist(void);
150 void GS_set_twist(int);
151 void GS_set_nofocus(void);
152 void GS_set_infocus(void);
153 void GS_set_viewport(int, int, int, int);
154 int GS_look_here(int, int);
155 int GS_get_selected_point_on_surface(int, int, int *, float *, float *,
156  float *);
157 void GS_set_cplane_rot(int, float, float, float);
158 void GS_set_cplane_trans(int, float, float, float);
159 void GS_draw_cplane(int);
160 int GS_draw_cplane_fence(int, int, int);
161 void GS_alldraw_cplane_fences(void);
162 void GS_set_cplane(int);
163 void GS_unset_cplane(int);
164 void GS_get_scale(float *, float *, float *, int);
165 void GS_set_fencecolor(int);
166 int GS_get_fencecolor(void);
167 int GS_get_distance_alongsurf(int, float, float, float, float, float *, int);
168 int GS_save_3dview(const char *, int);
169 int GS_load_3dview(const char *, int);
170 void GS_init_view(void);
171 void GS_clear(int);
172 double GS_get_aspect(void);
173 int GS_has_transparency(void);
174 void GS_zoom_setup(int *, int *, int *, int *, int *, int *);
175 int GS_write_zoom(const char *, unsigned int, unsigned int);
176 void GS_draw_all_list(void);
177 void GS_delete_list(GLuint);
178 int GS_draw_legend(const char *, GLuint, int, int *, float *, int *);
179 void GS_draw_fringe(int, unsigned long, float, int *);
180 void GS_getlight_position(int, float *, float *, float *, int *);
181 void GS_getlight_color(int, float *, float *, float *);
182 void GS_getlight_ambient(int, float *, float *, float *);
183 
184 /* GSX.c */
185 int GS_check_cancel(void);
186 void GS_set_cancel(int);
187 void GS_set_cxl_func(void (*)(void));
188 
189 /* GS_util.c */
190 double GS_geodistance(double *, double *, const char *);
191 float GS_distance(float *, float *);
192 float GS_P2distance(float *, float *);
193 void GS_v3eq(float *, float *);
194 void GS_v3add(float *, float *);
195 void GS_v3sub(float *, float *);
196 void GS_v3mult(float *, float);
197 int GS_v3norm(float *);
198 int GS_v2norm(float *);
199 int GS_dv3norm(double *);
200 int GS_v3normalize(float *, float *);
201 int GS_v3dir(float *, float *, float *);
202 void GS_v2dir(float *, float *, float *);
203 void GS_v3cross(float *, float *, float *);
204 void GS_v3mag(float *, float *);
205 int GS_coordpair_repeats(float *, float *, int);
206 
207 /* GV2.c */
208 int GV_vect_exists(int);
209 int GV_new_vector(void);
210 int GV_num_vects(void);
211 int *GV_get_vect_list(int *);
212 int GV_delete_vector(int);
213 int GV_load_vector(int, const char *);
214 int GV_get_vectname(int, char **);
215 int GV_set_style(int, int, int, int, int);
216 int GV_get_style(int, int *, int *, int *, int *);
217 int GV_set_style_thematic(int, int, const char *, const char *,
218  struct Colors *);
219 int GV_unset_style_thematic(int);
220 void GV_set_trans(int, float, float, float);
221 int GV_get_trans(int, float *, float *, float *);
222 int GV_select_surf(int, int);
223 int GV_unselect_surf(int, int);
224 int GV_surf_is_selected(int, int);
225 void GV_draw_vect(int);
226 void GV_alldraw_vect(void);
227 void GV_alldraw_fastvect(void);
228 void GV_draw_fastvect(int);
229 int GV_Set_ClientData(int, void *);
230 void *GV_Get_ClientData(int);
231 
232 /* GVL2.c */
233 void GVL_libinit(void);
234 void GVL_init_region(void);
235 int GVL_get_region(float *, float *, float *, float *, float *, float *);
236 void *GVL_get_window(void);
237 int GVL_vol_exists(int);
238 int GVL_new_vol(void);
239 int GVL_num_vols(void);
240 int *GVL_get_vol_list(int *);
241 int GVL_delete_vol(int);
242 int GVL_load_vol(int, const char *);
243 int GVL_get_volname(int, char *);
244 void GVL_set_trans(int, float, float, float);
245 int GVL_get_trans(int, float *, float *, float *);
246 void GVL_set_draw_wire(int, int);
247 void GVL_draw_vol(int);
248 void GVL_draw_wire(int);
249 void GVL_alldraw_vol(void);
250 void GVL_alldraw_wire(void);
251 int GVL_Set_ClientData(int, void *);
252 void *GVL_Get_ClientData(int);
253 void GVL_get_dims(int, int *, int *, int *);
254 void GVL_set_focus_center_map(int);
255 
256 int GVL_isosurf_move_up(int, int);
257 int GVL_isosurf_move_down(int, int);
258 void GVL_isosurf_get_drawres(int, int *, int *, int *);
259 int GVL_isosurf_set_drawres(int, int, int, int);
260 int GVL_isosurf_get_drawmode(int, int *);
261 int GVL_isosurf_set_drawmode(int, int);
262 int GVL_isosurf_add(int);
263 int GVL_isosurf_del(int, int);
264 int GVL_isosurf_get_att(int, int, int, int *, float *, char *);
265 int GVL_isosurf_unset_att(int, int, int);
266 int GVL_isosurf_set_att_const(int, int, int, float);
267 int GVL_isosurf_set_att_map(int, int, int, const char *);
268 int GVL_isosurf_get_flags(int, int, int *);
269 int GVL_isosurf_set_flags(int, int, int);
270 int GVL_isosurf_num_isosurfs(int);
271 int GVL_isosurf_set_maskmode(int, int, int);
272 int GVL_isosurf_get_maskmode(int, int, int *);
273 
274 int GVL_slice_move_up(int, int);
275 int GVL_slice_move_down(int, int);
276 void GVL_slice_get_drawres(int, int *, int *, int *);
277 int GVL_slice_get_transp(int, int, int *);
278 int GVL_slice_set_transp(int, int, int);
279 int GVL_slice_set_drawres(int, int, int, int);
280 int GVL_slice_get_drawmode(int, int *);
281 int GVL_slice_set_drawmode(int, int);
282 int GVL_slice_add(int);
283 int GVL_slice_del(int, int);
284 int GVL_slice_num_slices(int);
285 int GVL_slice_get_pos(int, int, float *, float *, float *, float *, float *,
286  float *, int *);
287 int GVL_slice_set_pos(int, int, float, float, float, float, float, float, int);
288 
289 /* Gp3.c */
290 int Gp_set_color(const char *, geopoint *);
291 geopoint *Gp_load_sites(const char *, int *, int *);
292 int Gp_load_sites_thematic(geosite *, struct Colors *);
293 
294 /* Gs3.c */
295 double Gs_distance(double *, double *);
296 int Gs_loadmap_as_float(struct Cell_head *, const char *, float *, struct BM *,
297  int *);
298 int Gs_loadmap_as_int(struct Cell_head *, const char *, int *, struct BM *,
299  int *);
300 int Gs_numtype(const char *, int *);
301 int Gs_loadmap_as_short(struct Cell_head *, const char *, short *, struct BM *,
302  int *);
303 int Gs_loadmap_as_char(struct Cell_head *, const char *, unsigned char *,
304  struct BM *, int *);
305 int Gs_loadmap_as_bitmap(struct Cell_head *, const char *, struct BM *);
306 int Gs_build_256lookup(const char *, int *);
307 void Gs_pack_colors(const char *, int *, int, int);
308 void Gs_pack_colors_float(const char *, float *, int *, int, int);
309 int Gs_get_cat_label(const char *, int, int, char *);
310 int Gs_save_3dview(const char *, geoview *, geodisplay *, struct Cell_head *,
311  geosurf *);
312 int Gs_load_3dview(const char *, geoview *, geodisplay *, struct Cell_head *,
313  const geosurf *);
314 int Gs_update_attrange(geosurf *, int);
315 
316 /* Gv3.c */
317 geoline *Gv_load_vect(const char *, int *);
318 int Gv_load_vect_thematic(geovect *, struct Colors *);
319 void sub_Vectmem(int);
320 
321 /* gk.c */
323 unsigned long gk_get_mask_sofar(float, Keylist *);
324 int gk_viable_keys_for_mask(unsigned long, Keylist *, Keylist **);
325 void gk_follow_frames(Viewnode *, int, Keylist *, int, int, int, unsigned long);
326 void gk_free_key(Keylist *);
327 Viewnode *gk_make_framesfromkeys(Keylist *, int, int, int, float);
328 double get_key_neighbors(int, double, double, int, Keylist **, Keylist **,
329  Keylist **, Keylist **, Keylist **, double *,
330  double *);
331 double lin_interp(float, float, float);
332 double get_2key_neighbors(int, float, float, int, Keylist **, Keylist **,
333  Keylist **);
335 void correct_twist(Keylist *);
336 int gk_draw_path(Viewnode *, int, Keylist *);
337 
338 /* gp.c */
339 geosite *gp_get_site(int);
341 int gp_num_sites(void);
343 geosite *gp_get_new_site(void);
344 void gp_update_drapesurfs(void);
345 int gp_set_defaults(geosite *);
347 int gp_init_site(geosite *);
348 void gp_delete_site(int);
349 int gp_free_site(geosite *);
350 void gp_free_sitemem(geosite *);
351 void gp_set_drapesurfs(geosite *, int *, int);
352 
353 /* gpd.c */
354 int gs_point_in_region(geosurf *, float *, float *);
355 void gpd_obj(geosurf *, gvstyle *, Point3);
356 int gpd_2dsite(geosite *, geosurf *, int);
357 int gpd_3dsite(geosite *, float, float, int);
358 
359 /* gs.c */
360 void gs_err(const char *);
361 void gs_init(void);
362 geosurf *gs_get_surf(int);
365 int gs_num_surfaces(void);
366 int gs_att_is_set(geosurf *, IFLAG);
369 int gs_init_surf(geosurf *, double, double, int, int, double, double);
371 void print_frto(float (*)[4]);
372 void print_realto(float *);
373 void print_256lookup(int *);
374 void print_surf_fields(geosurf *);
375 void print_view_fields(geoview *);
376 void gs_set_defaults(geosurf *, float *, float *);
377 void gs_delete_surf(int);
378 int gs_free_surf(geosurf *);
380 int gs_num_datah_reused(int);
381 int gs_get_att_type(geosurf *, int);
382 int gs_get_att_src(geosurf *, int);
383 typbuff *gs_get_att_typbuff(geosurf *, int, int);
384 size_t gs_malloc_att_buff(geosurf *, int, int);
385 int gs_malloc_lookup(geosurf *, int);
386 int gs_set_att_type(geosurf *, int, int);
387 int gs_set_att_src(geosurf *, int, int);
388 int gs_set_att_const(geosurf *, int, float);
389 void gs_set_maskmode(int);
390 int gs_mask_defined(geosurf *);
391 int gs_masked(typbuff *, int, int, int);
392 int gs_mapcolor(typbuff *, gsurf_att *, int);
393 int gs_get_zextents(geosurf *, float *, float *, float *);
394 int gs_get_xextents(geosurf *, float *, float *);
395 int gs_get_yextents(geosurf *, float *, float *);
396 int gs_get_zrange0(float *, float *);
397 int gs_get_zrange(float *, float *);
398 int gs_get_xrange(float *, float *);
399 int gs_get_yrange(float *, float *);
400 int gs_get_data_avg_zmax(float *);
401 int gs_get_datacenter(float *);
402 int gs_setall_norm_needupdate(void);
403 int gs_point_is_masked(geosurf *, float *);
404 int gs_distance_onsurf(geosurf *, float *, float *, float *, int);
405 
406 /* gs_bm.c */
407 struct BM *gsbm_make_mask(typbuff *, float, int, int);
408 void gsbm_zero_mask(struct BM *);
409 int gsbm_or_masks(struct BM *, struct BM *);
410 int gsbm_ornot_masks(struct BM *, struct BM *);
411 int gsbm_and_masks(struct BM *, struct BM *);
412 int gsbm_xor_masks(struct BM *, struct BM *);
414 void print_bm(struct BM *);
415 
416 /* gs_norms.c */
417 void init_vars(geosurf *);
418 int gs_calc_normals(geosurf *);
419 int calc_norm(geosurf *, int, int, unsigned int);
420 
421 /* gs_query.c */
422 int gs_los_intersect1(int, float (*)[3], float *);
423 int gs_los_intersect(int, float **, float *);
424 int RayCvxPolyhedronInt(Point3, Point3, double, Point4 *, int, double *, int *);
427 
428 /* gsd_cplane.c */
429 void gsd_def_cplane(int, float *, float *);
430 void gsd_update_cplanes(void);
431 void gsd_cplane_on(int);
432 void gsd_cplane_off(int);
433 void gsd_get_cplanes_state(int *);
434 int gsd_get_cplanes(Point4 *);
435 void gsd_update_cpnorm(int);
436 void gsd_cplane_setrot(int, float, float, float);
437 void gsd_cplane_settrans(int, float, float, float);
439 void gsd_draw_cplane(int);
440 
441 /* gsd_fonts.c */
442 GLuint gsd_set_font(const char *);
443 int gsd_get_txtwidth(const char *, int);
444 int gsd_get_txtheight(int size);
445 void do_label_display(GLuint, float *, const char *);
446 int get_txtdescender(void);
447 int get_txtxoffset(void);
448 
449 /* gsd_img_ppm.c */
450 int GS_write_ppm(const char *);
451 
452 /* gsd_img_tif.c */
453 int GS_write_tif(const char *);
454 
455 /* gsd_label.c */
456 void gs_put_label(const char *, GLuint, int, unsigned long, int *);
457 void gsd_remove_curr(void);
458 void gsd_remove_all(void);
459 void gsd_call_label(void);
460 
461 /* gsd_objs.c */
462 void gsd_box(float *, int, float *);
463 void gsd_plus(float *, int, float);
464 void gsd_line_onsurf(geosurf *, float *, float *);
465 int gsd_nline_onsurf(geosurf *, float *, float *, float *, int);
466 void gsd_x(geosurf *, float *, int, float);
467 void gsd_diamond(float *, unsigned long, float);
468 void gsd_diamond_lines(void);
469 void gsd_cube(float *, unsigned long, float);
470 void gsd_draw_box(float *, unsigned long, float);
471 void gsd_drawsphere(float *, unsigned long, float);
472 void gsd_draw_asterisk(float *, unsigned long, float);
473 void gsd_draw_gyro(float *, unsigned long, float);
474 void gsd_3dcursor(float *);
475 void dir_to_slope_aspect(float *, float *, float *, int);
476 int gsd_north_arrow(float *, float, GLuint, unsigned long, unsigned long);
477 int gsd_arrow(float *, unsigned long, float, float *, float, geosurf *);
478 int gsd_arrow_onsurf(float *, float *, unsigned long, int, geosurf *);
479 void gsd_3darrow(float *, unsigned long, float, float, float *, float);
480 int gsd_scalebar(float *, float, GLuint, unsigned long, unsigned long);
481 int gsd_scalebar_v2(float *, float, GLuint, unsigned long, unsigned long);
482 void primitive_cone(unsigned long);
483 void primitive_cylinder(unsigned long, int);
484 
485 /* gsd_prim.c */
486 void gsd_flush(void);
487 void gsd_colormode(int);
488 void show_colormode(void);
489 void gsd_circ(float, float, float);
490 void gsd_disc(float, float, float, float);
491 void gsd_sphere(float *, float);
492 void gsd_zwritemask(unsigned long);
493 void gsd_backface(int);
494 void gsd_linewidth(short);
495 void gsd_bgnqstrip(void);
496 void gsd_endqstrip(void);
497 void gsd_bgntmesh(void);
498 void gsd_endtmesh(void);
499 void gsd_bgntstrip(void);
500 void gsd_endtstrip(void);
501 void gsd_bgntfan(void);
502 void gsd_endtfan(void);
503 void gsd_swaptmesh(void);
504 void gsd_bgnpolygon(void);
505 void gsd_endpolygon(void);
506 void gsd_bgnline(void);
507 void gsd_endline(void);
508 void gsd_shademodel(int);
509 int gsd_getshademodel(void);
510 void gsd_bothbuffers(void);
511 void gsd_frontbuffer(void);
512 void gsd_backbuffer(void);
513 void gsd_swapbuffers(void);
514 void gsd_popmatrix(void);
515 void gsd_pushmatrix(void);
516 void gsd_scale(float, float, float);
517 void gsd_translate(float, float, float);
518 void gsd_rot(float, char);
519 void gsd_checkwindow(int *, int *, double *, double *);
520 int gsd_checkpoint(float[4], int[4], int[4], double[16], double[16]);
521 void gsd_litvert_func(float *, unsigned long, float *);
522 void gsd_litvert_func2(float *, unsigned long, float *);
523 void gsd_vert_func(float *);
524 void gsd_color_func(unsigned int);
525 void gsd_init_lightmodel(void);
526 void gsd_set_material(int, int, float, float, int);
527 void gsd_deflight(int, struct lightdefs *);
528 void gsd_switchlight(int, int);
529 int gsd_getimage(unsigned char **, unsigned int *, unsigned int *);
530 void gsd_blend(int);
531 void gsd_def_clipplane(int, double *);
532 void gsd_set_clipplane(int, int);
533 void gsd_finish(void);
534 void gsd_viewport(int, int, int, int);
535 int gsd_makelist(void);
536 void gsd_bgnlist(int, int);
537 void gsd_endlist(void);
538 void gsd_calllist(int);
539 void gsd_deletelist(GLuint, int);
540 void gsd_calllists(int);
541 void gsd_getwindow(int *, int *, double *, double *);
542 int gsd_writeView(unsigned char **, unsigned int, unsigned int);
543 
544 /* gsd_surf.c */
545 int gsd_surf(geosurf *);
546 int gsd_surf_map(geosurf *);
547 int gsd_surf_const(geosurf *, float);
548 int gsd_surf_func(geosurf *, int (*)(void));
549 int gsd_triangulated_wall(int, int, geosurf *, geosurf *, Point3 *, Point3 *,
550  float *);
551 void gsd_setfc(int);
552 int gsd_getfc(void);
553 int gsd_ortho_wall(int, int, geosurf **, Point3 **, float *);
554 int gsd_wall(float *, float *, float *);
555 int gsd_norm_arrows(geosurf *);
556 
557 /* gsd_views.c */
558 int gsd_get_los(float (*)[3], short, short);
559 void gsd_set_view(geoview *, geodisplay *);
560 void gsd_check_focus(geoview *);
561 void gsd_get_zup(geoview *, double *);
562 int gsd_zup_twist(geoview *);
563 void gsd_do_scale(int);
564 void gsd_real2model(Point3);
565 void gsd_model2real(Point3);
566 void gsd_model2surf(geosurf *, Point3);
567 void gsd_surf2model(Point3);
568 void gsd_surf2real(geosurf *, Point3);
569 void gsd_real2surf(geosurf *, Point3);
570 
571 /* gsd_wire.c */
572 int gsd_wire_surf(geosurf *);
575 int gsd_wire_surf_const(geosurf *, float);
576 int gsd_wire_surf_func(geosurf *, int (*)(void));
577 int gsd_wire_arrows(geosurf *);
578 
579 /* gsdiff.c */
580 void gsdiff_set_SDscale(float);
581 float gsdiff_get_SDscale(void);
582 void gsdiff_set_SDref(geosurf *);
584 float gsdiff_do_SD(float, int);
585 
586 /* gsdrape.c */
588 int seg_intersect_vregion(geosurf *, float *, float *);
589 Point3 *gsdrape_get_segments(geosurf *, float *, float *, int *);
590 Point3 *gsdrape_get_allsegments(geosurf *, float *, float *, int *);
591 void interp_first_last(geosurf *, float *, float *, Point3, Point3);
593 int viewcell_tri_interp(geosurf *, typbuff *, Point3, int);
594 int in_vregion(geosurf *, float *);
595 int order_intersects(geosurf *, Point3, Point3, int, int, int);
596 int get_vert_intersects(geosurf *, float *, float *, float *);
597 int get_horz_intersects(geosurf *, float *, float *, float *);
598 int get_diag_intersects(geosurf *, float *, float *, float *);
599 int segs_intersect(float, float, float, float, float, float, float, float,
600  float *, float *);
602 int XY_intersect_plane(float *, float *);
603 int P3toPlane(Point3, Point3, Point3, float *);
604 int V3Cross(Point3, Point3, Point3);
605 
606 /* gsds.c */
607 int gsds_findh(const char *, IFLAG *, IFLAG *, int);
608 int gsds_newh(const char *);
610 char *gsds_get_name(int);
611 int gsds_free_datah(int);
612 int gsds_free_data_buff(int, int);
613 size_t free_data_buffs(dataset *, int);
614 size_t gsds_alloc_typbuff(int, int *, int, int);
615 int gsds_get_changed(int);
616 int gsds_set_changed(int, IFLAG);
617 int gsds_get_type(int);
618 
619 /* gsget.c */
620 int get_mapatt(typbuff *, int, float *);
621 
622 /* gv.c */
623 geovect *gv_get_vect(int);
625 int gv_num_vects(void);
627 geovect *gv_get_new_vect(void);
628 void gv_update_drapesurfs(void);
629 int gv_set_defaults(geovect *);
630 int gv_init_vect(geovect *);
631 void gv_delete_vect(int);
632 int gv_free_vect(geovect *);
633 void gv_free_vectmem(geovect *);
634 void gv_set_drapesurfs(geovect *, int *, int);
635 
636 /* gv_quick.c */
637 float gv_line_length(geoline *);
638 int gln_num_points(geoline *);
639 int gv_num_points(geovect *);
641 
642 /* gvd.c */
643 int gs_clip_segment(geosurf *, float *, float *, float *);
644 int gvd_vect(geovect *, geosurf *, int);
645 void gvd_draw_lineonsurf(geosurf *, float *, float *, int);
646 
647 /* gvl.c */
648 geovol *gvl_get_vol(int);
650 int gvl_getall_vols(geovol **);
651 int gvl_num_vols(void);
652 geovol *gvl_get_last_vol(void);
653 geovol *gvl_get_new_vol(void);
654 int gvl_init_vol(geovol *, double, double, double, int, int, int, double,
655  double, double);
656 void gvl_delete_vol(int);
657 int gvl_free_vol(geovol *);
658 void gvl_free_volmem(geovol *);
659 void print_vol_fields(geovol *);
660 int gvl_get_xextents(geovol *, float *, float *);
661 int gvl_get_yextents(geovol *, float *, float *);
662 int gvl_get_zextents(geovol *, float *, float *);
663 int gvl_get_xrange(float *, float *);
664 int gvl_get_yrange(float *, float *);
665 int gvl_get_zrange(float *, float *);
666 
671 int gvl_isosurf_set_att_src(geovol_isosurf *, int, int);
672 int gvl_isosurf_set_att_const(geovol_isosurf *, int, float);
673 int gvl_isosurf_set_att_map(geovol_isosurf *, int, const char *);
675 
679 
680 /* trans.c */
681 void P_scale(float, float, float);
682 void P_transform(int, float (*)[4], float (*)[4]);
683 int P_pushmatrix(void);
684 int P_popmatrix(void);
685 void P_rot(float, char);
686 
687 /* gvl_file.c */
689 char *gvl_file_get_name(int);
692 int gvl_file_newh(const char *, IFLAG);
693 int gvl_file_free_datah(int);
696 int gvl_file_get_value(geovol_file *, int, int, int, void *);
697 int gvl_file_is_null_value(geovol_file *, void *);
699 int gvl_file_set_slices_param(geovol_file *, int, int);
700 void gvl_file_get_min_max(geovol_file *, double *, double *);
701 
702 /* Gvl3.c */
703 int Gvl_load_colors_data(void **, const char *);
704 int Gvl_unload_colors_data(void *);
705 int Gvl_get_color_for_value(void *, float *);
706 
707 /* gvl_calc.c */
708 int gvl_isosurf_calc(geovol *);
709 int gvl_slices_calc(geovol *);
710 void gvl_write_char(int, unsigned char **, unsigned char);
711 unsigned char gvl_read_char(int, const unsigned char *);
712 void gvl_align_data(int, unsigned char **);
713 
714 /* gvld.c */
715 int gvld_vol(geovol *);
716 int gvld_wire_vol(geovol *);
717 int gvld_isosurf(geovol *);
719 int gvld_slices(geovol *);
720 int gvld_slice(geovol *, int);
721 int gvld_wire_slices(geovol *);
722 int gvld_wind3_box(geovol *);
723 
724 /* from gsd_fringe.c */
725 void gsd_display_fringe(geosurf *, unsigned long, float, int[4]);
726 void gsd_fringe_horiz_poly(float, geosurf *, int, int);
727 void gsd_fringe_horiz_line(float, geosurf *, int, int);
728 void gsd_fringe_vert_poly(float, geosurf *, int, int);
729 void gsd_fringe_vert_line(float, geosurf *, int, int);
730 
731 /* from gsd_legend.c */
732 GLuint gsd_put_legend(const char *, GLuint, int, int *, float *, int *);
733 void gsd_bgn_legend_viewport(GLint, GLint, GLint, GLint);
734 void gsd_end_legend_viewport(void);
735 int gsd_make_nice_number(float *);
736 
737 #endif /* GRASS_OGSFDEFS_H */
int gs_get_att_type(geosurf *, int)
Get attribute type.
Definition: gs.c:630
int GVL_slice_num_slices(int)
Get number or slices.
Definition: gvl2.c:1336
int GS_look_here(int, int)
Send screen coords sx and sy, lib traces through surfaces; sets new center to point of nearest inters...
Definition: gs2.c:3002
int gsd_triangulated_wall(int, int, geosurf *, geosurf *, Point3 *, Point3 *, float *)
ADD.
Definition: gsd_surf.c:1109
void GK_do_framestep(int, int)
Moves the animation to frame number "step".
Definition: gk2.c:487
int GV_vect_exists(int)
Check if vector set exists.
Definition: gv2.c:36
int gvld_isosurf(geovol *)
Draw volume isosurfaces.
Definition: gvld.c:92
void gvl_align_data(int, unsigned char **)
Append data to buffer.
Definition: gvl_calc.c:776
int GS_update_normals(int)
Update normals.
Definition: gs2.c:1111
int GS_get_SDsurf(int *)
Get ?
Definition: gs2.c:1077
int GVL_isosurf_get_att(int, int, int, int *, float *, char *)
Get isosurface attributes.
Definition: gvl2.c:809
void gsd_cube(float *, unsigned long, float)
Draw cube.
Definition: gsd_objs.c:407
Keylist * gk_copy_key(Keylist *)
Copy keyframes.
Definition: gk.c:45
int GS_get_twist(void)
Get twist value.
Definition: gs2.c:2860
int P_popmatrix(void)
Pop top of matrix stack, placing it into the current transformation matrix.
Definition: trans.c:188
void gsd_endlist(void)
End list.
Definition: gsd_prim.c:1140
int GS_v3norm(float *)
Change v1 so that it is a unit vector (2D)
Definition: gs_util.c:246
void gsd_fringe_horiz_line(float, geosurf *, int, int)
Draw fringe outline in x direction.
Definition: gsd_fringe.c:227
void GS_v3mult(float *, float)
Multiple vectors.
Definition: gs_util.c:229
int gsbm_xor_masks(struct BM *, struct BM *)
Mask bitmap (mask type XOR)
Definition: gs_bm.c:218
void gv_free_vectmem(geovect *)
Free allocated memory.
Definition: gv.c:313
int GS_surf_exists(int)
Definition: gs2.c:194
int gsd_make_nice_number(float *)
ADD.
Definition: gsd_legend.c:153
double get_key_neighbors(int, double, double, int, Keylist **, Keylist **, Keylist **, Keylist **, Keylist **, double *, double *)
geosurf * gs_get_new_surface(void)
Allocate new geosurf struct.
Definition: gs.c:194
void GP_get_trans(int, float *, float *, float *)
Get transformation params.
Definition: gp2.c:457
int GVL_Set_ClientData(int, void *)
Set client data for volume set.
Definition: gvl2.c:475
int gvl_file_newh(const char *, IFLAG)
Get handle for given file name and type.
Definition: gvl_file.c:269
void GS_set_cxl_func(void(*)(void))
Set cxl function.
Definition: gsx.c:52
void GS_set_rotation(double, double, double, double)
Set rotation params.
Definition: gs2.c:2882
int GVL_delete_vol(int)
Delete volume set from list.
Definition: gvl2.c:210
int gsd_writeView(unsigned char **, unsigned int, unsigned int)
Write view.
Definition: gsd_prim.c:969
void GS_get_modelposition1(float *)
int gvl_file_end_read(geovol_file *)
End read - free buffer memory.
Definition: gvl_file.c:1016
int gs_malloc_lookup(geosurf *, int)
Allocate attribute lookup.
Definition: gs.c:746
int gs_point_is_masked(geosurf *, float *)
Check if point is masked.
Definition: gs.c:1314
void GS_draw_X(int, float *)
Draw place marker.
Definition: gs2.c:634
int gv_decimate_lines(geovect *)
Decimate line.
Definition: gv_quick.c:231
geosite * gp_get_prev_site(int)
Get previous geosite struct from list.
Definition: gp.c:56
int GS_new_surface(void)
Add new surface.
Definition: gs2.c:223
void gsd_remove_curr(void)
Remove current label.
Definition: gsd_label.c:94
unsigned long gk_get_mask_sofar(float, Keylist *)
Get mask value.
Definition: gk.c:79
int GP_delete_site(int)
Delete registrated point set.
Definition: gp2.c:132
GLuint gsd_put_legend(const char *, GLuint, int, int *, float *, int *)
Put legend.
Definition: gsd_legend.c:201
int GS_get_region(float *, float *, float *, float *)
Get 2D region extent.
Definition: gs2.c:156
int gk_draw_path(Viewnode *, int, Keylist *)
Draw path.
Definition: gk.c:749
void gpd_obj(geosurf *, gvstyle *, Point3)
Draw point representing object.
Definition: gpd.c:70
int get_mapatt(typbuff *, int, float *)
Get map attributes.
Definition: gsget.c:31
void GK_show_vect(int)
Show vector sets.
Definition: gk2.c:529
void gsd_setfc(int)
ADD.
Definition: gsd_surf.c:1205
int gvl_slice_freemem(geovol_slice *)
Free geovol_slice struct.
Definition: gvl.c:782
int gvl_file_start_read(geovol_file *)
Start read - allocate memory buffer a read first data into buffer.
Definition: gvl_file.c:965
int gsd_surf_func(geosurf *, int(*)(void))
void gsd_endtstrip(void)
ADD.
Definition: gsd_prim.c:327
void gsd_diamond(float *, unsigned long, float)
Draw diamond symbol.
Definition: gsd_objs.c:305
void print_256lookup(int *)
Debugging, 256 integer values from buffer.
Definition: gs.c:369
void GS_alldraw_cplane_fences(void)
Draw all cplace fences ?
Definition: gs2.c:3191
int gsd_zup_twist(geoview *)
ADD.
Definition: gsd_views.c:274
void gsd_endtfan(void)
ADD.
Definition: gsd_prim.c:347
void GVL_get_dims(int, int *, int *, int *)
Get volume dimensions.
Definition: gvl2.c:309
void GS_zoom_setup(int *, int *, int *, int *, int *, int *)
Get zoom setup.
Definition: gs2.c:2767
void GVL_slice_get_drawres(int, int *, int *, int *)
Get draw resolution of slice.
Definition: gvl2.c:1082
void gsd_endtmesh(void)
ADD.
Definition: gsd_prim.c:307
int GS_get_cat_at_xy(int, int, char *, float, float)
Get surface category on given position.
Definition: gs2.c:1175
int GP_new_site(void)
Create new point set.
Definition: gp2.c:64
geosite * gp_get_new_site(void)
Create new geosite instance and add it to list.
Definition: gp.c:119
Viewnode * gk_make_linear_framesfromkeys(Keylist *, int, int, int)
Generate viewnode from keyframe list (linear interpolation)
Definition: gk.c:611
void gsd_swaptmesh(void)
ADD.
Definition: gsd_prim.c:357
int gvl_get_zextents(geovol *, float *, float *)
Get volume z-extent value.
Definition: gvl.c:388
void GS_draw_all_list(void)
Draw all glLists.
Definition: gs2.c:872
int gs_get_zextents(geosurf *, float *, float *, float *)
Get z-extent values.
Definition: gs.c:997
void GS_set_fov(int)
Set field of view.
Definition: gs2.c:2838
int gsd_getfc(void)
ADD.
Definition: gsd_surf.c:1217
void gsd_pushmatrix(void)
Push the current matrix stack.
Definition: gsd_prim.c:511
void * GP_Get_ClientData(int)
Get client data.
Definition: gp2.c:653
void gsd_real2surf(geosurf *, Point3)
Convert real to surface coordinates.
Definition: gsd_views.c:481
void print_frto(float(*)[4])
Debugging, print 'from/to' model coordinates to stderr.
Definition: gs.c:339
int GS_get_norm_at_xy(int, float, float, float *)
Get surface normal at x,y (real coordinates)
Definition: gs2.c:1237
int GVL_isosurf_set_att_const(int, int, int, float)
Set constant isosurface attribute.
Definition: gvl2.c:884
void GK_set_numsteps(int)
Set the number of frames to be interpolated from keyframes.
Definition: gk2.c:299
void primitive_cylinder(unsigned long, int)
Primitives only called after transforms.
Definition: gsd_objs.c:1322
void GS_get_viewdir(float *)
Get viewdir.
Definition: gs2.c:2804
void gsd_backface(int)
ADD.
Definition: gsd_prim.c:254
int gsds_newh(const char *)
Get handle to gsds.
Definition: gsds.c:219
int GS_write_tif(const char *)
Write data to tif file.
Definition: gsd_img_tif.c:53
void gsd_box(float *, int, float *)
Draw box.
Definition: gsd_objs.c:1411
void gsd_line_onsurf(geosurf *, float *, float *)
Line on surface, fix z-values.
Definition: gsd_objs.c:167
geosurf * gs_get_prev_surface(int)
Get previous geosurf struct.
Definition: gs.c:87
int * GS_get_surf_list(int *)
Get surface list.
Definition: gs2.c:1530
char * gvl_file_get_name(int)
Get file name for given handle.
Definition: gvl_file.c:165
int GV_Set_ClientData(int, void *)
Set client data.
Definition: gv2.c:568
void GK_print_keys(const char *)
Print keyframe info.
Definition: gk2.c:209
void gsd_plus(float *, int, float)
ADD.
Definition: gsd_objs.c:130
void GS_set_infocus(void)
Set focus.
Definition: gs2.c:2962
int GS_get_zextents(int, float *, float *, float *)
Get z-extent for a single surface.
Definition: gs2.c:2662
void print_bm(struct BM *)
Print bitmap to stderr.
Definition: gs_bm.c:361
void GS_set_draw(int)
Sets which buffer to draw to.
Definition: gs2.c:2459
void GS_draw_cplane(int)
Draw cplace.
Definition: gs2.c:3144
void gsd_scale(float, float, float)
Multiply the current matrix by a general scaling matrix.
Definition: gsd_prim.c:525
int gvl_isosurf_set_att_map(geovol_isosurf *, int, const char *)
Set attribute map.
Definition: gvl.c:690
int GS_get_light_reset(void)
Definition: gs2.c:257
unsigned int GS_default_draw_color(void)
Get default draw color.
Definition: gs2.c:2436
void gsd_draw_cplane(int)
Draw cplane.
Definition: gsd_cplane.c:296
int GV_new_vector(void)
Register new vector set.
Definition: gv2.c:61
int GP_surf_is_selected(int, int)
Check if surface is selected.
Definition: gp2.c:552
int GV_delete_vector(int)
Delete vector set from list.
Definition: gv2.c:129
int gsds_free_datah(int)
Free allocated dataset.
Definition: gsds.c:329
int GVL_isosurf_move_up(int, int)
Move up isosurface in list.
Definition: gvl2.c:737
void GK_update_tension(void)
Update tension.
Definition: gk2.c:195
int get_horz_intersects(geosurf *, float *, float *, float *)
Get horizontal intersects.
Definition: gsdrape.c:971
void gsd_getwindow(int *, int *, double *, double *)
Get viewport.
Definition: gsd_prim.c:554
void GS_get_from(float *)
Get viewpoint 'from' position.
Definition: gs2.c:2721
void gvd_draw_lineonsurf(geosurf *, float *, float *, int)
Draw line on surface.
Definition: gvd.c:299
int gvl_slice_init(geovol_slice *)
Initialize geovol_slice struct.
Definition: gvl.c:756
void GK_show_site(int)
Show point sets.
Definition: gk2.c:555
int gvld_vol(geovol *)
Draw volume set (slices and isosurfaces)
Definition: gvld.c:38
int gs_getall_surfaces(geosurf **)
Get array of geosurf structs.
Definition: gs.c:109
int gvl_file_get_data_type(geovol_file *)
Get data type for given handle.
Definition: gvl_file.c:202
void gsd_do_scale(int)
Set current scale.
Definition: gsd_views.c:355
struct BM * gsbm_make_mask(typbuff *, float, int, int)
Do combining of bitmaps, make bitmaps from other data w/maskval.
Definition: gs_bm.c:35
int GV_surf_is_selected(int, int)
Check if surface is selected.
Definition: gv2.c:459
int get_txtdescender(void)
Get text descender.
Definition: gsd_fonts.c:71
int Gvl_get_color_for_value(void *, float *)
Get color for value.
Definition: gvl3.c:82
void gsd_update_cpnorm(int)
ADD.
Definition: gsd_cplane.c:188
void gsdiff_set_SDref(geosurf *)
ADD.
Definition: gsdiff.c:64
void GS_alldraw_wire(void)
Draw all wires.
Definition: gs2.c:1917
int GS_dv3norm(double *)
Changes v1 so that it is a unit vector.
Definition: gs_util.c:295
void gsd_def_clipplane(int, double *)
Define clip plane.
Definition: gsd_prim.c:1014
int GS_v2norm(float *)
Change v1 so that it is a unit vector (3D)
Definition: gs_util.c:271
void GS_set_rotation_matrix(double *)
Set rotation matrix.
Definition: gs2.c:2936
int gvl_getall_vols(geovol **)
Get all volumes.
Definition: gvl.c:86
int gvl_file_set_mode(geovol_file *, IFLAG)
Set read mode.
Definition: gvl_file.c:1114
int GS_set_SDscale(float)
Set ?
Definition: gs2.c:1062
void GK_showtension_stop(void)
Show tension stop ?
Definition: gk2.c:187
int GS_get_wire_color(int, int *)
Get wire color.
Definition: gs2.c:2036
geovol * gvl_get_vol(int)
Get volume set structure.
Definition: gvl.c:40
void GS_init_rotation(void)
Reset scene rotation.
Definition: gs2.c:2904
void gsd_x(geosurf *, float *, int, float)
Draw X symbol.
Definition: gsd_objs.c:256
int gvld_slices(geovol *)
Draw slices.
Definition: gvld.c:430
void GS_v3sub(float *, float *)
Subtract vectors.
Definition: gs_util.c:212
void gsd_bgnqstrip(void)
ADD.
Definition: gsd_prim.c:277
int GV_get_trans(int, float *, float *, float *)
Get trans ?
Definition: gv2.c:366
void gv_update_drapesurfs(void)
Update drape surfaces.
Definition: gv.c:157
geovol_isosurf * gvl_isosurf_get_isosurf(int, int)
Get isosurface of given volume set.
Definition: gvl.c:580
typbuff * gsds_get_typbuff(int, IFLAG)
Get data buffer.
Definition: gsds.c:281
void GK_showtension_start(void)
Definition: gk2.c:175
void do_label_display(GLuint, float *, const char *)
Display label.
Definition: gsd_fonts.c:97
void GS_setlight_color(int, float, float, float)
Set light color.
Definition: gs2.c:356
int Gvl_load_colors_data(void **, const char *)
Load color table.
Definition: gvl3.c:34
void GVL_set_draw_wire(int, int)
Set drawing wire box.
Definition: gvl2.c:382
void gsd_draw_cplane_fence(geosurf *, geosurf *, int)
int gvl_slices_calc(geovol *)
Calculate slices for given volume set.
Definition: gvl_calc.c:1034
void gsd_draw_box(float *, unsigned long, float)
Draw box.
Definition: gsd_objs.c:483
int P3toPlane(Point3, Point3, Point3, float *)
Define plane.
Definition: gsdrape.c:1327
void Gs_pack_colors(const char *, int *, int, int)
Pack color table.
Definition: gs3.c:632
void GS_v3mag(float *, float *)
Magnitude of vector.
Definition: gs_util.c:418
void gsd_cplane_off(int)
Turn off clip plane.
Definition: gsd_cplane.c:126
void gsd_model2surf(geosurf *, Point3)
Convert model to surface coordinates.
Definition: gsd_views.c:414
int GP_get_zmode(int, int *)
Get z-mode.
Definition: gp2.c:414
int GS_get_selected_point_on_surface(int, int, int *, float *, float *, float *)
Get selected point of surface.
Definition: gs2.c:3051
int * GVL_get_vol_list(int *)
Get list of loaded volume sets.
Definition: gvl2.c:181
double GS_get_aspect(void)
Get aspect value.
Definition: gs2.c:3447
int XY_intersect_plane(float *, float *)
Check for intersection (point and plane)
Definition: gsdrape.c:1304
int GS_load_att_map(int, const char *, int)
Load raster map as attribute.
Definition: gs2.c:1598
int gv_num_points(geovect *)
Get number of points in vector.
Definition: gv_quick.c:216
int gs_get_yrange(float *, float *)
Get y-range.
Definition: gs.c:1162
int * GV_get_vect_list(int *)
Get list of vector sets.
Definition: gv2.c:99
int gvl_isosurf_set_att_changed(geovol_isosurf *, int)
Set attribute changed.
Definition: gvl.c:723
int GP_unset_style_thematic(int)
Make style for thematic mapping inactive.
Definition: gp2.c:352
int GV_unset_style_thematic(int)
Make style for thematic mapping inactive.
Definition: gv2.c:320
void gsd_shademodel(int)
Set shaded model.
Definition: gsd_prim.c:419
int GS_write_ppm(const char *)
Save current GL screen to ppm file.
Definition: gsd_img_ppm.c:41
int GVL_slice_get_drawmode(int, int *)
Get slice draw mode.
Definition: gvl2.c:1145
int gsd_wire_surf_const(geosurf *, float)
ADD.
Definition: gsd_wire.c:276
int GVL_isosurf_num_isosurfs(int)
Get number of available isosurfaces.
Definition: gvl2.c:1002
int GS_get_zrange(float *, float *, int)
Get z-extent for all loaded surfaces.
Definition: gs2.c:2685
int gvl_file_get_file_type(geovol_file *)
Get file type for given handle.
Definition: gvl_file.c:190
int GS_new_light(void)
Add new model light.
Definition: gs2.c:268
int gs_masked(typbuff *, int, int, int)
Should only be called when setting up the current mask (gs_bm.c)
Definition: gs.c:932
int gvl_isosurf_init(geovol_isosurf *)
Initialize geovol_isosurf struct.
Definition: gvl.c:520
int GK_set_interpmode(int)
Set interpolation mode.
Definition: gk2.c:140
int RayCvxPolyhedronInt(Point3, Point3, double, Point4 *, int, double *, int *)
Ray-Convex Polyhedron Intersection Test.
Definition: gs_query.c:384
int Gs_save_3dview(const char *, geoview *, geodisplay *, struct Cell_head *, geosurf *)
int order_intersects(geosurf *, Point3, Point3, int, int, int)
ADD.
Definition: gsdrape.c:724
void gv_set_drapesurfs(geovect *, int *, int)
Set drape surfaces for vector set.
Definition: gv.c:364
int gvld_wire_isosurf(geovol *)
int GS_draw_legend(const char *, GLuint, int, int *, float *, int *)
Draw legend.
Definition: gs2.c:841
int gvl_get_yrange(float *, float *)
Get volume y-range value.
Definition: gvl.c:441
void gsd_fringe_vert_poly(float, geosurf *, int, int)
Draw fringe outline in y direction.
Definition: gsd_fringe.c:322
void * GVL_get_window(void)
Get window.
Definition: gvl2.c:98
void GS_delete_list(GLuint)
Delete pre-defined list.
Definition: gs2.c:884
double lin_interp(float, float, float)
Linear interpolation.
Definition: gk.c:545
int gpd_3dsite(geosite *, float, float, int)
int gvd_vect(geovect *, geosurf *, int)
Draw vector set.
Definition: gvd.c:79
int GVL_load_vol(int, const char *)
Load 3d raster map to volume set.
Definition: gvl2.c:256
int gsd_get_cplanes(Point4 *)
Get cplaces.
Definition: gsd_cplane.c:162
float GS_P2distance(float *, float *)
Calculate distance in plane.
Definition: gs_util.c:160
int gvl_isosurf_set_att_const(geovol_isosurf *, int, float)
Set isosurface attribute constant.
Definition: gvl.c:665
int gs_clip_segment(geosurf *, float *, float *, float *)
Clip segment.
Definition: gvd.c:40
int GP_load_site(int, const char *)
Load point set from file.
Definition: gp2.c:173
int GS_delete_surface(int)
Delete surface.
Definition: gs2.c:1557
void gsbm_zero_mask(struct BM *)
Zero mask.
Definition: gs_bm.c:77
int gs_get_zrange(float *, float *)
Get z-range.
Definition: gs.c:1086
void Gs_pack_colors_float(const char *, float *, int *, int, int)
Pack color table (floating-point map)
Definition: gs3.c:700
int GP_select_surf(int, int)
Select surface for given point set.
Definition: gp2.c:484
int GVL_slice_del(int, int)
Delete slice.
Definition: gvl2.c:1230
void GS_set_cancel(int)
Set cancel.
Definition: gsx.c:40
int gs_los_intersect(int, float **, float *)
Crude method of intersecting line of sight with closest part of surface.
Definition: gs_query.c:192
void gsd_sphere(float *, float)
ADD.
Definition: gsd_prim.c:207
void GV_alldraw_fastvect(void)
Draw all loaded vector sets (fast mode)
Definition: gv2.c:548
double Gs_distance(double *, double *)
Calculates distance in METERS between two points in current projection (2D)
Definition: gs3.c:79
void gvl_write_char(int, unsigned char **, unsigned char)
ADD.
Definition: gvl_calc.c:735
void gsd_remove_all(void)
Remove all labels from display list.
Definition: gsd_label.c:107
int Gp_set_color(const char *, geopoint *)
int GS_get_longdim(float *)
Get largest dimension.
Definition: gs2.c:140
int GS_setall_drawmode(int)
Set all draw-modes.
Definition: gs2.c:2059
void GS_set_att_defaults(float *, float *)
Set default attributes for map objects.
Definition: gs2.c:172
int GVL_isosurf_set_drawmode(int, int)
Set isosurface draw mode.
Definition: gvl2.c:636
void gsd_calllists(int)
void gsd_circ(float, float, float)
ADD.
Definition: gsd_prim.c:167
int get_vert_intersects(geosurf *, float *, float *, float *)
ADD.
Definition: gsdrape.c:877
void GK_show_vol(int)
Show volumes.
Definition: gk2.c:582
void GVL_draw_vol(int)
Draw volume set.
Definition: gvl2.c:402
geoline * Gv_load_vect(const char *, int *)
Load vector map to memory.
Definition: gv3.c:47
int gsd_wire_surf_func(geosurf *, int(*)(void))
int GVL_isosurf_set_att_map(int, int, int, const char *)
Set isosurface map attribute.
Definition: gvl2.c:922
void GS_getlight_color(int, float *, float *, float *)
Get light color.
Definition: gs2.c:378
int gs_get_att_src(geosurf *, int)
Get attribute source.
Definition: gs.c:656
void GS_get_from_real(float *)
Get viewpoint 'from' real coordinates.
Definition: gs2.c:2735
int gsds_findh(const char *, IFLAG *, IFLAG *, int)
Get handle to gsds.
Definition: gsds.c:188
geosite * gp_get_last_site(void)
Get last point set.
Definition: gp.c:95
int GVL_isosurf_set_maskmode(int, int, int)
Set mask attribute mode.
Definition: gvl2.c:1029
void dir_to_slope_aspect(float *, float *, float *, int)
ADD.
Definition: gsd_objs.c:732
void gsd_bgnpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
Definition: gsd_prim.c:372
void gvl_file_get_min_max(geovol_file *, double *, double *)
Get minimum and maximum value in volume file.
Definition: gvl_file.c:214
int GS_draw_nline_onsurf(int, float, float, float, float, float *, int)
Draw multiline on surface.
Definition: gs2.c:713
int Gs_update_attrange(geosurf *, int)
Update no_zero ranges for attribute (actually no_null now)
Definition: gs3.c:1078
int GS_load_3dview(const char *, int)
Load 3d view.
Definition: gs2.c:3325
int Point_on_plane(Point3, Point3, Point3, Point3)
Check if point is on plane.
Definition: gsdrape.c:1282
void GS_set_focus(float *)
Set focus.
Definition: gs2.c:2517
void gs_get_databounds_planes(Point4 *)
Get data bounds for plane.
Definition: gs_query.c:469
size_t gsds_alloc_typbuff(int, int *, int, int)
Allocates correct buffer according to type, keeps track of total mem.
Definition: gsds.c:480
void GS_v3add(float *, float *)
Sum vectors.
Definition: gs_util.c:195
void GVL_draw_wire(int)
Draw volume in wire mode.
Definition: gvl2.c:423
void gsd_3dcursor(float *)
Draw 3d cursor.
Definition: gsd_objs.c:688
int GV_load_vector(int, const char *)
Load vector set.
Definition: gv2.c:172
void gsd_surf2real(geosurf *, Point3)
Convert surface to real coordinates.
Definition: gsd_views.c:465
int gsd_wall(float *, float *, float *)
ADD.
Definition: gsd_surf.c:1710
int GS_set_drawres(int, int, int, int, int)
Set draw resolution for surface.
Definition: gs2.c:2219
int GVL_slice_set_drawmode(int, int)
Set slice draw mode.
Definition: gvl2.c:1169
int gs_calc_normals(geosurf *)
Calculate normals.
Definition: gs_norms.c:124
int GS_v3normalize(float *, float *)
Change v2 so that v1v2 is a unit vector.
Definition: gs_util.c:321
int Gs_loadmap_as_short(struct Cell_head *, const char *, short *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:307
void * GVL_Get_ClientData(int)
Get client data.
Definition: gvl2.c:498
int GS_save_3dview(const char *, int)
Save 3d view.
Definition: gs2.c:3312
int GS_set_att_const(int, int, float)
Set attribute constant.
Definition: gs2.c:1403
void GS_get_trans(int, float *, float *, float *)
Get translation values (surface position)
Definition: gs2.c:2413
int gs_get_yextents(geosurf *, float *, float *)
Get y-extent values.
Definition: gs.c:1032
int segs_intersect(float, float, float, float, float, float, float, float, float *, float *)
Line intersect.
Definition: gsdrape.c:1202
void gs_delete_surf(int)
Remove geosurf struct from list.
Definition: gs.c:463
int GS_get_distance_alongsurf(int, float, float, float, float, float *, int)
Measure distance "as the ball rolls" between two points on surface.
Definition: gs2.c:3281
int GS_get_fov(void)
Get field of view.
Definition: gs2.c:2850
int GS_get_val_at_xy(int, int, char *, float, float)
Get RGB color at given point.
Definition: gs2.c:1301
void GS_draw_surf(int)
Draw surface.
Definition: gs2.c:1862
int GS_transp_is_set(void)
Check if transparency is set.
Definition: gs2.c:489
int calc_norm(geosurf *, int, int, unsigned int)
Calculate normals.
Definition: gs_norms.c:206
void GS_unset_cplane(int)
Unset clip place (turn off)
Definition: gs2.c:3223
int gvl_get_yextents(geovol *, float *, float *)
Get volume y-extent value.
Definition: gvl.c:371
int GVL_slice_set_pos(int, int, float, float, float, float, float, float, int)
Get slice position.
Definition: gvl2.c:1423
void gsd_bgntstrip(void)
ADD.
Definition: gsd_prim.c:317
geovol * gvl_get_prev_vol(int)
Get previous volume.
Definition: gvl.c:64
void GS_libinit(void)
Initialize OGSF library.
Definition: gs2.c:98
void P_rot(float, char)
Rotate matrix.
Definition: trans.c:208
int gsd_coarse_surf_map(geosurf *)
Draw coarse surface.
Definition: gsd_wire.c:572
void gsd_deletelist(GLuint, int)
void gsd_bgnlist(int, int)
ADD.
Definition: gsd_prim.c:1125
void gs_err(const char *)
Definition: gs.c:35
void init_vars(geosurf *)
Init variables.
Definition: gs_norms.c:73
int gp_set_defaults(geosite *)
Set default value for geosite struct.
Definition: gp.c:189
void GS_set_Narrow(int *, int, float *)
Set decoration, north arrow ??
Definition: gs2.c:564
int gsds_set_changed(int, IFLAG)
ADD.
Definition: gsds.c:633
int GVL_isosurf_set_flags(int, int, int)
Set isosurface flags.
Definition: gvl2.c:977
int GVL_get_volname(int, char *)
Get volume set name.
Definition: gvl2.c:286
int gp_init_site(geosite *)
Initialize geosite struct.
Definition: gp.c:222
void gsd_init_lightmodel(void)
Initialize model light.
Definition: gsd_prim.c:719
int GS_get_fencecolor(void)
Get fence color.
Definition: gs2.c:3264
int gsd_getshademodel(void)
Get shaded model.
Definition: gsd_prim.c:438
void gsd_drawsphere(float *, unsigned long, float)
Draw sphere.
Definition: gsd_objs.c:542
int gs_get_datacenter(float *)
Get data center point.
Definition: gs.c:1230
void print_site_fields(geosite *)
void gsd_switchlight(int, int)
Switch light on/off.
Definition: gsd_prim.c:877
int GP_attmode_color(int, const char *)
void void_func(void)
Definition: gs2.c:86
void GS_set_twist(int)
Set viewpoint twist value.
Definition: gs2.c:2872
int GP_set_style_thematic(int, int, const char *, const char *, const char *, const char *, struct Colors *)
Set point set style for thematic mapping.
Definition: gp2.c:309
int gsd_wire_arrows(geosurf *)
ADD.
Definition: gsd_wire.c:457
void GS_setlight_position(int, float, float, float, int)
Set light position.
Definition: gs2.c:309
int GVL_isosurf_add(int)
Add isosurface.
Definition: gvl2.c:661
int GP_set_style(int, int, int, float, int)
Set point style.
Definition: gp2.c:274
void GS_getlight_position(int, float *, float *, float *, int *)
Get light position.
Definition: gs2.c:334
int seg_intersect_vregion(geosurf *, float *, float *)
Check if segment intersect vector region.
Definition: gsdrape.c:232
int GVL_isosurf_get_flags(int, int, int *)
Get isosurface flags.
Definition: gvl2.c:951
int gsbm_and_masks(struct BM *, struct BM *)
Mask bitmap (mask type ADD)
Definition: gs_bm.c:201
int Gs_loadmap_as_char(struct Cell_head *, const char *, unsigned char *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:412
int gsd_checkpoint(float[4], int[4], int[4], double[16], double[16])
ADD.
Definition: gsd_prim.c:585
int gsds_free_data_buff(int, int)
Free allocated buffer.
Definition: gsds.c:369
void GK_show_path(int)
Draw the current path.
Definition: gk2.c:503
size_t free_data_buffs(dataset *, int)
Free data buffer.
Definition: gsds.c:393
void gsd_checkwindow(int *, int *, double *, double *)
void gsdiff_set_SDscale(float)
Set scale.
Definition: gsdiff.c:42
int gsd_makelist(void)
ADD.
Definition: gsd_prim.c:1094
int gvl_isosurf_calc(geovol *)
Fill data structure with computed isosurfaces polygons.
Definition: gvl_calc.c:585
void gsd_calllist(int)
ADD.
Definition: gsd_prim.c:1173
void GS_set_wire_color(int, int)
Set wire color.
Definition: gs2.c:2012
int gv_num_vects(void)
Get number of loaded vector sets.
Definition: gv.c:77
int V3Cross(Point3, Point3, Point3)
Get cross product.
Definition: gsdrape.c:1356
int GP_Set_ClientData(int, void *)
Set client data.
Definition: gp2.c:631
int GP_get_sitename(int, char **)
Get point set filename.
Definition: gp2.c:209
void GS_get_dims(int, int *, int *)
Get dimension of surface.
Definition: gs2.c:2277
void gsd_def_cplane(int, float *, float *)
Define cplace.
Definition: gsd_cplane.c:55
int GVL_slice_set_transp(int, int, int)
Set slice trans ?
Definition: gvl2.c:1509
int GVL_get_region(float *, float *, float *, float *, float *, float *)
Get region extent settings.
Definition: gvl2.c:79
void gsd_swapbuffers(void)
Swap buffers.
Definition: gsd_prim.c:482
void GS_v3eq(float *, float *)
Copy vector values.
Definition: gs_util.c:178
int Gs_load_3dview(const char *, geoview *, geodisplay *, struct Cell_head *, const geosurf *)
int gvl_isosurf_set_att_src(geovol_isosurf *, int, int)
Set attribute source.
Definition: gvl.c:632
size_t gs_malloc_att_buff(geosurf *, int, int)
Allocate attribute buffer.
Definition: gs.c:717
int gsd_get_txtwidth(const char *, int)
Get text width.
Definition: gsd_fonts.c:36
int gv_free_vect(geovect *)
Free allocated memory for geovect struct.
Definition: gv.c:265
int in_vregion(geosurf *, float *)
ADD.
Definition: gsdrape.c:691
int GV_num_vects(void)
Get number of available vector sets.
Definition: gv2.c:84
void GS_set_viewdir(float *)
Set viewdir.
Definition: gs2.c:2818
int GS_draw_cplane_fence(int, int, int)
Draw cplace fence ?
Definition: gs2.c:3171
void gsd_endqstrip(void)
ADD.
Definition: gsd_prim.c:287
int GS_setall_drawres(int, int, int, int)
Set all draw resolutions.
Definition: gs2.c:2196
void GS_get_zrange_nz(float *, float *)
Get Z extents for all loaded surfaces.
Definition: gs2.c:2355
int Gs_loadmap_as_bitmap(struct Cell_head *, const char *, struct BM *)
Load raster map as integer map.
Definition: gs3.c:512
int gsd_ortho_wall(int, int, geosurf **, Point3 **, float *)
ADD.
Definition: gsd_surf.c:1323
int gsd_get_txtheight(int size)
Get text height.
Definition: gsd_fonts.c:53
void GS_unset_SDsurf(void)
Unset Scaled Difference surface.
Definition: gs2.c:1025
void gs_set_defaults(geosurf *, float *, float *)
Set default attribute values.
Definition: gs.c:441
char * gsds_get_name(int)
Get name.
Definition: gsds.c:303
int gsd_wire_surf_map(geosurf *)
ADD.
Definition: gsd_wire.c:99
int GS_set_SDsurf(int)
Set surface as Scaled Difference surface.
Definition: gs2.c:1041
geovect * gv_get_last_vect(void)
Get last loaded vector set.
Definition: gv.c:96
void sub_Vectmem(int)
Tracking memory.
Definition: gv3.c:298
int GVL_isosurf_unset_att(int, int, int)
Unset isosurface attributes.
Definition: gvl2.c:849
void GS_draw_line_onsurf(int, float, float, float, float)
Draw line on surface.
Definition: gs2.c:675
void gv_delete_vect(int)
Delete vector set (unload)
Definition: gv.c:242
int gs_setall_norm_needupdate(void)
Set for geosurf need-to-update mark.
Definition: gs.c:1287
void GS_moveto(float *)
Move viewpoint.
Definition: gs2.c:2613
int gvl_isosurf_freemem(geovol_isosurf *)
Free geovol_isosurf struct.
Definition: gvl.c:553
int GVL_slice_move_down(int, int)
Move down slice.
Definition: gvl2.c:1303
int GS_num_surfs(void)
Get number of surfaces.
Definition: gs2.c:1515
void GS_unset_rotation(void)
Stop scene rotation.
Definition: gs2.c:2896
int GS_Set_ClientData(int, void *)
Set client data.
Definition: gs2.c:1476
int gs_mapcolor(typbuff *, gsurf_att *, int)
Call this one when you already know att_src is MAP_ATT.
Definition: gs.c:968
int GVL_num_vols(void)
Get number of loaded volume sets.
Definition: gvl2.c:166
void gsd_cplane_setrot(int, float, float, float)
ADD.
Definition: gsd_cplane.c:211
int Gs_get_cat_label(const char *, int, int, char *)
Get categories/labels.
Definition: gs3.c:770
void GS_get_modelposition(float *, float *)
Retrieves coordinates for lighting model position, at center of view.
Definition: gs2.c:528
void GV_alldraw_vect(void)
Draw all loaded vector sets.
Definition: gv2.c:506
int gs_num_datah_reused(int)
Get number of reused values.
Definition: gs.c:597
int gvld_wire_vol(geovol *)
Draw volume in wire mode (bounding box)
Definition: gvld.c:69
void gsd_get_cplanes_state(int *)
Get cplane state.
Definition: gsd_cplane.c:142
int gsd_nline_onsurf(geosurf *, float *, float *, float *, int)
Multiline on surface, fix z-values.
Definition: gsd_objs.c:213
void GK_set_tension(float)
Set value for tension when interpmode is KF_SPLINE.
Definition: gk2.c:155
void gsd_draw_gyro(float *, unsigned long, float)
Draw gyro.
Definition: gsd_objs.c:636
int GP_unselect_surf(int, int)
Unselect surface.
Definition: gp2.c:514
int gs_update_curmask(geosurf *)
Update current maps.
Definition: gs_bm.c:231
void show_colormode(void)
Print color mode to stderr.
Definition: gsd_prim.c:151
int GS_write_zoom(const char *, unsigned int, unsigned int)
Write zoom to file.
Definition: gsd_img_ppm.c:87
int GVL_isosurf_del(int, int)
Delete isosurface.
Definition: gvl2.c:698
int GVL_slice_get_pos(int, int, float *, float *, float *, float *, float *, float *, int *)
Get slice position.
Definition: gvl2.c:1363
geovect * gv_get_vect(int)
Get vector set.
Definition: gv.c:34
void GS_draw_lighting_model(void)
Draw lighting model.
Definition: gs2.c:934
int GVL_vol_exists(int)
Check if volume set exists.
Definition: gvl2.c:111
float gsdiff_get_SDscale(void)
Get scale.
Definition: gsdiff.c:54
int GVL_slice_move_up(int, int)
Move up slice.
Definition: gvl2.c:1269
int GV_select_surf(int, int)
Select surface identified by hs to have vector identified by hv draped over it.
Definition: gv2.c:393
void gsd_color_func(unsigned int)
Set current color.
Definition: gsd_prim.c:698
Point3 * gsdrape_get_segments(geosurf *, float *, float *, int *)
ADD.
Definition: gsdrape.c:349
int GVL_isosurf_set_drawres(int, int, int, int)
Set isosurface draw resolution.
Definition: gvl2.c:575
void gp_set_drapesurfs(geosite *, int *, int)
int gvld_slice(geovol *, int)
Draw slice.
Definition: gvld.c:487
void GS_set_cplane(int)
Set cplace.
Definition: gs2.c:3211
void GVL_set_trans(int, float, float, float)
Set trans ?
Definition: gvl2.c:333
int gvl_free_vol(geovol *)
Free geovol struct.
Definition: gvl.c:267
int gs_set_att_src(geosurf *, int, int)
Set attribute source.
Definition: gs.c:826
void print_realto(float *)
Debugging, print 'to' real coordinates to stderr.
Definition: gs.c:355
void gs_init(void)
Initialize library.
Definition: gs.c:48
void GS_get_to_real(float *)
Get 'to' real coordinates.
Definition: gs2.c:2748
int GP_get_style(int, int *, int *, float *, int *)
Get point set style.
Definition: gp2.c:232
void GVL_alldraw_vol(void)
Draw all volume sets.
Definition: gvl2.c:441
int GP_str_to_marker(const char *)
Determine point marker symbol for string.
Definition: gp2.c:684
void gp_free_sitemem(geosite *)
Free geosite (lower level)
Definition: gp.c:310
void gsd_backbuffer(void)
Draw to the back buffer.
Definition: gsd_prim.c:470
void gk_free_key(Keylist *)
Free keyframe list.
Definition: gk.c:271
int GS_unset_att(int, int)
Unset attribute.
Definition: gs2.c:1384
geosite * gp_get_site(int)
Get geosite struct.
Definition: gp.c:33
int GVL_slice_set_drawres(int, int, int, int)
Set slice draw resolution.
Definition: gvl2.c:1108
int gs_get_xrange(float *, float *)
Get x-range.
Definition: gs.c:1124
void gsd_diamond_lines(void)
Draw diamond lines.
Definition: gsd_objs.c:554
void GVL_alldraw_wire(void)
Draw all volume sets in wire mode.
Definition: gvl2.c:455
geovol * gvl_get_last_vol(void)
Get last volume set from the list.
Definition: gvl.c:124
geovol_slice * gvl_slice_get_slice(int, int)
Get geovol_slice struct.
Definition: gvl.c:803
int gvl_get_xextents(geovol *, float *, float *)
Get volume x-extent value.
Definition: gvl.c:354
float gv_line_length(geoline *)
Get line width.
Definition: gv_quick.c:173
void gsd_translate(float, float, float)
Multiply the current matrix by a translation matrix.
Definition: gsd_prim.c:539
void GS_lights_on(void)
Switch on all lights.
Definition: gs2.c:453
GLuint gsd_set_font(const char *)
int gvl_file_set_slices_param(geovol_file *, int, int)
Set parameters for slice reading.
Definition: gvl_file.c:1164
Viewnode * gk_make_framesfromkeys(Keylist *, int, int, int, float)
Generate viewnode from keyframes.
Definition: gk.c:301
geovect * gv_get_new_vect(void)
Allocate memory for new vector set.
Definition: gv.c:118
void GS_ready_draw(void)
Definition: gs2.c:2485
void GK_update_frames(void)
Recalculate path using the current number of frames requested.
Definition: gk2.c:245
geovol * gvl_get_new_vol(void)
Allocate new volume set and add it to the list.
Definition: gvl.c:148
void gsd_get_zup(geoview *, double *)
Get z-up vector (z-direction)
Definition: gsd_views.c:240
int gs_set_att_type(geosurf *, int, int)
Set attribute type.
Definition: gs.c:802
int gsd_getimage(unsigned char **, unsigned int *, unsigned int *)
Get image of current GL screen.
Definition: gsd_prim.c:902
void GVL_init_region(void)
Initialize 3D region.
Definition: gvl2.c:57
int gvld_wind3_box(geovol *)
Draw volume bounding box.
Definition: gvld.c:774
unsigned int GS_background_color(void)
Get background color.
Definition: gs2.c:2449
void GS_set_focus_center_map(int)
Set focus to map center.
Definition: gs2.c:2578
int gsd_wire_surf(geosurf *)
Draw surface wire.
Definition: gsd_wire.c:46
void P_scale(float, float, float)
ADD.
Definition: trans.c:65
void GS_alldraw_surf(void)
Draw all surfaces.
Definition: gs2.c:1934
int gln_num_points(geoline *)
Get number of line vertices.
Definition: gv_quick.c:197
void GV_set_trans(int, float, float, float)
Set trans ?
Definition: gv2.c:343
int GS_get_exag_guess(int, float *)
Get exag-value guess.
Definition: gs2.c:2304
int GV_get_style(int, int *, int *, int *, int *)
Get vector style.
Definition: gv2.c:257
void print_view_fields(geoview *)
Debugging, print geoview fields to stderr.
Definition: gs.c:419
void GS_set_light_reset(int)
Definition: gs2.c:250
void gsd_popmatrix(void)
Pop the current matrix stack.
Definition: gsd_prim.c:501
int gs_get_zrange0(float *, float *)
Get z-range.
Definition: gs.c:1052
void gsd_real2model(Point3)
Convert real to model coordinates.
Definition: gsd_views.c:373
geopoint * Gp_load_sites(const char *, int *, int *)
Load to points to memory.
Definition: gp3.c:40
int GS_get_nozero(int, int, int *)
Get no-zero ?
Definition: gs2.c:2162
int Gs_build_256lookup(const char *, int *)
Build color table (256)
Definition: gs3.c:571
int GV_set_style_thematic(int, int, const char *, const char *, struct Colors *)
Set vector set style for thematic mapping.
Definition: gv2.c:287
void GVL_libinit(void)
Library initialization for volumes.
Definition: gvl2.c:37
int get_txtxoffset(void)
Get text offset.
Definition: gsd_fonts.c:85
void gsd_flush(void)
Mostly for flushing drawing commands across a network.
Definition: gsd_prim.c:84
int gsbm_or_masks(struct BM *, struct BM *)
Mask bitmap (mask type OR)
Definition: gs_bm.c:167
void interp_first_last(geosurf *, float *, float *, Point3, Point3)
ADD.
Definition: gsdrape.c:438
void gsd_set_view(geoview *, geodisplay *)
Set view.
Definition: gsd_views.c:146
void GS_init_view(void)
Init viewpoint.
Definition: gs2.c:3343
int GVL_isosurf_move_down(int, int)
Move down isosurface in list.
Definition: gvl2.c:771
void GS_switchlight(int, int)
Switch on/off light.
Definition: gs2.c:470
int gvl_isosurf_get_att_src(geovol_isosurf *, int)
Get attribute source.
Definition: gvl.c:607
void GS_set_global_exag(float)
Set global z-exag value.
Definition: gs2.c:1975
int Gs_loadmap_as_float(struct Cell_head *, const char *, float *, struct BM *, int *)
Load raster map as floating point map.
Definition: gs3.c:109
void correct_twist(Keylist *)
Correct twist value.
Definition: gk.c:711
void gsd_fringe_vert_line(float, geosurf *, int, int)
Draw fringe outline in y direction.
Definition: gsd_fringe.c:407
int gvl_file_is_null_value(geovol_file *, void *)
Check for null value.
Definition: gvl_file.c:1085
int GK_add_key(float, unsigned long, int, float)
Add keyframe.
Definition: gk2.c:431
void gsd_viewport(int, int, int, int)
Set the viewport.
Definition: gsd_prim.c:1077
void GS_v3cross(float *, float *, float *)
Get the cross product v3 = v1 cross v2.
Definition: gs_util.c:403
void gsd_zwritemask(unsigned long)
Write out z-mask.
Definition: gsd_prim.c:241
geovect * gv_get_prev_vect(int)
Get previous vector set.
Definition: gv.c:57
Point3 * gsdrape_get_allsegments(geosurf *, float *, float *, int *)
Get all segments.
Definition: gsdrape.c:399
void GS_set_cplane_rot(int, float, float, float)
Set cplace rotation.
Definition: gs2.c:3119
void GS_moveto_real(float *)
Move position to (real)
Definition: gs2.c:2643
void gsd_linewidth(short)
Set width of rasterized lines.
Definition: gsd_prim.c:267
int gsds_get_changed(int)
ADD.
Definition: gsds.c:613
void gvl_delete_vol(int)
Remove volume set from list.
Definition: gvl.c:244
void GS_get_to(float *)
Get 'to' model coordinates.
Definition: gs2.c:2790
int gvl_file_get_value(geovol_file *, int, int, int, void *)
Get value for volume file at x, y, z.
Definition: gvl_file.c:1048
int gv_init_vect(geovect *)
Initialize geovect struct.
Definition: gv.c:226
void gsd_endline(void)
End line.
Definition: gsd_prim.c:407
void GP_set_trans(int, float, float, float)
Set transformation params.
Definition: gp2.c:434
void GVL_set_focus_center_map(int)
Set focus on map center.
Definition: gvl2.c:516
int GP_attmode_none(int)
int gs_num_surfaces(void)
Get number of surfaces.
Definition: gs.c:128
void gsd_finish(void)
Finish.
Definition: gsd_prim.c:1059
int gsdrape_set_surface(geosurf *)
ADD.
Definition: gsdrape.c:198
int GS_update_curmask(int)
Update current mask.
Definition: gs2.c:989
geosurf * gs_get_last_surface(void)
Get last allocated geosurf struct from list.
Definition: gs.c:173
void gsd_set_clipplane(int, int)
Set clip plane.
Definition: gsd_prim.c:1041
int gsd_surf_const(geosurf *, float)
Using tmesh - not confident with qstrips portability.
Definition: gsd_surf.c:729
void GS_draw_wire(int)
Draw surface wire.
Definition: gs2.c:1897
unsigned char gvl_read_char(int, const unsigned char *)
Read char.
Definition: gvl_calc.c:762
void gsd_fringe_horiz_poly(float, geosurf *, int, int)
Draw fringe polygon in x direction.
Definition: gsd_fringe.c:141
int gs_distance_onsurf(geosurf *, float *, float *, float *, int)
Calculate distance on surface.
Definition: gs.c:1414
void print_vol_fields(geovol *)
Debug volume fields.
Definition: gvl.c:329
int gsd_north_arrow(float *, float, GLuint, unsigned long, unsigned long)
Draw North Arrow takes OpenGL coords and size.
Definition: gsd_objs.c:803
int gsds_get_type(int)
ADD.
Definition: gsds.c:651
int viewcell_tri_interp(geosurf *, typbuff *, Point3, int)
ADD.
Definition: gsdrape.c:503
void primitive_cone(unsigned long)
Primitives only called after transforms.
Definition: gsd_objs.c:1285
void * GV_Get_ClientData(int)
Get client data.
Definition: gv2.c:590
int gsd_scalebar_v2(float *, float, GLuint, unsigned long, unsigned long)
void gs_free_unshared_buffs(geosurf *)
Free unshared buffers of geosurf struct.
Definition: gs.c:557
void GS_set_exag(int, float)
Set Z exag for surface.
Definition: gs2.c:1951
void gsd_surf2model(Point3)
Convert surface to model coordinates.
Definition: gsd_views.c:442
int gs_init_surf(geosurf *, double, double, int, int, double, double)
Initialize allocated geosurf struct.
Definition: gs.c:234
void gsd_colormode(int)
Set color mode.
Definition: gsd_prim.c:98
geosurf * gsdiff_get_SDref(void)
ADD.
Definition: gsdiff.c:77
int GV_set_style(int, int, int, int, int)
Set vector style.
Definition: gv2.c:229
void GS_set_trans(int, float, float, float)
Set translation (surface position)
Definition: gs2.c:2389
void GS_clear(int)
Clear view.
Definition: gs2.c:3414
int P_pushmatrix(void)
Push current transformation matrix onto matrix stack.
Definition: trans.c:167
void GS_get_scale(float *, float *, float *, int)
Get axis scale.
Definition: gs2.c:3236
void gvl_free_volmem(geovol *)
Free geovol struct memory.
Definition: gvl.c:316
void gsd_bgntfan(void)
ADD.
Definition: gsd_prim.c:337
void P_transform(int, float(*)[4], float(*)[4])
Transform array of vectors using current T matrix.
Definition: trans.c:107
void gsd_set_material(int, int, float, float, int)
Set material.
Definition: gsd_prim.c:803
int GS_get_SDscale(float *)
Get ?
Definition: gs2.c:1097
int gk_viable_keys_for_mask(unsigned long, Keylist *, Keylist **)
ADD.
Definition: gk.c:113
int GVL_isosurf_get_drawmode(int, int *)
Get isosurface draw mode.
Definition: gvl2.c:612
void GS_draw_lighting_model1(void)
Draw lighting model.
Definition: gs2.c:894
void GS_set_nofocus(void)
Unset focus.
Definition: gs2.c:2948
int gpd_2dsite(geosite *, geosurf *, int)
void gsd_disc(float, float, float, float)
ADD.
Definition: gsd_prim.c:187
void gsd_bgn_legend_viewport(GLint, GLint, GLint, GLint)
ADD.
Definition: gsd_legend.c:61
int gvld_wire_slices(geovol *)
Draw wire slices.
Definition: gvld.c:665
int GP_num_sites(void)
Get number of loaded point sets.
Definition: gp2.c:87
int GP_set_zmode(int, int)
Set z mode for point set.
Definition: gp2.c:380
int GS_coordpair_repeats(float *, float *, int)
ADD.
Definition: gs_util.c:440
int * GP_get_site_list(int *)
Get list of point sets.
Definition: gp2.c:102
typbuff * gs_get_att_typbuff(geosurf *, int, int)
Get attribute data buffer.
Definition: gs.c:681
void GV_draw_vect(int)
Draw vector set.
Definition: gv2.c:482
void gsd_display_fringe(geosurf *, unsigned long, float, int[4])
Display fridge.
Definition: gsd_fringe.c:51
void GS_set_nozero(int, int, int)
Set no-zero ?
Definition: gs2.c:2129
int GS_v3dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3.
Definition: gs_util.c:351
geovol_file * gvl_file_get_volfile(int)
Get geovol_file structure for given handle.
Definition: gvl_file.c:117
void GV_draw_fastvect(int)
Draw vector set (fast mode)
Definition: gv2.c:524
int _viewcell_tri_interp(geosurf *, Point3)
ADD.
Definition: gsdrape.c:463
int gvl_init_vol(geovol *, double, double, double, int, int, int, double, double, double)
Initialize geovol structure.
Definition: gvl.c:187
void gsd_end_legend_viewport(void)
ADD.
Definition: gsd_legend.c:91
int GS_get_att(int, int, int *, float *, char *)
Get attributes.
Definition: gs2.c:1132
void gsd_draw_asterisk(float *, unsigned long, float)
Draw asterisk.
Definition: gsd_objs.c:581
int Gvl_unload_colors_data(void *)
Unload color table.
Definition: gvl3.c:65
int GS_is_masked(int, float *)
Check if point is masked ?
Definition: gs2.c:1007
int gs_get_data_avg_zmax(float *)
Get average z-max value.
Definition: gs.c:1201
void gsd_3darrow(float *, unsigned long, float, float, float *, float)
Draw 3d north arrow.
Definition: gsd_objs.c:1057
void gsd_bgnline(void)
Begin line.
Definition: gsd_prim.c:397
void GK_clear_keys(void)
Deletes all keyframes, resets field masks.
Definition: gk2.c:312
int gsd_get_los(float(*)[3], short, short)
ADD.
Definition: gsd_views.c:40
int GVL_isosurf_get_maskmode(int, int, int *)
Get isosurface mask mode.
Definition: gvl2.c:1056
void gs_set_maskmode(int)
Set geosurf mask mode.
Definition: gs.c:899
int GK_move_key(float, float, float)
Move keyframe.
Definition: gk2.c:338
float gsdiff_do_SD(float, int)
ADD.
Definition: gsdiff.c:94
void GS_done_draw(void)
Draw done, swap buffers.
Definition: gs2.c:2498
void GS_get_rotation_matrix(double *)
Get rotation matrix.
Definition: gs2.c:2924
void GS_set_viewport(int, int, int, int)
Set viewport.
Definition: gs2.c:2976
int get_diag_intersects(geosurf *, float *, float *, float *)
int Gs_numtype(const char *, int *)
Get map data type.
Definition: gs3.c:225
int gsd_surf_map(geosurf *)
Draw surface using triangle fan instead of strip.
Definition: gsd_surf.c:2061
void GS_draw_flowline_at_xy(int, float, float)
Draw flow-line on surace.
Definition: gs2.c:751
int gv_set_defaults(geovect *)
Set attributes of vector set to default values.
Definition: gv.c:187
void gk_follow_frames(Viewnode *, int, Keylist *, int, int, int, unsigned long)
Checks key masks.
Definition: gk.c:141
void gsd_blend(int)
Specify pixel arithmetic.
Definition: gsd_prim.c:994
void gsd_model2real(Point3)
Convert model to real coordinates.
Definition: gsd_views.c:393
void GS_draw_fringe(int, unsigned long, float, int *)
Draw fringe around data (surface) at selected corners.
Definition: gs2.c:818
void gsd_rot(float, char)
ADD.
Definition: gsd_prim.c:605
int gs_set_att_const(geosurf *, int, float)
Set attribute constant value.
Definition: gs.c:871
void gsd_vert_func(float *)
ADD.
Definition: gsd_prim.c:686
int gvl_get_zrange(float *, float *)
Get volume z-range value.
Definition: gvl.c:478
void gsd_bgntmesh(void)
ADD.
Definition: gsd_prim.c:297
double get_2key_neighbors(int, float, float, int, Keylist **, Keylist **, Keylist **)
int gs_setlos_enterdata(Point3 *)
Definition: gs_query.c:529
void GK_show_list(int)
Show list.
Definition: gk2.c:609
int GS_check_cancel(void)
Check for cancel.
Definition: gsx.c:30
void GS_set_fencecolor(int)
Set fence color.
Definition: gs2.c:3252
int gp_free_site(geosite *)
Free allocated geosite struct.
Definition: gp.c:261
int gs_att_is_set(geosurf *, IFLAG)
Check if attribute is set.
Definition: gs.c:150
void gsd_check_focus(geoview *)
Check focus.
Definition: gsd_views.c:216
void gsd_litvert_func2(float *, unsigned long, float *)
int GV_get_vectname(int, char **)
Get vector map name.
Definition: gv2.c:204
int gvl_num_vols(void)
Get number of loaded volume sets.
Definition: gvl.c:105
int gvl_get_xrange(float *, float *)
Get volume x-range value.
Definition: gvl.c:404
void GP_alldraw_site(void)
Draw all available point sets.
Definition: gp2.c:611
int GVL_new_vol(void)
Create new volume set.
Definition: gvl2.c:136
int GP_site_exists(int)
Check if point set exists.
Definition: gp2.c:37
void GS_setlight_ambient(int, float, float, float)
Set light ambient.
Definition: gs2.c:400
int gp_num_sites(void)
Get number of loaded point sets.
Definition: gp.c:76
void GS_set_focus_real(float *)
Set real focus.
Definition: gs2.c:2535
void print_surf_fields(geosurf *)
Debugging, print geosurf fields to stderr.
Definition: gs.c:393
int GS_has_transparency(void)
Check for transparency.
Definition: gs2.c:3475
int GVL_get_trans(int, float *, float *, float *)
Get trans ?
Definition: gvl2.c:359
int GS_get_focus(float *)
Get focus.
Definition: gs2.c:2559
int gs_mask_defined(geosurf *)
Check if mask is defined.
Definition: gs.c:914
int gsbm_ornot_masks(struct BM *, struct BM *)
Mask bitmap (mask type ORNOT)
Definition: gs_bm.c:184
int GVL_slice_get_transp(int, int, int *)
Get slice trans ?
Definition: gvl2.c:1483
void gsd_cplane_settrans(int, float, float, float)
ADD.
Definition: gsd_cplane.c:229
void gp_delete_site(int)
Delete point set and remove from list.
Definition: gp.c:238
int gsd_norm_arrows(geosurf *)
ADD.
Definition: gsd_surf.c:1805
int gs_los_intersect1(int, float(*)[3], float *)
Crude method of intersecting line of sight with closest part of surface.
Definition: gs_query.c:52
void gsd_deflight(int, struct lightdefs *)
Define light.
Definition: gsd_prim.c:836
int gs_init_normbuff(geosurf *)
Init geosurf normbuff.
Definition: gs.c:308
void GS_lights_off(void)
Switch off all lights.
Definition: gs2.c:439
void GS_v2dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3 (2D)
Definition: gs_util.c:382
int gs_get_xextents(geosurf *, float *, float *)
Get x-extent values.
Definition: gs.c:1015
int GK_delete_key(float, float, int)
Definition: gk2.c:369
void GS_get_drawres(int, int *, int *, int *, int *)
Get draw resolution of surface.
Definition: gs2.c:2253
float GS_distance(float *, float *)
Calculate distance.
Definition: gs_util.c:141
void gsd_bothbuffers(void)
Draw to the front and back buffers.
Definition: gsd_prim.c:446
int gvl_file_free_datah(int)
Free geovol_file structure for given handle.
Definition: gvl_file.c:364
void gsd_frontbuffer(void)
Draw to the front buffer.
Definition: gsd_prim.c:458
int gsd_surf(geosurf *)
ADD.
Definition: gsd_surf.c:80
int gsd_arrow(float *, unsigned long, float, float *, float, geosurf *)
ADD.
Definition: gsd_objs.c:898
void gsd_endpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
Definition: gsd_prim.c:387
geosurf * gs_get_surf(int)
Get geosurf struct.
Definition: gs.c:63
int GS_get_maskmode(int, int *)
Get mask mode.
Definition: gs2.c:1452
void GP_draw_site(int)
Draw point set.
Definition: gp2.c:577
int Gv_load_vect_thematic(geovect *, struct Colors *)
Load styles for geolines based on thematic mapping.
Definition: gv3.c:319
int gs_free_surf(geosurf *)
Free geosurf struct.
Definition: gs.c:487
void gp_update_drapesurfs(void)
Update drape surfaces.
Definition: gp.c:157
double GS_geodistance(double *, double *, const char *)
Calculate distance between 2 coordinates.
Definition: gs_util.c:55
void gs_put_label(const char *, GLuint, int, unsigned long, int *)
Put label.
Definition: gsd_label.c:41
int gsd_arrow_onsurf(float *, float *, unsigned long, int, geosurf *)
Draw north arrow on surface.
Definition: gsd_objs.c:970
void gsd_litvert_func(float *, unsigned long, float *)
Set the current normal vector & specify vertex.
Definition: gsd_prim.c:657
void GS_getlight_ambient(int, float *, float *, float *)
Get light ambient.
Definition: gs2.c:422
int GS_set_maskmode(int, int)
Set mask mode.
Definition: gs2.c:1427
int GS_set_drawmode(int, int)
Set draw mode.
Definition: gs2.c:2081
void GS_set_cplane_trans(int, float, float, float)
Set cplace trans.
Definition: gs2.c:3132
int GVL_slice_add(int)
Add slice.
Definition: gvl2.c:1194
int gs_point_in_region(geosurf *, float *, float *)
Check if point is in region.
Definition: gpd.c:39
int Gs_loadmap_as_int(struct Cell_head *, const char *, int *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:173
int GS_get_drawmode(int, int *)
Get draw mode.
Definition: gs2.c:2107
void gsd_call_label(void)
Call display list and draw defined labels – called from gsd_prim (gsd_call_lists)
Definition: gsd_label.c:119
int GV_unselect_surf(int, int)
Unselect surface.
Definition: gv2.c:422
float GS_global_exag(void)
Get global z-exag value.
Definition: gs2.c:1997
int Gp_load_sites_thematic(geosite *, struct Colors *)
Load styles for geopoints based on thematic mapping.
Definition: gp3.c:171
void gsd_update_cplanes(void)
Update cplaces.
Definition: gsd_cplane.c:86
void gsd_cplane_on(int)
ADD.
Definition: gsd_cplane.c:104
void * GS_Get_ClientData(int)
Get client data.
Definition: gs2.c:1498
int gsd_scalebar(float *, float, GLuint, unsigned long, unsigned long)
Draw Scalebar takes OpenGL coords and size.
Definition: gsd_objs.c:1136
void GVL_isosurf_get_drawres(int, int *, int *, int *)
Get draw resolution for isosurface.
Definition: gvl2.c:549
float Point3[3]
Definition: ogsf.h:205
#define IFLAG
Definition: ogsf.h:71
float Point4[4]
Definition: ogsf.h:204
Definition: bitmap.h:17
2D/3D raster map header (used also for region)
Definition: gis.h:437
Definition: gis.h:683
Definition: ogsf.h:233
Definition: ogsf.h:312
Definition: ogsf.h:349
Definition: ogsf.h:362
Definition: ogsf.h:256
Definition: ogsf.h:328
Definition: ogsf.h:426
Definition: ogsf.h:467
Definition: ogsf.h:531
Definition: ogsf.h:208