GRASS GIS 7 Programmer's Manual  7.9.dev(2021)-e5379bbd7
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 *, struct Colors *);
218 int GV_unset_style_thematic(int);
219 void GV_set_trans(int, float, float, float);
220 int GV_get_trans(int, float *, float *, float *);
221 int GV_select_surf(int, int);
222 int GV_unselect_surf(int, int);
223 int GV_surf_is_selected(int, int);
224 void GV_draw_vect(int);
225 void GV_alldraw_vect(void);
226 void GV_alldraw_fastvect(void);
227 void GV_draw_fastvect(int);
228 int GV_Set_ClientData(int, void *);
229 void *GV_Get_ClientData(int);
230 
231 /* GVL2.c */
232 void GVL_libinit(void);
233 void GVL_init_region(void);
234 int GVL_get_region(float *, float *, float *, float *, float *, float *);
235 void *GVL_get_window();
236 int GVL_vol_exists(int);
237 int GVL_new_vol(void);
238 int GVL_num_vols(void);
239 int *GVL_get_vol_list(int *);
240 int GVL_delete_vol(int);
241 int GVL_load_vol(int, const char *);
242 int GVL_get_volname(int, char *);
243 void GVL_set_trans(int, float, float, float);
244 int GVL_get_trans(int, float *, float *, float *);
245 void GVL_set_draw_wire(int, int);
246 void GVL_draw_vol(int);
247 void GVL_draw_wire(int);
248 void GVL_alldraw_vol(void);
249 void GVL_alldraw_wire(void);
250 int GVL_Set_ClientData(int, void *);
251 void *GVL_Get_ClientData(int);
252 void GVL_get_dims(int, int *, int *, int *);
253 void GVL_set_focus_center_map(int);
254 
255 int GVL_isosurf_move_up(int, int);
256 int GVL_isosurf_move_down(int, int);
257 void GVL_isosurf_get_drawres(int, int *, int *, int *);
258 int GVL_isosurf_set_drawres(int, int, int, int);
259 int GVL_isosurf_get_drawmode(int, int *);
260 int GVL_isosurf_set_drawmode(int, int);
261 int GVL_isosurf_add(int);
262 int GVL_isosurf_del(int, int);
263 int GVL_isosurf_get_att(int, int, int, int *, float *, char *);
264 int GVL_isosurf_unset_att(int, int, int);
265 int GVL_isosurf_set_att_const(int, int, int, float);
266 int GVL_isosurf_set_att_map(int, int, int, const char *);
267 int GVL_isosurf_get_flags(int, int, int *);
268 int GVL_isosurf_set_flags(int, int, int);
269 int GVL_isosurf_num_isosurfs(int);
270 int GVL_isosurf_set_maskmode(int, int, int);
271 int GVL_isosurf_get_maskmode(int, int, int *);
272 
273 int GVL_slice_move_up(int, int);
274 int GVL_slice_move_down(int, int);
275 void GVL_slice_get_drawres(int, int *, int *, int *);
276 int GVL_slice_get_transp(int, int, int *);
277 int GVL_slice_set_transp(int, int, int);
278 int GVL_slice_set_drawres(int, int, int, int);
279 int GVL_slice_get_drawmode(int, int *);
280 int GVL_slice_set_drawmode(int, int);
281 int GVL_slice_add(int);
282 int GVL_slice_del(int, int);
283 int GVL_slice_num_slices(int);
284 int GVL_slice_get_pos(int, int, float *, float *, float *, float *, float *,
285  float *, int *);
286 int GVL_slice_set_pos(int, int, float, float, float, float, float, float,
287  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 *,
297  struct BM *, 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 *,
302  struct BM *, 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  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,
326  unsigned long);
327 void gk_free_key(Keylist *);
328 Viewnode *gk_make_framesfromkeys(Keylist *, int, int, int, float);
329 double get_key_neighbors(int, double, double, int, Keylist **, Keylist **,
330  Keylist **, Keylist **, Keylist **, double *,
331  double *);
332 double lin_interp(float, float, float);
333 double get_2key_neighbors(int, float, float, int, Keylist **, Keylist **,
334  Keylist **);
336 void correct_twist(Keylist *);
337 int gk_draw_path(Viewnode *, int, Keylist *);
338 
339 /* gp.c */
340 geosite *gp_get_site(int);
342 int gp_num_sites(void);
344 geosite *gp_get_new_site(void);
345 void gp_update_drapesurfs(void);
346 int gp_set_defaults(geosite *);
347 void print_site_fields(geosite *);
348 int gp_init_site(geosite *);
349 void gp_delete_site(int);
350 int gp_free_site(geosite *);
351 void gp_free_sitemem(geosite *);
352 void gp_set_drapesurfs(geosite *, int *, int);
353 
354 /* gpd.c */
355 int gs_point_in_region(geosurf *, float *, float *);
356 void gpd_obj(geosurf *, gvstyle *, Point3);
357 int gpd_2dsite(geosite *, geosurf *, int);
358 int gpd_3dsite(geosite *, float, float, int);
359 
360 /* gs.c */
361 void gs_err(const char *);
362 void gs_init(void);
363 geosurf *gs_get_surf(int);
366 int gs_num_surfaces(void);
367 int gs_att_is_set(geosurf *, IFLAG);
370 int gs_init_surf(geosurf *, double, double, int, int, double, double);
372 void print_frto(float (*)[4]);
373 void print_realto(float *);
374 void print_256lookup(int *);
375 void print_surf_fields(geosurf *);
376 void print_view_fields(geoview *);
377 void gs_set_defaults(geosurf *, float *, float *);
378 void gs_delete_surf(int);
379 int gs_free_surf(geosurf *);
381 int gs_num_datah_reused(int);
382 int gs_get_att_type(geosurf *, int);
383 int gs_get_att_src(geosurf *, int);
384 typbuff *gs_get_att_typbuff(geosurf *, int, int);
385 size_t gs_malloc_att_buff(geosurf *, int, int);
386 int gs_malloc_lookup(geosurf *, int);
387 int gs_set_att_type(geosurf *, int, int);
388 int gs_set_att_src(geosurf *, int, int);
389 int gs_set_att_const(geosurf *, int, float);
390 void gs_set_maskmode(int);
391 int gs_mask_defined(geosurf *);
392 int gs_masked(typbuff *, int, int, int);
393 int gs_mapcolor(typbuff *, gsurf_att *, int);
394 int gs_get_zextents(geosurf *, float *, float *, float *);
395 int gs_get_xextents(geosurf *, float *, float *);
396 int gs_get_yextents(geosurf *, float *, float *);
397 int gs_get_zrange0(float *, float *);
398 int gs_get_zrange(float *, float *);
399 int gs_get_xrange(float *, float *);
400 int gs_get_yrange(float *, float *);
401 int gs_get_data_avg_zmax(float *);
402 int gs_get_datacenter(float *);
403 int gs_setall_norm_needupdate(void);
404 int gs_point_is_masked(geosurf *, float *);
405 int gs_distance_onsurf(geosurf *, float *, float *, float *, int);
406 
407 /* gs_bm.c */
408 struct BM *gsbm_make_mask(typbuff *, float, int, int);
409 void gsbm_zero_mask(struct BM *);
410 int gsbm_or_masks(struct BM *, struct BM *);
411 int gsbm_ornot_masks(struct BM *, struct BM *);
412 int gsbm_and_masks(struct BM *, struct BM *);
413 int gsbm_xor_masks(struct BM *, struct BM *);
415 void print_bm(struct BM *);
416 
417 /* gs_norms.c */
418 void init_vars(geosurf *);
419 int gs_calc_normals(geosurf *);
420 int calc_norm(geosurf *, int, int, unsigned int);
421 
422 /* gs_query.c */
423 int gs_los_intersect1(int, float (*)[3], float *);
424 int gs_los_intersect(int, float **, float *);
425 int RayCvxPolyhedronInt(Point3, Point3, double, Point4 *, int, double *,
426  int *);
429 
430 /* gsd_cplane.c */
431 void gsd_def_cplane(int, float *, float *);
432 void gsd_update_cplanes(void);
433 void gsd_cplane_on(int);
434 void gsd_cplane_off(int);
435 void gsd_get_cplanes_state(int *);
436 int gsd_get_cplanes(Point4 *);
437 void gsd_update_cpnorm(int);
438 void gsd_cplane_setrot(int, float, float, float);
439 void gsd_cplane_settrans(int, float, float, float);
440 void gsd_draw_cplane_fence(geosurf *, geosurf *, int);
441 void gsd_draw_cplane(int);
442 
443 /* gsd_fonts.c */
444 GLuint gsd_set_font(const char *);
445 int gsd_get_txtwidth(const char *, int);
446 int gsd_get_txtheight(int size);
447 void do_label_display(GLuint, float *, const char *);
448 int get_txtdescender(void);
449 int get_txtxoffset(void);
450 
451 /* gsd_img_ppm.c */
452 int GS_write_ppm(const char *);
453 
454 /* gsd_img_tif.c */
455 int GS_write_tif(const char *);
456 
457 /* gsd_label.c */
458 void gs_put_label(const char *, GLuint, int, unsigned long, int *);
459 void gsd_remove_curr(void);
460 void gsd_remove_all(void);
461 void gsd_call_label(void);
462 
463 /* gsd_objs.c */
464 void gsd_box(float *, int, float *);
465 void gsd_plus(float *, int, float);
466 void gsd_line_onsurf(geosurf *, float *, float *);
467 int gsd_nline_onsurf(geosurf *, float *, float *, float *, int);
468 void gsd_x(geosurf *, float *, int, float);
469 void gsd_diamond(float *, unsigned long, float);
470 void gsd_diamond_lines(void);
471 void gsd_cube(float *, unsigned long, float);
472 void gsd_draw_box(float *, unsigned long, float);
473 void gsd_drawsphere(float *, unsigned long, float);
474 void gsd_draw_asterisk(float *, unsigned long, float);
475 void gsd_draw_gyro(float *, unsigned long, float);
476 void gsd_3dcursor(float *);
477 void dir_to_slope_aspect(float *, float *, float *, int);
478 int gsd_north_arrow(float *, float, GLuint, unsigned long, unsigned long);
479 int gsd_arrow(float *, unsigned long, float, float *, float, geosurf *);
480 int gsd_arrow_onsurf(float *, float *, unsigned long, int, geosurf *);
481 void gsd_3darrow(float *, unsigned long, float, float, float *, float);
482 int gsd_scalebar(float *, float, GLuint, unsigned long, unsigned long);
483 int gsd_scalebar_v2(float *, float, GLuint, unsigned long, unsigned long);
484 void primitive_cone(unsigned long);
485 void primitive_cylinder(unsigned long, int);
486 
487 /* gsd_prim.c */
488 void gsd_flush(void);
489 void gsd_colormode(int);
490 void show_colormode(void);
491 void gsd_circ(float, float, float);
492 void gsd_disc(float, float, float, float);
493 void gsd_sphere(float *, float);
494 void gsd_zwritemask(unsigned long);
495 void gsd_backface(int);
496 void gsd_linewidth(short);
497 void gsd_bgnqstrip(void);
498 void gsd_endqstrip(void);
499 void gsd_bgntmesh(void);
500 void gsd_endtmesh(void);
501 void gsd_bgntstrip(void);
502 void gsd_endtstrip(void);
503 void gsd_bgntfan(void);
504 void gsd_endtfan(void);
505 void gsd_swaptmesh(void);
506 void gsd_bgnpolygon(void);
507 void gsd_endpolygon(void);
508 void gsd_bgnline(void);
509 void gsd_endline(void);
510 void gsd_shademodel(int);
511 int gsd_getshademodel(void);
512 void gsd_bothbuffers(void);
513 void gsd_frontbuffer(void);
514 void gsd_backbuffer(void);
515 void gsd_swapbuffers(void);
516 void gsd_popmatrix(void);
517 void gsd_pushmatrix(void);
518 void gsd_scale(float, float, float);
519 void gsd_translate(float, float, float);
520 void gsd_rot(float, char);
521 void gsd_checkwindow(int *, int *, double *, double *);
522 int gsd_checkpoint(float *, int *, int *, double *, double *);
523 void gsd_litvert_func(float *, unsigned long, float *);
524 void gsd_litvert_func2(float *, unsigned long, float *);
525 void gsd_vert_func(float *);
526 void gsd_color_func(unsigned int);
527 void gsd_init_lightmodel(void);
528 void gsd_set_material(int, int, float, float, int);
529 void gsd_deflight(int, struct lightdefs *);
530 void gsd_switchlight(int, int);
531 int gsd_getimage(unsigned char **, unsigned int *, unsigned int *);
532 void gsd_blend(int);
533 void gsd_def_clipplane(int, double *);
534 void gsd_set_clipplane(int, int);
535 void gsd_finish(void);
536 void gsd_viewport(int, int, int, int);
537 int gsd_makelist(void);
538 void gsd_bgnlist(int, int);
539 void gsd_endlist(void);
540 void gsd_calllist(int);
541 void gsd_deletelist(GLuint, int);
542 void gsd_calllists(int);
543 void gsd_getwindow(int *, int *, double *, double *);
544 int gsd_writeView(unsigned char **, unsigned int, unsigned int);
545 
546 /* gsd_surf.c */
547 int gsd_surf(geosurf *);
548 int gsd_surf_map(geosurf *);
549 int gsd_surf_const(geosurf *, float);
550 int gsd_surf_func(geosurf *, int (*)());
551 int gsd_triangulated_wall(int, int, geosurf *, geosurf *, Point3 *, Point3 *,
552  float *);
553 void gsd_setfc(int);
554 int gsd_getfc(void);
555 int gsd_ortho_wall(int, int, geosurf **, Point3 **, float *);
556 int gsd_wall(float *, float *, float *);
557 int gsd_norm_arrows(geosurf *);
558 
559 /* gsd_views.c */
560 int gsd_get_los(float (*)[3], short, short);
561 void gsd_set_view(geoview *, geodisplay *);
562 void gsd_check_focus(geoview *);
563 void gsd_get_zup(geoview *, double *);
564 int gsd_zup_twist(geoview *);
565 void gsd_do_scale(int);
566 void gsd_real2model(Point3);
567 void gsd_model2real(Point3);
568 void gsd_model2surf(geosurf *, Point3);
569 void gsd_surf2model(Point3);
570 void gsd_surf2real(geosurf *, Point3);
571 void gsd_real2surf(geosurf *, Point3);
572 
573 /* gsd_wire.c */
574 int gsd_wire_surf(geosurf *);
577 int gsd_wire_surf_const(geosurf *, float);
578 int gsd_wire_surf_func(geosurf *, int (*)());
579 int gsd_wire_arrows(geosurf *);
580 
581 /* gsdiff.c */
582 void gsdiff_set_SDscale(float);
583 float gsdiff_get_SDscale(void);
584 void gsdiff_set_SDref(geosurf *);
586 float gsdiff_do_SD(float, int);
587 
588 /* gsdrape.c */
590 int seg_intersect_vregion(geosurf *, float *, float *);
591 Point3 *gsdrape_get_segments(geosurf *, float *, float *, int *);
592 Point3 *gsdrape_get_allsegments(geosurf *, float *, float *, int *);
593 void interp_first_last(geosurf *, float *, float *, Point3, Point3);
595 int viewcell_tri_interp(geosurf *, typbuff *, Point3, int);
596 int in_vregion(geosurf *, float *);
597 int order_intersects(geosurf *, Point3, Point3, int, int, int);
598 int get_vert_intersects(geosurf *, float *, float *, float *);
599 int get_horz_intersects(geosurf *, float *, float *, float *);
600 int get_diag_intersects(geosurf *, float *, float *, float *);
601 int segs_intersect(float, float, float, float, float, float, float, float,
602  float *, float *);
604 int XY_intersect_plane(float *, float *);
605 int P3toPlane(Point3, Point3, Point3, float *);
606 int V3Cross(Point3, Point3, Point3);
607 
608 /* gsds.c */
609 int gsds_findh(const char *, IFLAG *, IFLAG *, int);
610 int gsds_newh(const char *);
612 char *gsds_get_name(int);
613 int gsds_free_datah(int);
614 int gsds_free_data_buff(int, int);
615 size_t free_data_buffs(dataset *, int);
616 size_t gsds_alloc_typbuff(int, int *, int, int);
617 int gsds_get_changed(int);
618 int gsds_set_changed(int, IFLAG);
619 int gsds_get_type(int);
620 
621 /* gsget.c */
622 int get_mapatt(typbuff *, int, float *);
623 
624 /* gv.c */
625 geovect *gv_get_vect(int);
627 int gv_num_vects(void);
629 geovect *gv_get_new_vect(void);
630 void gv_update_drapesurfs(void);
631 int gv_set_defaults(geovect *);
632 int gv_init_vect(geovect *);
633 void gv_delete_vect(int);
634 int gv_free_vect(geovect *);
635 void gv_free_vectmem(geovect *);
636 void gv_set_drapesurfs(geovect *, int *, int);
637 
638 /* gv_quick.c */
639 float gv_line_length(geoline *);
640 int gln_num_points(geoline *);
641 int gv_num_points(geovect *);
643 
644 /* gvd.c */
645 int gs_clip_segment(geosurf *, float *, float *, float *);
646 int gvd_vect(geovect *, geosurf *, int);
647 void gvd_draw_lineonsurf(geosurf *, float *, float *, int);
648 
649 /* gvl.c */
650 geovol *gvl_get_vol(int);
652 int gvl_getall_vols(geovol **);
653 int gvl_num_vols(void);
654 geovol *gvl_get_last_vol(void);
655 geovol *gvl_get_new_vol(void);
656 int gvl_init_vol(geovol *, double, double, double, int, int, int,
657  double, double, double);
658 void gvl_delete_vol(int);
659 int gvl_free_vol(geovol *);
660 void gvl_free_volmem(geovol *);
661 void print_vol_fields(geovol *);
662 int gvl_get_xextents(geovol *, float *, float *);
663 int gvl_get_yextents(geovol *, float *, float *);
664 int gvl_get_zextents(geovol *, float *, float *);
665 int gvl_get_xrange(float *, float *);
666 int gvl_get_yrange(float *, float *);
667 int gvl_get_zrange(float *, float *);
668 
673 int gvl_isosurf_set_att_src(geovol_isosurf *, int, int);
674 int gvl_isosurf_set_att_const(geovol_isosurf *, int, float);
675 int gvl_isosurf_set_att_map(geovol_isosurf *, int, const char *);
677 
681 
682 /* trans.c */
683 void P_scale(float, float, float);
684 void P_transform(int, float (*)[4], float (*)[4]);
685 int P_pushmatrix(void);
686 int P_popmatrix(void);
687 void P_rot(float, char);
688 
689 /* gvl_file.c */
691 char *gvl_file_get_name(int);
694 int gvl_file_newh(const char *, IFLAG);
695 int gvl_file_free_datah(int);
698 int gvl_file_get_value(geovol_file *, int, int, int, void *);
699 int gvl_file_is_null_value(geovol_file *, void *);
701 int gvl_file_set_slices_param(geovol_file *, int, int);
702 void gvl_file_get_min_max(geovol_file *, double *, double *);
703 
704 /* Gvl3.c */
705 int Gvl_load_colors_data(void **, const char *);
706 int Gvl_unload_colors_data(void *);
707 int Gvl_get_color_for_value(void *, float *);
708 
709 /* gvl_calc.c */
710 int gvl_isosurf_calc(geovol *);
711 int gvl_slices_calc(geovol *);
712 void gvl_write_char(int, unsigned char **, unsigned char);
713 unsigned char gvl_read_char(int, const unsigned char *);
714 void gvl_align_data(int, unsigned char **);
715 
716 /* gvld.c */
717 int gvld_vol(geovol *);
718 int gvld_wire_vol(geovol *);
719 int gvld_isosurf(geovol *);
721 int gvld_slices(geovol *);
722 int gvld_slice(geovol *, int);
723 int gvld_wire_slices(geovol *);
724 int gvld_wind3_box(geovol *);
725 
726 /* from gsd_fringe.c */
727 void gsd_display_fringe(geosurf *, unsigned long, float, int[4]);
728 void gsd_fringe_horiz_poly(float, geosurf *, int, int);
729 void gsd_fringe_horiz_line(float, geosurf *, int, int);
730 void gsd_fringe_vert_poly(float, geosurf *, int, int);
731 void gsd_fringe_vert_line(float, geosurf *, int, int);
732 
733 /* from gsd_legend.c */
734 GLuint gsd_put_legend(const char *, GLuint, int, int *, float *, int *);
735 void gsd_bgn_legend_viewport(GLint, GLint, GLint, GLint);
736 void gsd_end_legend_viewport(void);
737 int gsd_make_nice_number(float *);
738 
739 #endif /* GRASS_OGSFDEFS_H */
int gsd_wire_surf_func(geosurf *, int(*)())
ADD.
Definition: gsd_wire.c:442
int gs_mapcolor(typbuff *, gsurf_att *, int)
Call this one when you already know att_src is MAP_ATT.
Definition: gs.c:969
void GS_setlight_ambient(int, float, float, float)
Set light ambient.
Definition: gs2.c:402
int GS_coordpair_repeats(float *, float *, int)
ADD.
Definition: gs_util.c:443
int GVL_slice_add(int)
Add slice.
Definition: gvl2.c:1190
float Point4[4]
Definition: ogsf.h:200
int gsds_findh(const char *, IFLAG *, IFLAG *, int)
Get handle to gsds.
Definition: gsds.c:188
void * GVL_get_window()
Get window.
Definition: gvl2.c:98
int gpd_2dsite(geosite *, geosurf *, int)
Draw 2D point set.
Definition: gpd.c:216
geovol * gvl_get_vol(int)
Get volume set structure.
Definition: gvl.c:39
geosurf * gs_get_surf(int)
Get geosurf struct.
Definition: gs.c:62
Definition: ogsf.h:352
int GVL_get_region(float *, float *, float *, float *, float *, float *)
Get region extent settings.
Definition: gvl2.c:79
int GK_move_key(float, float, float)
Move keyframe.
Definition: gk2.c:336
int gsd_ortho_wall(int, int, geosurf **, Point3 **, float *)
ADD.
Definition: gsd_surf.c:1327
void gv_delete_vect(int)
Delete vector set (unload)
Definition: gv.c:239
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_litvert_func2(float *, unsigned long, float *)
ADD.
Definition: gsd_prim.c:676
void gs_put_label(const char *, GLuint, int, unsigned long, int *)
Put label.
Definition: gsd_label.c:41
void gsd_endtfan(void)
ADD.
Definition: gsd_prim.c:346
size_t free_data_buffs(dataset *, int)
Free data buffer.
Definition: gsds.c:393
void Gs_pack_colors(const char *, int *, int, int)
Pack color table.
Definition: gs3.c:636
double GS_geodistance(double *, double *, const char *)
Calculate distance between 2 coordinates.
Definition: gs_util.c:55
int gv_set_defaults(geovect *)
Set attributes of vector set to default values.
Definition: gv.c:184
void gsd_frontbuffer(void)
Draw to the front buffer.
Definition: gsd_prim.c:457
int gvl_file_newh(const char *, IFLAG)
Get handle for given file name and type.
Definition: gvl_file.c:269
int GS_get_drawmode(int, int *)
Get draw mode.
Definition: gs2.c:2109
int gvl_file_set_slices_param(geovol_file *, int, int)
Set parameters for slice reading.
Definition: gvl_file.c:1166
int Gs_loadmap_as_int(struct Cell_head *, const char *, int *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:178
int GS_get_fov(void)
Get fied of view.
Definition: gs2.c:2855
int gsds_newh(const char *)
Get handle to gsds.
Definition: gsds.c:219
int GVL_isosurf_add(int)
Add isosurface.
Definition: gvl2.c:661
void GK_clear_keys(void)
Deletes all keyframes, resets field masks.
Definition: gk2.c:310
int GS_get_val_at_xy(int, int, char *, float, float)
Get RGB color at given point.
Definition: gs2.c:1310
int gs_mask_defined(geosurf *)
Check if mask is defined.
Definition: gs.c:915
void P_transform(int, float(*)[4], float(*)[4])
Transform array of vectors using current T matrix.
Definition: trans.c:117
void gvl_file_get_min_max(geovol_file *, double *, double *)
Get minimum and maximum value in volume file.
Definition: gvl_file.c:214
int GV_load_vector(int, const char *)
Load vector set.
Definition: gv2.c:171
int GP_site_exists(int)
Check if point set exists.
Definition: gp2.c:36
int GVL_new_vol(void)
Create new volume set.
Definition: gvl2.c:136
void gsd_flush(void)
Mostly for flushing drawing commands across a network.
Definition: gsd_prim.c:83
void gsd_surf2real(geosurf *, Point3)
Convert surface to real coordinates.
Definition: gsd_views.c:464
int gs_distance_onsurf(geosurf *, float *, float *, float *, int)
Calculate distance on surface.
Definition: gs.c:1417
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:308
int gsd_surf_func(geosurf *, int(*)())
Define user function.
Definition: gsd_surf.c:1092
geosite * gp_get_new_site(void)
Create new geosite instance and add it to list.
Definition: gp.c:116
void gsd_blend(int)
Specify pixel arithmetic.
Definition: gsd_prim.c:996
void GK_showtension_start(void)
Definition: gk2.c:175
Viewnode * gk_make_linear_framesfromkeys(Keylist *, int, int, int)
Generate viewnode from keyframe list (linear interpolation)
Definition: gk.c:604
int gs_getall_surfaces(geosurf **)
Get array of geosurf structs.
Definition: gs.c:108
void GS_set_viewdir(float *)
Set viewdir.
Definition: gs2.c:2823
int gs_get_datacenter(float *)
Get data center point.
Definition: gs.c:1232
int gp_set_defaults(geosite *)
Set default value for geosite struct.
Definition: gp.c:186
void * GP_Get_ClientData(int)
Get client data.
Definition: gp2.c:649
int gsbm_or_masks(struct BM *, struct BM *)
Mask bitmap (mask type OR)
Definition: gs_bm.c:168
int GVL_slice_move_up(int, int)
Move up slice.
Definition: gvl2.c:1265
void GVL_set_draw_wire(int, int)
Set drawing wire box.
Definition: gvl2.c:382
void gvd_draw_lineonsurf(geosurf *, float *, float *, int)
Draw line on surface.
Definition: gvd.c:300
void do_label_display(GLuint, float *, const char *)
Display label.
Definition: gsd_fonts.c:98
float gv_line_length(geoline *)
Get line width.
Definition: gv_quick.c:172
int gsd_coarse_surf_map(geosurf *)
Draw coarse surface.
Definition: gsd_wire.c:572
int gvl_file_get_file_type(geovol_file *)
Get file type for given handle.
Definition: gvl_file.c:190
typbuff * gsds_get_typbuff(int, IFLAG)
Get data buffer.
Definition: gsds.c:281
int Gp_set_color(const char *, geopoint *)
void gsd_fringe_vert_poly(float, geosurf *, int, int)
Draw fringe outline in y direction.
Definition: gsd_fringe.c:321
int gs_masked(typbuff *, int, int, int)
Should only be called when setting up the current mask (gs_bm.c)
Definition: gs.c:933
int gvl_file_free_datah(int)
Free geovol_file structure for given handle.
Definition: gvl_file.c:364
geovect * gv_get_last_vect(void)
Get last loaded vector set.
Definition: gv.c:94
void GK_showtension_stop(void)
Show tension stop ?
Definition: gk2.c:187
int GS_write_ppm(const char *)
Save current GL screen to ppm file.
Definition: gsd_img_ppm.c:41
void GS_v3sub(float *, float *)
Subtract vectors.
Definition: gs_util.c:212
int XY_intersect_plane(float *, float *)
Check for intersection (point and plane)
Definition: gsdrape.c:1312
int gsd_arrow(float *, unsigned long, float, float *, float, geosurf *)
ADD.
Definition: gsd_objs.c:923
int gln_num_points(geoline *)
Get number of line vertices.
Definition: gv_quick.c:196
void GS_draw_flowline_at_xy(int, float, float)
Draw flow-line on surace.
Definition: gs2.c:756
int gvl_num_vols(void)
Get number of loaded volume sets.
Definition: gvl.c:104
geovol_slice * gvl_slice_get_slice(int, int)
Get geovol_slice struct.
Definition: gvl.c:803
void gsd_update_cpnorm(int)
ADD.
Definition: gsd_cplane.c:188
int gvl_free_vol(geovol *)
Free geovol struct.
Definition: gvl.c:265
int Gs_update_attrange(geosurf *, int)
Update no_zero ranges for attribute (actually no_null now)
Definition: gs3.c:1087
void GS_draw_surf(int)
Draw surface.
Definition: gs2.c:1864
void gsd_box(float *, int, float *)
Draw box.
Definition: gsd_objs.c:1440
int * GP_get_site_list(int *)
Get list of point sets.
Definition: gp2.c:101
int GVL_isosurf_get_maskmode(int, int, int *)
Get isosurface mask mode.
Definition: gvl2.c:1052
int GK_delete_key(float, float, int)
Definition: gk2.c:367
int gsd_wire_surf_map(geosurf *)
ADD.
Definition: gsd_wire.c:100
void gsd_finish(void)
Finish.
Definition: gsd_prim.c:1061
int gv_decimate_lines(geovect *)
Decimate line.
Definition: gv_quick.c:232
int GS_get_att(int, int, int *, float *, char *)
Get attributes.
Definition: gs2.c:1140
int gsd_make_nice_number(float *)
ADD.
Definition: gsd_legend.c:154
int _viewcell_tri_interp(geosurf *, Point3)
ADD.
Definition: gsdrape.c:467
void GS_ready_draw(void)
Definition: gs2.c:2488
int gvld_slice(geovol *, int)
Draw slice.
Definition: gvld.c:490
int GVL_slice_set_transp(int, int, int)
Set slice trans ?
Definition: gvl2.c:1507
2D/3D raster map header (used also for region)
Definition: gis.h:412
int gs_get_data_avg_zmax(float *)
Get average z-max value.
Definition: gs.c:1203
void GS_set_focus(float *)
Set focus.
Definition: gs2.c:2520
void gsd_bgnpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
Definition: gsd_prim.c:371
int Gvl_unload_colors_data(void *)
Unload color table.
Definition: gvl3.c:65
int GP_attmode_none(int)
int GS_has_transparency(void)
Check for transparency.
Definition: gs2.c:3480
int gvl_get_yextents(geovol *, float *, float *)
Get volume y-extent value.
Definition: gvl.c:369
int RayCvxPolyhedronInt(Point3, Point3, double, Point4 *, int, double *, int *)
Ray-Convex Polyhedron Intersection Test.
Definition: gs_query.c:384
void gsd_switchlight(int, int)
Switch light on/off.
Definition: gsd_prim.c:880
int GVL_num_vols(void)
Get number of loaded volume sets.
Definition: gvl2.c:166
void print_surf_fields(geosurf *)
Debugging, print geosurf fields to stderr.
Definition: gs.c:391
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 print_256lookup(int *)
Debugging, 256 integer values from buffer.
Definition: gs.c:367
int gs_get_zrange(float *, float *)
Get z-range.
Definition: gs.c:1088
void GVL_draw_vol(int)
Draw volume set.
Definition: gvl2.c:402
int GS_write_tif(const char *)
Write data to tif file.
Definition: gsd_img_tif.c:53
int Gs_get_cat_label(const char *, int, int, char *)
Get categories/labels.
Definition: gs3.c:776
int gs_set_att_type(geosurf *, int, int)
Set attribute type.
Definition: gs.c:803
unsigned char gvl_read_char(int, const unsigned char *)
Read char.
Definition: gvl_calc.c:765
void GS_draw_all_list(void)
Draw all glLists.
Definition: gs2.c:879
void GK_set_numsteps(int)
Set the number of frames to be interpolated from keyframes.
Definition: gk2.c:297
void GVL_alldraw_vol(void)
Draw all volume sets.
Definition: gvl2.c:441
unsigned long gk_get_mask_sofar(float, Keylist *)
Get mask value.
Definition: gk.c:79
void gsd_checkwindow(int *, int *, double *, double *)
GLuint gsd_set_font(const char *)
int gsd_get_los(float(*)[3], short, short)
ADD.
Definition: gsd_views.c:40
geosite * gp_get_prev_site(int)
Get previous geosite struct from list.
Definition: gp.c:55
int gs_setlos_enterdata(Point3 *)
Definition: gs_query.c:529
void init_vars(geosurf *)
Init variables.
Definition: gs_norms.c:72
void gs_delete_surf(int)
Remove geosurf struct from list.
Definition: gs.c:463
geovol_isosurf * gvl_isosurf_get_isosurf(int, int)
Get isosurface of given volume set.
Definition: gvl.c:578
int gvl_isosurf_set_att_map(geovol_isosurf *, int, const char *)
Set attribute map.
Definition: gvl.c:690
void gsd_popmatrix(void)
Pop the current matrix stack.
Definition: gsd_prim.c:500
int gvl_file_get_value(geovol_file *, int, int, int, void *)
Get value for volume file at x, y, z.
Definition: gvl_file.c:1050
int gs_get_att_src(geosurf *, int)
Get attribute source.
Definition: gs.c:656
int gvl_file_is_null_value(geovol_file *, void *)
Check for null value.
Definition: gvl_file.c:1087
void GVL_alldraw_wire(void)
Draw all volume sets in wire mode.
Definition: gvl2.c:455
int segs_intersect(float, float, float, float, float, float, float, float, float *, float *)
Line intersect.
Definition: gsdrape.c:1210
void gsd_endpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
Definition: gsd_prim.c:386
int gsd_nline_onsurf(geosurf *, float *, float *, float *, int)
Multiline on surface, fix z-values.
Definition: gsd_objs.c:235
Definition: ogsf.h:365
int gsds_free_data_buff(int, int)
Free allocated buffer.
Definition: gsds.c:369
void gsd_call_label(void)
Call display list and draw defined labels – called from gsd_prim (gsd_call_lists) ...
Definition: gsd_label.c:122
void gsd_real2model(Point3)
Convert real to model coordinates.
Definition: gsd_views.c:373
int Point_on_plane(Point3, Point3, Point3, Point3)
Check if point is on plane.
Definition: gsdrape.c:1290
void GS_libinit(void)
Initialize OGSF library.
Definition: gs2.c:97
int gsd_zup_twist(geoview *)
ADD.
Definition: gsd_views.c:274
void GS_set_viewport(int, int, int, int)
Set viewport.
Definition: gs2.c:2981
void gsdiff_set_SDref(geosurf *)
ADD.
Definition: gsdiff.c:64
void GS_draw_wire(int)
Draw surface wire.
Definition: gs2.c:1899
int Gs_loadmap_as_char(struct Cell_head *, const char *, unsigned char *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:417
void GS_v3add(float *, float *)
Sum vectors.
Definition: gs_util.c:195
int GV_set_style_thematic(int, int, const char *, const char *, struct Colors *)
Set vector set style for thematic mapping.
Definition: gv2.c:287
Definition: bitmap.h:17
int GS_new_light(void)
Add new model light.
Definition: gs2.c:268
void GS_init_rotation(void)
Reset scene rotation.
Definition: gs2.c:2909
int GS_get_cat_at_xy(int, int, char *, float, float)
Get surface category on given position.
Definition: gs2.c:1183
int Gs_loadmap_as_bitmap(struct Cell_head *, const char *, struct BM *)
Load raster map as integer map.
Definition: gs3.c:517
double Gs_distance(double *, double *)
Calculates distance in METERS between two points in current projection (2D)
Definition: gs3.c:84
Point3 * gsdrape_get_allsegments(geosurf *, float *, float *, int *)
Get all segments.
Definition: gsdrape.c:401
void gsd_deflight(int, struct lightdefs *)
Define light.
Definition: gsd_prim.c:839
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:3005
geosite * gp_get_last_site(void)
Get last point set.
Definition: gp.c:93
int GVL_load_vol(int, const char *)
Load 3d raster map to volume set.
Definition: gvl2.c:256
double GS_get_aspect(void)
Get aspect value.
Definition: gs2.c:3452
geovect * gv_get_prev_vect(int)
Get previous vector set.
Definition: gv.c:56
void print_frto(float(*)[4])
Debugging, print 'from/to' model coordinates to stderr.
Definition: gs.c:337
void primitive_cone(unsigned long)
Primitives only called after transforms.
Definition: gsd_objs.c:1312
void GS_zoom_setup(int *, int *, int *, int *, int *, int *)
Get zoom setup.
Definition: gs2.c:2772
void GS_get_trans(int, float *, float *, float *)
Get translation values (surface position)
Definition: gs2.c:2415
void GS_set_rotation(double, double, double, double)
Set rotation params.
Definition: gs2.c:2887
int GK_add_key(float, unsigned long, int, float)
Add keyframe.
Definition: gk2.c:429
void gvl_delete_vol(int)
Remove volume set from list.
Definition: gvl.c:242
void print_bm(struct BM *)
Print bitmap to stderr.
Definition: gs_bm.c:363
int GS_get_wire_color(int, int *)
Get wire color.
Definition: gs2.c:2038
int gvl_isosurf_set_att_changed(geovol_isosurf *, int)
Set attribute changed.
Definition: gvl.c:723
int GP_num_sites(void)
Get number of loaded point sets.
Definition: gp2.c:86
int GS_setall_drawres(int, int, int, int)
Set all draw resolutions.
Definition: gs2.c:2198
void GS_alldraw_cplane_fences(void)
Draw all cplace fences ?
Definition: gs2.c:3195
int gsds_get_changed(int)
ADD.
Definition: gsds.c:615
void GS_set_wire_color(int, int)
Set wire color.
Definition: gs2.c:2014
int gsd_get_txtheight(int size)
Get text height.
Definition: gsd_fonts.c:53
void gsd_end_legend_viewport(void)
ADD.
Definition: gsd_legend.c:91
geoline * Gv_load_vect(const char *, int *)
Load vector map to memory.
Definition: gv3.c:47
int gvl_slice_freemem(geovol_slice *)
Free geovol_slice struct.
Definition: gvl.c:782
float Point3[3]
Definition: ogsf.h:201
double get_key_neighbors(int, double, double, int, Keylist **, Keylist **, Keylist **, Keylist **, Keylist **, double *, double *)
int gvl_get_zrange(float *, float *)
Get volume z-range value.
Definition: gvl.c:476
int gvl_get_yrange(float *, float *)
Get volume y-range value.
Definition: gvl.c:439
void GS_draw_lighting_model(void)
Draw lighting model.
Definition: gs2.c:941
int GS_set_drawmode(int, int)
Set draw mode.
Definition: gs2.c:2083
int gsbm_xor_masks(struct BM *, struct BM *)
Mask bitmap (mask type XOR)
Definition: gs_bm.c:219
void gsd_shademodel(int)
Set shaded model.
Definition: gsd_prim.c:418
int GVL_isosurf_set_att_map(int, int, int, const char *)
Set isosurface map attribute.
Definition: gvl2.c:920
unsigned int GS_background_color(void)
Get background color.
Definition: gs2.c:2452
void GS_set_focus_real(float *)
Set real focus.
Definition: gs2.c:2538
void GS_set_cplane(int)
Set cplace.
Definition: gs2.c:3215
int GVL_slice_get_pos(int, int, float *, float *, float *, float *, float *, float *, int *)
Get slice position.
Definition: gvl2.c:1359
int gs_get_xrange(float *, float *)
Get x-range.
Definition: gs.c:1126
int calc_norm(geosurf *, int, int, unsigned int)
Calculate normals.
Definition: gs_norms.c:206
void GS_get_from(float *)
Get viewpoint 'from' position.
Definition: gs2.c:2725
int GS_v3normalize(float *, float *)
Change v2 so that v1v2 is a unit vector.
Definition: gs_util.c:322
void gvl_align_data(int, unsigned char **)
Append data to buffer.
Definition: gvl_calc.c:779
void gsd_cplane_off(int)
Turn off clip plane.
Definition: gsd_cplane.c:126
int gsd_surf_map(geosurf *)
Draw surface using triangle fan instead of strip.
Definition: gsd_surf.c:2062
double lin_interp(float, float, float)
Linear interpolation.
Definition: gk.c:539
int GVL_slice_set_drawmode(int, int)
Set slice draw mode.
Definition: gvl2.c:1165
int gsd_wall(float *, float *, float *)
ADD.
Definition: gsd_surf.c:1715
void gsd_fringe_horiz_line(float, geosurf *, int, int)
Draw fringe outline in x direction.
Definition: gsd_fringe.c:225
void GS_set_exag(int, float)
Set Z exag for surface.
Definition: gs2.c:1953
int GV_Set_ClientData(int, void *)
Set client data.
Definition: gv2.c:568
void interp_first_last(geosurf *, float *, float *, Point3, Point3)
ADD.
Definition: gsdrape.c:441
void gsd_calllist(int)
ADD.
Definition: gsd_prim.c:1176
int Gs_save_3dview(const char *, geoview *, geodisplay *, struct Cell_head *, geosurf *)
Save 3dview.
Definition: gs3.c:853
void GS_clear(int)
Clear view.
Definition: gs2.c:3418
void GVL_draw_wire(int)
Draw volume in wire mode.
Definition: gvl2.c:423
void print_realto(float *)
Debugging, print 'to' real coordinates to stderr.
Definition: gs.c:353
int seg_intersect_vregion(geosurf *, float *, float *)
Check if segment intersect vector region.
Definition: gsdrape.c:233
void GK_update_tension(void)
Update tension.
Definition: gk2.c:195
void gsd_get_cplanes_state(int *)
Get cplane state.
Definition: gsd_cplane.c:142
int gv_num_vects(void)
Get number of loaded vector sets.
Definition: gv.c:76
int GS_is_masked(int, float *)
Check if point is masked ?
Definition: gs2.c:1015
int GP_unselect_surf(int, int)
Unselect surface.
Definition: gp2.c:510
int GS_setall_drawmode(int)
Set all draw-modes.
Definition: gs2.c:2061
void GS_unset_rotation(void)
Stop scene rotation.
Definition: gs2.c:2901
void GS_get_drawres(int, int *, int *, int *, int *)
Get draw resolution of surface.
Definition: gs2.c:2255
int gs_get_xextents(geosurf *, float *, float *)
Get x-extent values.
Definition: gs.c:1016
void GV_set_trans(int, float, float, float)
Set trans ?
Definition: gv2.c:343
void GS_set_att_defaults(float *, float *)
Set default attributes for map objects.
Definition: gs2.c:172
void GS_set_cancel(int)
Set cancel.
Definition: gsx.c:40
void GS_moveto_real(float *)
Move position to (real)
Definition: gs2.c:2647
int gsd_getimage(unsigned char **, unsigned int *, unsigned int *)
Get image of current GL screen.
Definition: gsd_prim.c:905
int gv_init_vect(geovect *)
Initialize geovect struct.
Definition: gv.c:223
int get_mapatt(typbuff *, int, float *)
Get map attributes.
Definition: gsget.c:31
int GVL_isosurf_set_drawres(int, int, int, int)
Set isosurface draw resolution.
Definition: gvl2.c:575
int P3toPlane(Point3, Point3, Point3, float *)
Define plane.
Definition: gsdrape.c:1335
int gk_draw_path(Viewnode *, int, Keylist *)
Draw path.
Definition: gk.c:738
void print_view_fields(geoview *)
Debugging, print geoview fields to stderr.
Definition: gs.c:419
int gsd_norm_arrows(geosurf *)
ADD.
Definition: gsd_surf.c:1810
int GS_v3norm(float *)
Change v1 so that it is a unit vector (2D)
Definition: gs_util.c:246
void GS_set_cplane_rot(int, float, float, float)
Set cplace rotation.
Definition: gs2.c:3122
void GS_alldraw_wire(void)
Draw all wires.
Definition: gs2.c:1919
int gs_free_surf(geosurf *)
Free geosurf struct.
Definition: gs.c:487
int gs_get_att_type(geosurf *, int)
Get attribute type.
Definition: gs.c:630
int gv_num_points(geovect *)
Get number of points in vector.
Definition: gv_quick.c:215
void GS_v3cross(float *, float *, float *)
Get the cross product v3 = v1 cross v2.
Definition: gs_util.c:406
int Gvl_load_colors_data(void **, const char *)
Load color table.
Definition: gvl3.c:34
int gp_num_sites(void)
Get number of loaded point sets.
Definition: gp.c:75
int GS_save_3dview(const char *, int)
Save 3d view.
Definition: gs2.c:3316
void gsd_def_cplane(int, float *, float *)
Define cplace.
Definition: gsd_cplane.c:55
void gsd_surf2model(Point3)
Convert surface to model coordinates.
Definition: gsd_views.c:441
void P_rot(float, char)
Rotate matrix.
Definition: trans.c:217
void gsd_cplane_setrot(int, float, float, float)
ADD.
Definition: gsd_cplane.c:211
int GP_select_surf(int, int)
Select surface for given point set.
Definition: gp2.c:480
int gp_free_site(geosite *)
Free allocated geosite struct.
Definition: gp.c:258
void gp_update_drapesurfs(void)
Update drape surfaces.
Definition: gp.c:154
int gs_num_datah_reused(int)
Get number of reused values.
Definition: gs.c:597
int Gp_load_sites_thematic(geosite *, struct Colors *)
Load styles for geopoints based on thematic mapping.
Definition: gp3.c:171
float GS_distance(float *, float *)
Calculate distance.
Definition: gs_util.c:141
int GS_get_zextents(int, float *, float *, float *)
Get z-extent for a single surface.
Definition: gs2.c:2666
int gvl_init_vol(geovol *, double, double, double, int, int, int, double, double, double)
Initialize geovol structure.
Definition: gvl.c:184
void gsd_bgntstrip(void)
ADD.
Definition: gsd_prim.c:316
void gsd_draw_cplane(int)
Draw cplane.
Definition: gsd_cplane.c:296
void gsd_init_lightmodel(void)
Initialize model light.
Definition: gsd_prim.c:722
void dir_to_slope_aspect(float *, float *, float *, int)
ADD.
Definition: gsd_objs.c:755
void sub_Vectmem(int)
Tracking memory.
Definition: gv3.c:292
void gpd_obj(geosurf *, gvstyle *, Point3)
Draw point representing object.
Definition: gpd.c:71
int GV_vect_exists(int)
Check if vector set exists.
Definition: gv2.c:35
void show_colormode(void)
Print color mode to stderr.
Definition: gsd_prim.c:150
int GP_surf_is_selected(int, int)
Check if surface is selected.
Definition: gp2.c:548
void GS_get_dims(int, int *, int *)
Get dimension of surface.
Definition: gs2.c:2279
int GS_get_selected_point_on_surface(int, int, int *, float *, float *, float *)
Get selected point of surface.
Definition: gs2.c:3054
void gs_free_unshared_buffs(geosurf *)
Free unshared buffers of geosurf struct.
Definition: gs.c:557
int gsd_getfc(void)
ADD.
Definition: gsd_surf.c:1220
int gvl_file_get_data_type(geovol_file *)
Get data type for given handle.
Definition: gvl_file.c:202
int GP_delete_site(int)
Delete registrated point set.
Definition: gp2.c:131
int gvl_isosurf_set_att_const(geovol_isosurf *, int, float)
Set isosurface attribute constant.
Definition: gvl.c:663
void correct_twist(Keylist *)
Correct twist value.
Definition: gk.c:700
void GS_set_cplane_trans(int, float, float, float)
Set cplace trans.
Definition: gs2.c:3135
int gsd_wire_surf_const(geosurf *, float)
ADD.
Definition: gsd_wire.c:276
void GS_lights_on(void)
Switch on all lights.
Definition: gs2.c:456
int GVL_isosurf_get_drawmode(int, int *)
Get isosurface draw mode.
Definition: gvl2.c:612
void Gs_pack_colors_float(const char *, float *, int *, int, int)
Pack color table (floating-point map)
Definition: gs3.c:705
int gs_set_att_const(geosurf *, int, float)
Set attribute constant value.
Definition: gs.c:872
void gsd_colormode(int)
Set color mode.
Definition: gsd_prim.c:97
int GS_new_surface(void)
Add new surface.
Definition: gs2.c:224
int GS_set_SDsurf(int)
Set surface as Scaled Difference surface.
Definition: gs2.c:1049
void gsd_rot(float, char)
ADD.
Definition: gsd_prim.c:609
int Gs_build_256lookup(const char *, int *)
Build color table (256)
Definition: gs3.c:576
void gsd_def_clipplane(int, double *)
Define clip plane.
Definition: gsd_prim.c:1016
int GVL_isosurf_get_att(int, int, int, int *, float *, char *)
Get isosurface attributes.
Definition: gvl2.c:809
int GVL_slice_num_slices(int)
Get number or slices.
Definition: gvl2.c:1332
void GS_set_focus_center_map(int)
Set focus to map center.
Definition: gs2.c:2582
int GS_get_region(float *, float *, float *, float *)
Get 2D region extent.
Definition: gs2.c:156
void gp_set_drapesurfs(geosite *, int *, int)
float gsdiff_do_SD(float, int)
ADD.
Definition: gsdiff.c:94
void * GS_Get_ClientData(int)
Get client data.
Definition: gs2.c:1507
void GVL_isosurf_get_drawres(int, int *, int *, int *)
Get draw resolution for isosurface.
Definition: gvl2.c:549
int gsds_set_changed(int, IFLAG)
ADD.
Definition: gsds.c:635
void gsd_disc(float, float, float, float)
ADD.
Definition: gsd_prim.c:186
geosurf * gs_get_prev_surface(int)
Get previous geosurf struct.
Definition: gs.c:86
void gsd_diamond(float *, unsigned long, float)
Draw diamond symbol.
Definition: gsd_objs.c:327
int gvld_wire_vol(geovol *)
Draw volume in wire mode (bounding box)
Definition: gvld.c:68
void GS_set_cxl_func(void(*)(void))
Set cxl function.
Definition: gsx.c:52
void GK_update_frames(void)
Recalculate path using the current number of frames requested.
Definition: gk2.c:243
void gs_set_defaults(geosurf *, float *, float *)
Set default attribute values.
Definition: gs.c:441
int gv_free_vect(geovect *)
Free allocated memory for geovect struct.
Definition: gv.c:262
int in_vregion(geosurf *, float *)
ADD.
Definition: gsdrape.c:696
void gsd_backface(int)
ADD.
Definition: gsd_prim.c:253
int gsd_checkpoint(float *, int *, int *, double *, double *)
void GS_get_zrange_nz(float *, float *)
Get Z extents for all loaded surfaces.
Definition: gs2.c:2357
int GS_set_att_const(int, int, float)
Set attribute constant.
Definition: gs2.c:1412
void gsdiff_set_SDscale(float)
Set scale.
Definition: gsdiff.c:42
void gp_free_sitemem(geosite *)
Free geosite (lower level)
Definition: gp.c:307
geosite * gp_get_site(int)
Get geosite struct.
Definition: gp.c:32
void gs_set_maskmode(int)
Set geosurf mask mode.
Definition: gs.c:900
void GK_show_site(int)
Show point sets.
Definition: gk2.c:555
int P_popmatrix(void)
Pop top of matrix stack, placing it into the current transformation matrix.
Definition: trans.c:197
int GVL_slice_get_transp(int, int, int *)
Get slice trans ?
Definition: gvl2.c:1481
void GS_get_to(float *)
Get 'to' model coordinates.
Definition: gs2.c:2795
void gsd_color_func(unsigned int)
Set current color.
Definition: gsd_prim.c:701
int gs_update_curmask(geosurf *)
Update current maps.
Definition: gs_bm.c:232
void GS_delete_list(GLuint)
Delete pre-defined list.
Definition: gs2.c:891
void gsd_swaptmesh(void)
ADD.
Definition: gsd_prim.c:356
int GVL_slice_set_drawres(int, int, int, int)
Set slice draw resolution.
Definition: gvl2.c:1104
void GS_unset_SDsurf(void)
Unset Scaled Difference surface.
Definition: gs2.c:1033
void gsd_3dcursor(float *)
Draw 3d cursor.
Definition: gsd_objs.c:711
int GS_get_fencecolor(void)
Get fence color.
Definition: gs2.c:3268
void gsd_set_view(geoview *, geodisplay *)
Set view.
Definition: gsd_views.c:146
void gsd_fringe_vert_line(float, geosurf *, int, int)
Draw fringe outline in y direction.
Definition: gsd_fringe.c:403
int gsdrape_set_surface(geosurf *)
ADD.
Definition: gsdrape.c:199
Definition: ogsf.h:330
void GVL_libinit(void)
Library initialization for volumes.
Definition: gvl2.c:37
void GS_set_twist(int)
Set viewpoint twist value.
Definition: gs2.c:2877
int GVL_slice_set_pos(int, int, float, float, float, float, float, float, int)
Get slice position.
Definition: gvl2.c:1420
void gsd_bgn_legend_viewport(GLint, GLint, GLint, GLint)
ADD.
Definition: gsd_legend.c:61
void gk_free_key(Keylist *)
Free keyframe list.
Definition: gk.c:271
void GP_set_trans(int, float, float, float)
Set transformation params.
Definition: gp2.c:430
void gs_init(void)
Initialize library.
Definition: gs.c:47
void gsd_endline(void)
End line.
Definition: gsd_prim.c:406
void gsd_bgnqstrip(void)
ADD.
Definition: gsd_prim.c:276
int gvld_wire_slices(geovol *)
Draw wire slices.
Definition: gvld.c:669
int Gs_load_3dview(const char *, geoview *, geodisplay *, struct Cell_head *, geosurf *)
Load 3dview.
Definition: gs3.c:951
Definition: ogsf.h:478
int gvl_isosurf_freemem(geovol_isosurf *)
Free geovol_isosurf struct.
Definition: gvl.c:551
void GS_draw_lighting_model1(void)
Draw lighting model.
Definition: gs2.c:901
void GV_draw_vect(int)
Draw vector set.
Definition: gv2.c:482
void GS_setlight_color(int, float, float, float)
Set light color.
Definition: gs2.c:358
void gsd_translate(float, float, float)
Multiply the current matrix by a translation matrix.
Definition: gsd_prim.c:538
void gsd_viewport(int, int, int, int)
Set the viewport.
Definition: gsd_prim.c:1079
void GVL_init_region(void)
Initialize 3D region.
Definition: gvl2.c:57
int get_txtdescender(void)
Get text descender.
Definition: gsd_fonts.c:72
int gp_init_site(geosite *)
Initialize geosite struct.
Definition: gp.c:219
char * gvl_file_get_name(int)
Get file name for given handle.
Definition: gvl_file.c:165
void GS_unset_cplane(int)
Unset clip place (turn off)
Definition: gs2.c:3227
void GS_alldraw_surf(void)
Draw all surfaces.
Definition: gs2.c:1936
void GK_show_list(int)
Show list.
Definition: gk2.c:611
void GK_set_tension(float)
Set value for tension when interpmode is KF_SPLINE.
Definition: gk2.c:155
void gsd_x(geosurf *, float *, int, float)
Draw X symbol.
Definition: gsd_objs.c:278
int GP_Set_ClientData(int, void *)
Set client data.
Definition: gp2.c:627
void gsd_bothbuffers(void)
Draw to the front and back buffers.
Definition: gsd_prim.c:445
void print_site_fields(geosite *)
int GV_unset_style_thematic(int)
Make style for thematic mapping inactive.
Definition: gv2.c:320
void GP_alldraw_site(void)
Draw all available point sets.
Definition: gp2.c:607
int GP_new_site(void)
Create new point set.
Definition: gp2.c:63
void gsd_line_onsurf(geosurf *, float *, float *)
Line on surface, fix z-values.
Definition: gsd_objs.c:189
int GS_draw_nline_onsurf(int, float, float, float, float, float *, int)
Draw multiline on surface.
Definition: gs2.c:718
void gsd_remove_all(void)
Remove all labels from display list.
Definition: gsd_label.c:111
void GVL_set_focus_center_map(int)
Set focus on map center.
Definition: gvl2.c:516
void GK_show_path(int)
Draw the current path.
Definition: gk2.c:502
void GS_draw_cplane(int)
Draw cplace.
Definition: gs2.c:3148
int order_intersects(geosurf *, Point3, Point3, int, int, int)
ADD.
Definition: gsdrape.c:729
void GS_get_from_real(float *)
Get viewpoint 'from' real coordinates.
Definition: gs2.c:2739
int gsbm_and_masks(struct BM *, struct BM *)
Mask bitmap (mask type ADD)
Definition: gs_bm.c:202
int GS_set_maskmode(int, int)
Set mask mode.
Definition: gs2.c:1436
int GS_v2norm(float *)
Change v1 so that it is a unit vector (3D)
Definition: gs_util.c:271
void P_scale(float, float, float)
ADD.
Definition: trans.c:75
int gs_num_surfaces(void)
Get number of surfaces.
Definition: gs.c:127
int * GS_get_surf_list(int *)
Get surface list.
Definition: gs2.c:1539
void gsd_bgntfan(void)
ADD.
Definition: gsd_prim.c:336
int gvld_slices(geovol *)
Draw slices.
Definition: gvld.c:433
float gsdiff_get_SDscale(void)
Get scale.
Definition: gsdiff.c:54
int GP_set_zmode(int, int)
Set z mode for point set.
Definition: gp2.c:376
int Gvl_get_color_for_value(void *, float *)
Get color for value.
Definition: gvl3.c:82
void gsd_3darrow(float *, unsigned long, float, float, float *, float)
Draw 3d north arrow.
Definition: gsd_objs.c:1082
int GS_get_light_reset(void)
Definition: gs2.c:258
void gsd_draw_cplane_fence(geosurf *, geosurf *, int)
ADD.
Definition: gsd_cplane.c:247
int gs_get_zextents(geosurf *, float *, float *, float *)
Get z-extent values.
Definition: gs.c:998
int GVL_vol_exists(int)
Check if volume set exists.
Definition: gvl2.c:111
void GK_print_keys(const char *)
Print keyframe info.
Definition: gk2.c:209
int * GV_get_vect_list(int *)
Get list of vector sets.
Definition: gv2.c:98
void GS_get_rotation_matrix(double *)
Get rotation matrix.
Definition: gs2.c:2929
int gs_init_normbuff(geosurf *)
Init geosurf normbuff.
Definition: gs.c:306
void GS_done_draw(void)
Draw done, swap buffers.
Definition: gs2.c:2501
int GS_load_3dview(const char *, int)
Load 3d view.
Definition: gs2.c:3329
int GV_get_vectname(int, char **)
Get vector map name.
Definition: gv2.c:203
int Gs_numtype(const char *, int *)
Get map data type.
Definition: gs3.c:230
void gsd_setfc(int)
ADD.
Definition: gsd_surf.c:1208
void GS_getlight_color(int, float *, float *, float *)
Get light color.
Definition: gs2.c:380
Keylist * gk_copy_key(Keylist *)
Copy keyframes.
Definition: gk.c:45
void gsd_backbuffer(void)
Draw to the back buffer.
Definition: gsd_prim.c:469
int GV_unselect_surf(int, int)
Unselect surface.
Definition: gv2.c:422
int GS_draw_legend(const char *, GLuint, int, int *, float *, int *)
Draw legend.
Definition: gs2.c:848
size_t gs_malloc_att_buff(geosurf *, int, int)
Allocate attribute buffer.
Definition: gs.c:717
void gsd_cube(float *, unsigned long, float)
Draw cube.
Definition: gsd_objs.c:429
int GS_draw_cplane_fence(int, int, int)
Draw cplace fence ?
Definition: gs2.c:3175
int GVL_get_volname(int, char *)
Get volume set name.
Definition: gvl2.c:286
int GV_delete_vector(int)
Delete vector set from list.
Definition: gv2.c:128
void gs_err(const char *)
Definition: gs.c:34
int gvl_get_xrange(float *, float *)
Get volume x-range value.
Definition: gvl.c:402
int Gs_loadmap_as_float(struct Cell_head *, const char *, float *, struct BM *, int *)
Load raster map as floating point map.
Definition: gs3.c:114
int GS_Set_ClientData(int, void *)
Set client data.
Definition: gs2.c:1485
int GVL_isosurf_unset_att(int, int, int)
Unset isosurface attributes.
Definition: gvl2.c:849
void gsd_sphere(float *, float)
ADD.
Definition: gsd_prim.c:206
void GS_set_trans(int, float, float, float)
Set translation (surface position)
Definition: gs2.c:2391
Definition: ogsf.h:434
void GS_draw_fringe(int, unsigned long, float, int *)
Draw fringe around data (surface) at selected corners.
Definition: gs2.c:823
void gsd_cplane_on(int)
ADD.
Definition: gsd_cplane.c:104
int GS_set_SDscale(float)
Set ?
Definition: gs2.c:1070
int GP_str_to_marker(const char *)
Determine point marker symbol for string.
Definition: gp2.c:680
int viewcell_tri_interp(geosurf *, typbuff *, Point3, int)
ADD.
Definition: gsdrape.c:507
void gv_update_drapesurfs(void)
Update drape surfaces.
Definition: gv.c:154
float GS_global_exag(void)
Get global z-exag value.
Definition: gs2.c:1999
void GV_draw_fastvect(int)
Draw vector set (fast mode)
Definition: gv2.c:524
void GS_setlight_position(int, float, float, float, int)
Set light position.
Definition: gs2.c:309
void gv_free_vectmem(geovect *)
Free allocated memory.
Definition: gv.c:310
int GVL_Set_ClientData(int, void *)
Set client data for volume set.
Definition: gvl2.c:475
int GVL_slice_del(int, int)
Delete slice.
Definition: gvl2.c:1226
int P_pushmatrix(void)
Push current transformation matrix onto matrix stack.
Definition: trans.c:177
int GP_attmode_color(int, const char *)
int gs_get_yextents(geosurf *, float *, float *)
Get y-extent values.
Definition: gs.c:1033
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
void gsd_draw_asterisk(float *, unsigned long, float)
Draw asterisk.
Definition: gsd_objs.c:604
geovect * gv_get_new_vect(void)
Allocate memory for new vector set.
Definition: gv.c:115
void gsd_check_focus(geoview *)
Check focus.
Definition: gsd_views.c:215
int gsd_arrow_onsurf(float *, float *, unsigned long, int, geosurf *)
Draw north arrow on surface.
Definition: gsd_objs.c:995
Definition: gis.h:665
Definition: ogsf.h:545
void gsd_zwritemask(unsigned long)
Write out z-mask.
Definition: gsd_prim.c:240
int GVL_isosurf_del(int, int)
Delete isosurface.
Definition: gvl2.c:698
void GS_set_infocus(void)
Set focus.
Definition: gs2.c:2967
typbuff * gs_get_att_typbuff(geosurf *, int, int)
Get attribute data buffer.
Definition: gs.c:681
void gk_follow_frames(Viewnode *, int, Keylist *, int, int, int, unsigned long)
Checks key masks.
Definition: gk.c:141
void GVL_get_dims(int, int *, int *, int *)
Get volume dimensions.
Definition: gvl2.c:309
int Gv_load_vect_thematic(geovect *, struct Colors *)
Load styles for geolines based on thematic mapping.
Definition: gv3.c:313
void gsbm_zero_mask(struct BM *)
Zero mask.
Definition: gs_bm.c:78
int GS_get_SDsurf(int *)
Get ?
Definition: gs2.c:1085
int Gs_loadmap_as_short(struct Cell_head *, const char *, short *, struct BM *, int *)
Load raster map as integer map.
Definition: gs3.c:312
int gsd_wire_arrows(geosurf *)
ADD.
Definition: gsd_wire.c:457
int GVL_isosurf_move_down(int, int)
Move down isosurface in list.
Definition: gvl2.c:771
int gs_get_yrange(float *, float *)
Get y-range.
Definition: gs.c:1164
int gs_malloc_lookup(geosurf *, int)
Allocate attribute lookup.
Definition: gs.c:746
int GS_load_att_map(int, const char *, int)
Load raster map as attribute.
Definition: gs2.c:1608
Viewnode * gk_make_framesfromkeys(Keylist *, int, int, int, float)
Generate viewnode from keyframes.
Definition: gk.c:301
int gvd_vect(geovect *, geosurf *, int)
Draw vector set.
Definition: gvd.c:79
void gsd_endtstrip(void)
ADD.
Definition: gsd_prim.c:326
int gsd_get_cplanes(Point4 *)
Get cplaces.
Definition: gsd_cplane.c:162
int GVL_isosurf_set_maskmode(int, int, int)
Set mask attribute mode.
Definition: gvl2.c:1025
void gsd_update_cplanes(void)
Update cplaces.
Definition: gsd_cplane.c:86
void gsd_bgnlist(int, int)
ADD.
Definition: gsd_prim.c:1128
int GVL_delete_vol(int)
Delete volume set from list.
Definition: gvl2.c:210
int GS_get_norm_at_xy(int, float, float, float *)
Get surface normal at x,y (real coordinates)
Definition: gs2.c:1246
void GS_draw_X(int, float *)
Draw place marker.
Definition: gs2.c:639
void GS_v3eq(float *, float *)
Copy vector values.
Definition: gs_util.c:178
void GS_init_view(void)
Init viewpoint.
Definition: gs2.c:3347
int gs_point_is_masked(geosurf *, float *)
Check if point is masked.
Definition: gs.c:1317
void gsd_linewidth(short)
Set width of rasterized lines.
Definition: gsd_prim.c:266
int gvl_isosurf_calc(geovol *)
Fill data structure with computed isosurfaces polygons.
Definition: gvl_calc.c:585
void gsd_getwindow(int *, int *, double *, double *)
Get viewport.
Definition: gsd_prim.c:553
int V3Cross(Point3, Point3, Point3)
Get cross product.
Definition: gsdrape.c:1365
void gsd_model2surf(geosurf *, Point3)
Convert model to surface coordinates.
Definition: gsd_views.c:414
void gsd_circ(float, float, float)
ADD.
Definition: gsd_prim.c:166
void gsd_calllists(int)
ADD.
Definition: gsd_prim.c:1189
int GVL_slice_move_down(int, int)
Move down slice.
Definition: gvl2.c:1299
int gk_viable_keys_for_mask(unsigned long, Keylist *, Keylist **)
ADD.
Definition: gk.c:112
void GS_v2dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3 (2D)
Definition: gs_util.c:385
int GS_write_zoom(const char *, unsigned int, unsigned int)
Write zoom to file.
Definition: gsd_img_ppm.c:88
int GP_get_zmode(int, int *)
Get z-mode.
Definition: gp2.c:410
int GS_transp_is_set(void)
Check if transparency is set.
Definition: gs2.c:492
void GS_get_viewdir(float *)
Get viewdir.
Definition: gs2.c:2809
int GS_get_exag_guess(int, float *)
Get exag-value guess.
Definition: gs2.c:2306
int gvl_slice_init(geovol_slice *)
Initialize geovol_slice struct.
Definition: gvl.c:756
int gvl_isosurf_get_att_src(geovol_isosurf *, int)
Get attribute source.
Definition: gvl.c:605
int GS_update_normals(int)
Update normals.
Definition: gs2.c:1119
int GP_get_sitename(int, char **)
Get point set filename.
Definition: gp2.c:208
int gvl_isosurf_init(geovol_isosurf *)
Initialize geovol_isosurf struct.
Definition: gvl.c:518
void gsd_litvert_func(float *, unsigned long, float *)
Set the current normal vector & specify vertex.
Definition: gsd_prim.c:660
Definition: ogsf.h:204
void GS_v3mag(float *, float *)
Magnitude of vector.
Definition: gs_util.c:421
geovol_file * gvl_file_get_volfile(int)
Get geovol_file structure for given handle.
Definition: gvl_file.c:117
int gsd_triangulated_wall(int, int, geosurf *, geosurf *, Point3 *, Point3 *, float *)
ADD.
Definition: gsd_surf.c:1111
int GV_get_trans(int, float *, float *, float *)
Get trans ?
Definition: gv2.c:366
int gvld_isosurf(geovol *)
Draw volume isosurfaces.
Definition: gvld.c:91
void gsd_diamond_lines(void)
Draw diamond lines.
Definition: gsd_objs.c:577
int GS_dv3norm(double *)
Changes v1 so that it is a unit vector.
Definition: gs_util.c:295
int gs_los_intersect(int, float **, float *)
Crude method of intersecting line of sight with closest part of surface.
Definition: gs_query.c:191
int GVL_isosurf_move_up(int, int)
Move up isosurface in list.
Definition: gvl2.c:737
int gs_att_is_set(geosurf *, IFLAG)
Check if attribute is set.
Definition: gs.c:149
geosurf * gsdiff_get_SDref(void)
ADD.
Definition: gsdiff.c:77
void gsd_endlist(void)
End list.
Definition: gsd_prim.c:1143
void GS_set_light_reset(int)
Definition: gs2.c:252
int GS_check_cancel(void)
Check for cancel.
Definition: gsx.c:30
void GP_get_trans(int, float *, float *, float *)
Get transformation params.
Definition: gp2.c:453
void GK_show_vect(int)
Show vector sets.
Definition: gk2.c:529
int gvld_wire_isosurf(geovol *)
Draw volume isosurface in draw mode.
Definition: gvld.c:414
void gsd_draw_box(float *, unsigned long, float)
Draw box.
Definition: gsd_objs.c:506
double get_2key_neighbors(int, float, float, int, Keylist **, Keylist **, Keylist **)
int GS_get_focus(float *)
Get focus.
Definition: gs2.c:2563
void GS_moveto(float *)
Move viewpoint.
Definition: gs2.c:2617
void * GVL_Get_ClientData(int)
Get client data.
Definition: gvl2.c:498
void GS_lights_off(void)
Switch off all lights.
Definition: gs2.c:442
int gvl_get_zextents(geovol *, float *, float *)
Get volume z-extent value.
Definition: gvl.c:386
void GVL_slice_get_drawres(int, int *, int *, int *)
Get draw resolution of slice.
Definition: gvl2.c:1078
int get_diag_intersects(geosurf *, float *, float *, float *)
Get diagonal intersects.
Definition: gsdrape.c:1074
int gvl_file_end_read(geovol_file *)
End read - free buffer memory.
Definition: gvl_file.c:1018
size_t gsds_alloc_typbuff(int, int *, int, int)
Allocates correct buffer according to type, keeps track of total mem.
Definition: gsds.c:482
void GS_set_fencecolor(int)
Set fence color.
Definition: gs2.c:3256
void GS_set_rotation_matrix(double *)
Set rotation matrix.
Definition: gs2.c:2941
int GV_surf_is_selected(int, int)
Check if surface is selected.
Definition: gv2.c:459
int GP_unset_style_thematic(int)
Make style for thematic mapping inactive.
Definition: gp2.c:348
int GS_v3dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3.
Definition: gs_util.c:353
void gsd_pushmatrix(void)
Push the current matrix stack.
Definition: gsd_prim.c:510
int GP_get_style(int, int *, int *, float *, int *)
Get point set style.
Definition: gp2.c:231
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:3285
int gvl_file_set_mode(geovol_file *, IFLAG)
Set read mode.
Definition: gvl_file.c:1116
int GVL_isosurf_set_drawmode(int, int)
Set isosurface draw mode.
Definition: gvl2.c:636
void gs_get_databounds_planes(Point4 *)
Get data bounds for plane.
Definition: gs_query.c:469
int gsd_scalebar_v2(float *, float, GLuint, unsigned long, unsigned long)
Draw Scalebar (as lines)
Definition: gsd_objs.c:1249
geovol * gvl_get_last_vol(void)
Get last volume set from the list.
Definition: gvl.c:122
geovol * gvl_get_prev_vol(int)
Get previous volume.
Definition: gvl.c:63
void gsd_real2surf(geosurf *, Point3)
Convert real to surface coordinates.
Definition: gsd_views.c:480
Point3 * gsdrape_get_segments(geosurf *, float *, float *, int *)
ADD.
Definition: gsdrape.c:350
void gsd_draw_gyro(float *, unsigned long, float)
Draw gyro.
Definition: gsd_objs.c:659
void gp_delete_site(int)
Delete point set and remove from list.
Definition: gp.c:235
void gvl_free_volmem(geovol *)
Free geovol struct memory.
Definition: gvl.c:314
int GS_get_longdim(float *)
Get largest dimension.
Definition: gs2.c:140
int gsd_makelist(void)
ADD.
Definition: gsd_prim.c:1096
void GK_do_framestep(int, int)
Moves the animation to frame number "step".
Definition: gk2.c:486
void GP_draw_site(int)
Draw point set.
Definition: gp2.c:573
GLuint gsd_put_legend(const char *, GLuint, int, int *, float *, int *)
Put legend.
Definition: gsd_legend.c:202
int gsd_surf(geosurf *)
ADD.
Definition: gsd_surf.c:81
int GVL_isosurf_set_att_const(int, int, int, float)
Set constant isosurface attribute.
Definition: gvl2.c:884
void void_func(void)
Definition: gs2.c:85
void * GV_Get_ClientData(int)
Get client data.
Definition: gv2.c:590
int GK_set_interpmode(int)
Set interpolation mode.
Definition: gk2.c:140
int gvld_vol(geovol *)
Draw volume set (slices and isosurfaces)
Definition: gvld.c:37
void GS_get_scale(float *, float *, float *, int)
Get axis scale.
Definition: gs2.c:3240
int gvl_slices_calc(geovol *)
Calculate slices for given volume set.
Definition: gvl_calc.c:1037
int GS_get_zrange(float *, float *, int)
Get z-extent for all loaded surfaces.
Definition: gs2.c:2689
int GV_get_style(int, int *, int *, int *, int *)
Get vector style.
Definition: gv2.c:257
int GS_update_curmask(int)
Update current mask.
Definition: gs2.c:997
Definition: ogsf.h:232
void gsd_model2real(Point3)
Convert model to real coordinates.
Definition: gsd_views.c:393
int GS_get_twist(void)
Get twist value.
Definition: gs2.c:2865
int gvld_wind3_box(geovol *)
Draw volume bounding box.
Definition: gvld.c:773
void GS_get_to_real(float *)
Get 'to' real coordinates.
Definition: gs2.c:2752
int GVL_isosurf_num_isosurfs(int)
Get number of available isosurfaces.
Definition: gvl2.c:998
int GS_set_drawres(int, int, int, int, int)
Set draw resolution for surface.
Definition: gs2.c:2221
int GVL_isosurf_get_flags(int, int, int *)
Get isosurface flags.
Definition: gvl2.c:947
void gsd_bgntmesh(void)
ADD.
Definition: gsd_prim.c:296
int GV_set_style(int, int, int, int, int)
Set vector style.
Definition: gv2.c:228
void GS_getlight_ambient(int, float *, float *, float *)
Get light ambient.
Definition: gs2.c:424
int gs_clip_segment(geosurf *, float *, float *, float *)
Clip segment.
Definition: gvd.c:39
geovect * gv_get_vect(int)
Get vector set.
Definition: gv.c:33
int gvl_getall_vols(geovol **)
Get all volumes.
Definition: gvl.c:85
geopoint * Gp_load_sites(const char *, int *, int *)
Load to points to memory.
Definition: gp3.c:40
void gsd_deletelist(GLuint, int)
Delete list.
Definition: gsd_prim.c:1156
void gsd_display_fringe(geosurf *, unsigned long, float, int[4])
Display fridge.
Definition: gsd_fringe.c:51
void GS_set_Narrow(int *, int, float *)
Set decoration, north arrow ??
Definition: gs2.c:568
void gsd_get_zup(geoview *, double *)
Get z-up vector (z-direction)
Definition: gsd_views.c:239
void GV_alldraw_fastvect(void)
Draw all loaded vector sets (fast mode)
Definition: gv2.c:548
unsigned int GS_default_draw_color(void)
Get default draw color.
Definition: gs2.c:2439
void GS_getlight_position(int, float *, float *, float *, int *)
Get light position.
Definition: gs2.c:335
void gvl_write_char(int, unsigned char **, unsigned char)
ADD.
Definition: gvl_calc.c:737
int gpd_3dsite(geosite *, float, float, int)
Draw 3D point set.
Definition: gpd.c:313
int GP_set_style(int, int, int, float, int)
Set point style.
Definition: gp2.c:273
void gsd_endtmesh(void)
ADD.
Definition: gsd_prim.c:306
int gsds_get_type(int)
ADD.
Definition: gsds.c:653
int gsd_wire_surf(geosurf *)
Draw surface wire.
Definition: gsd_wire.c:47
int gsd_scalebar(float *, float, GLuint, unsigned long, unsigned long)
Draw Scalebar takes OpenGL coords and size.
Definition: gsd_objs.c:1161
int gvl_get_xextents(geovol *, float *, float *)
Get volume x-extent value.
Definition: gvl.c:352
float GS_P2distance(float *, float *)
Calculate distance in plane.
Definition: gs_util.c:160
int gsd_getshademodel(void)
Get shaded model.
Definition: gsd_prim.c:437
int GV_num_vects(void)
Get number of available vector sets.
Definition: gv2.c:83
void gsd_set_material(int, int, float, float, int)
Set material.
Definition: gsd_prim.c:806
void gv_set_drapesurfs(geovect *, int *, int)
Set drape surfaces for vector set.
Definition: gv.c:361
int gsd_get_txtwidth(const char *, int)
Get text width.
Definition: gsd_fonts.c:36
int gs_init_surf(geosurf *, double, double, int, int, double, double)
Initialize allocated geosurf struct.
Definition: gs.c:232
geovol * gvl_get_new_vol(void)
Allocate new volume set and add it to the list.
Definition: gvl.c:145
int get_horz_intersects(geosurf *, float *, float *, float *)
Get horizontal intersects.
Definition: gsdrape.c:978
int GVL_slice_get_drawmode(int, int *)
Get slice draw mode.
Definition: gvl2.c:1141
int gs_get_zrange0(float *, float *)
Get z-range.
Definition: gs.c:1054
void GS_set_global_exag(float)
Set global z-exag value.
Definition: gs2.c:1977
geosurf * gs_get_new_surface(void)
Allocate new geosurf struct.
Definition: gs.c:193
void print_vol_fields(geovol *)
Debug volume fields.
Definition: gvl.c:327
int gsd_writeView(unsigned char **, unsigned int, unsigned int)
Write view.
Definition: gsd_prim.c:971
void GS_set_draw(int)
Sets which buffer to draw to.
Definition: gs2.c:2462
int gs_point_in_region(geosurf *, float *, float *)
Check if point is in region.
Definition: gpd.c:39
int gsbm_ornot_masks(struct BM *, struct BM *)
Mask bitmap (mask type ORNOT)
Definition: gs_bm.c:185
geosurf * gs_get_last_surface(void)
Get last allocated geosurf struct from list.
Definition: gs.c:172
void gsd_do_scale(int)
Set current scale.
Definition: gsd_views.c:355
int GS_get_nozero(int, int, int *)
Get no-zero ?
Definition: gs2.c:2164
void GS_get_modelposition(float *, float *)
Retrieves coordinates for lighting model position, at center of view.
Definition: gs2.c:531
void GS_draw_line_onsurf(int, float, float, float, float)
Draw line on surface.
Definition: gs2.c:680
void gsd_cplane_settrans(int, float, float, float)
ADD.
Definition: gsd_cplane.c:229
int get_vert_intersects(geosurf *, float *, float *, float *)
ADD.
Definition: gsdrape.c:882
int GS_unset_att(int, int)
Unset attribute.
Definition: gs2.c:1393
void gsd_scale(float, float, float)
Multiply the current matrix by a general scaling matrix.
Definition: gsd_prim.c:524
int gvl_file_start_read(geovol_file *)
Start read - allocate memory buffer a read first data into buffer.
Definition: gvl_file.c:967
void GK_show_vol(int)
Show volumes.
Definition: gk2.c:583
Definition: ogsf.h:257
void GVL_set_trans(int, float, float, float)
Set trans ?
Definition: gvl2.c:333
int get_txtxoffset(void)
Get text offset.
Definition: gsd_fonts.c:86
int GVL_isosurf_set_flags(int, int, int)
Set isosurface flags.
Definition: gvl2.c:973
void gsd_fringe_horiz_poly(float, geosurf *, int, int)
Draw fringe polygon in x direction.
Definition: gsd_fringe.c:141
#define IFLAG
Definition: ogsf.h:69
int GS_delete_surface(int)
Delete surface.
Definition: gs2.c:1566
void gsd_remove_curr(void)
Remove current label.
Definition: gsd_label.c:97
int gs_set_att_src(geosurf *, int, int)
Set attribute source.
Definition: gs.c:827
int gsds_free_datah(int)
Free allocated dataset.
Definition: gsds.c:329
int GV_new_vector(void)
Register new vector set.
Definition: gv2.c:60
Definition: ogsf.h:314
void primitive_cylinder(unsigned long, int)
Primitives only called after transforms.
Definition: gsd_objs.c:1349
void gsd_swapbuffers(void)
Swap buffers.
Definition: gsd_prim.c:481
void GS_set_nofocus(void)
Unset focus.
Definition: gs2.c:2953
int GS_surf_exists(int)
Definition: gs2.c:194
int GP_load_site(int, const char *)
Load point set from file.
Definition: gp2.c:172
void GS_switchlight(int, int)
Switch on/off light.
Definition: gs2.c:473
char * gsds_get_name(int)
Get name.
Definition: gsds.c:303
void gsd_bgnline(void)
Begin line.
Definition: gsd_prim.c:396
void GS_v3mult(float *, float)
Multiple vectors.
Definition: gs_util.c:229
int gsd_north_arrow(float *, float, GLuint, unsigned long, unsigned long)
Draw North Arrow takes OpenGL coords and size.
Definition: gsd_objs.c:827
int GS_get_SDscale(float *)
Get ?
Definition: gs2.c:1105
int * GVL_get_vol_list(int *)
Get list of loaded volume sets.
Definition: gvl2.c:181
int gsd_surf_const(geosurf *, float)
Using tmesh - not confident with qstrips portability.
Definition: gsd_surf.c:729
void gsd_set_clipplane(int, int)
Set clip plane.
Definition: gsd_prim.c:1043
void gsd_plus(float *, int, float)
ADD.
Definition: gsd_objs.c:152
int gs_setall_norm_needupdate(void)
Set for geosurf need-to-update mark.
Definition: gs.c:1290
void GS_set_nozero(int, int, int)
Set no-zero ?
Definition: gs2.c:2131
void gsd_endqstrip(void)
ADD.
Definition: gsd_prim.c:286
int gs_calc_normals(geosurf *)
Calculate normals.
Definition: gs_norms.c:124
int GS_get_maskmode(int, int *)
Get mask mode.
Definition: gs2.c:1461
void GV_alldraw_vect(void)
Draw all loaded vector sets.
Definition: gv2.c:506
int gvl_isosurf_set_att_src(geovol_isosurf *, int, int)
Set attribute source.
Definition: gvl.c:630
void GS_set_fov(int)
Set field of view.
Definition: gs2.c:2843
int GVL_get_trans(int, float *, float *, float *)
Get trans ?
Definition: gvl2.c:359
void gsd_drawsphere(float *, unsigned long, float)
Draw sphere.
Definition: gsd_objs.c:565
void gsd_vert_func(float *)
ADD.
Definition: gsd_prim.c:689
int GS_num_surfs(void)
Get number of surfaces.
Definition: gs2.c:1524
void GS_get_modelposition1(float *)