1 #ifndef GRASS_OGSFDEFS_H
2 #define GRASS_OGSFDEFS_H
16 int GK_add_key(
float,
unsigned long,
int,
float);
35 const char *,
struct Colors *);
87 int GS_get_att(
int,
int,
int *,
float *,
char *);
174 void GS_zoom_setup(
int *,
int *,
int *,
int *,
int *,
int *);
178 int GS_draw_legend(
const char *, GLuint,
int,
int *,
float *,
int *);
193 void GS_v3eq(
float *,
float *);
201 int GS_v3dir(
float *,
float *,
float *);
202 void GS_v2dir(
float *,
float *,
float *);
235 int GVL_get_region(
float *,
float *,
float *,
float *,
float *,
float *);
360 void gs_err(
const char *);
456 void gs_put_label(
const char *, GLuint,
int,
unsigned long,
int *);
462 void gsd_box(
float *,
int,
float *);
469 void gsd_cube(
float *,
unsigned long,
float);
476 int gsd_north_arrow(
float *,
float, GLuint,
unsigned long,
unsigned long);
479 void gsd_3darrow(
float *,
unsigned long,
float,
float,
float *,
float);
480 int gsd_scalebar(
float *,
float, GLuint,
unsigned long,
unsigned long);
490 void gsd_disc(
float,
float,
float,
float);
520 int gsd_checkpoint(
float[4],
int[4],
int[4],
double[16],
double[16]);
529 int gsd_getimage(
unsigned char **,
unsigned int *,
unsigned int *);
542 int gsd_writeView(
unsigned char **,
unsigned int,
unsigned int);
554 int gsd_wall(
float *,
float *,
float *);
599 int segs_intersect(
float,
float,
float,
float,
float,
float,
float,
float,
681 void P_scale(
float,
float,
float);
685 void P_rot(
float,
char);
732 GLuint
gsd_put_legend(
const char *, GLuint,
int,
int *,
float *,
int *);
int gs_get_att_type(geosurf *, int)
Get attribute type.
int GVL_slice_num_slices(int)
Get number or slices.
int GS_look_here(int, int)
Send screen coords sx and sy, lib traces through surfaces; sets new center to point of nearest inters...
int gsd_triangulated_wall(int, int, geosurf *, geosurf *, Point3 *, Point3 *, float *)
ADD.
void GK_do_framestep(int, int)
Moves the animation to frame number "step".
int GV_vect_exists(int)
Check if vector set exists.
int gvld_isosurf(geovol *)
Draw volume isosurfaces.
void gvl_align_data(int, unsigned char **)
Append data to buffer.
int GS_update_normals(int)
Update normals.
int GS_get_SDsurf(int *)
Get ?
int GVL_isosurf_get_att(int, int, int, int *, float *, char *)
Get isosurface attributes.
void gsd_cube(float *, unsigned long, float)
Draw cube.
Keylist * gk_copy_key(Keylist *)
Copy keyframes.
int GS_get_twist(void)
Get twist value.
int P_popmatrix(void)
Pop top of matrix stack, placing it into the current transformation matrix.
void gsd_endlist(void)
End list.
int GS_v3norm(float *)
Change v1 so that it is a unit vector (2D)
void gsd_fringe_horiz_line(float, geosurf *, int, int)
Draw fringe outline in x direction.
void GS_v3mult(float *, float)
Multiple vectors.
int gsbm_xor_masks(struct BM *, struct BM *)
Mask bitmap (mask type XOR)
void gv_free_vectmem(geovect *)
Free allocated memory.
int gsd_make_nice_number(float *)
ADD.
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.
void GP_get_trans(int, float *, float *, float *)
Get transformation params.
int GVL_Set_ClientData(int, void *)
Set client data for volume set.
int gvl_file_newh(const char *, IFLAG)
Get handle for given file name and type.
void GS_set_cxl_func(void(*)(void))
Set cxl function.
void GS_set_rotation(double, double, double, double)
Set rotation params.
int GVL_delete_vol(int)
Delete volume set from list.
int gsd_writeView(unsigned char **, unsigned int, unsigned int)
Write view.
void GS_get_modelposition1(float *)
int gvl_file_end_read(geovol_file *)
End read - free buffer memory.
int gs_malloc_lookup(geosurf *, int)
Allocate attribute lookup.
int gs_point_is_masked(geosurf *, float *)
Check if point is masked.
void GS_draw_X(int, float *)
Draw place marker.
int gv_decimate_lines(geovect *)
Decimate line.
geosite * gp_get_prev_site(int)
Get previous geosite struct from list.
int GS_new_surface(void)
Add new surface.
void gsd_remove_curr(void)
Remove current label.
unsigned long gk_get_mask_sofar(float, Keylist *)
Get mask value.
int GP_delete_site(int)
Delete registrated point set.
GLuint gsd_put_legend(const char *, GLuint, int, int *, float *, int *)
Put legend.
int GS_get_region(float *, float *, float *, float *)
Get 2D region extent.
int gk_draw_path(Viewnode *, int, Keylist *)
Draw path.
void gpd_obj(geosurf *, gvstyle *, Point3)
Draw point representing object.
int get_mapatt(typbuff *, int, float *)
Get map attributes.
void GK_show_vect(int)
Show vector sets.
int gvl_slice_freemem(geovol_slice *)
Free geovol_slice struct.
int gvl_file_start_read(geovol_file *)
Start read - allocate memory buffer a read first data into buffer.
int gsd_surf_func(geosurf *, int(*)(void))
void gsd_endtstrip(void)
ADD.
void gsd_diamond(float *, unsigned long, float)
Draw diamond symbol.
void print_256lookup(int *)
Debugging, 256 integer values from buffer.
void GS_alldraw_cplane_fences(void)
Draw all cplace fences ?
int gsd_zup_twist(geoview *)
ADD.
void gsd_endtfan(void)
ADD.
void GVL_get_dims(int, int *, int *, int *)
Get volume dimensions.
void GS_zoom_setup(int *, int *, int *, int *, int *, int *)
Get zoom setup.
void GVL_slice_get_drawres(int, int *, int *, int *)
Get draw resolution of slice.
void gsd_endtmesh(void)
ADD.
int GS_get_cat_at_xy(int, int, char *, float, float)
Get surface category on given position.
int GP_new_site(void)
Create new point set.
geosite * gp_get_new_site(void)
Create new geosite instance and add it to list.
Viewnode * gk_make_linear_framesfromkeys(Keylist *, int, int, int)
Generate viewnode from keyframe list (linear interpolation)
void gsd_swaptmesh(void)
ADD.
int gvl_get_zextents(geovol *, float *, float *)
Get volume z-extent value.
void GS_draw_all_list(void)
Draw all glLists.
int gs_get_zextents(geosurf *, float *, float *, float *)
Get z-extent values.
void GS_set_fov(int)
Set field of view.
void gsd_pushmatrix(void)
Push the current matrix stack.
void * GP_Get_ClientData(int)
Get client data.
void gsd_real2surf(geosurf *, Point3)
Convert real to surface coordinates.
void print_frto(float(*)[4])
Debugging, print 'from/to' model coordinates to stderr.
int GS_get_norm_at_xy(int, float, float, float *)
Get surface normal at x,y (real coordinates)
int GVL_isosurf_set_att_const(int, int, int, float)
Set constant isosurface attribute.
void GK_set_numsteps(int)
Set the number of frames to be interpolated from keyframes.
void primitive_cylinder(unsigned long, int)
Primitives only called after transforms.
void GS_get_viewdir(float *)
Get viewdir.
void gsd_backface(int)
ADD.
int gsds_newh(const char *)
Get handle to gsds.
int GS_write_tif(const char *)
Write data to tif file.
void gsd_box(float *, int, float *)
Draw box.
void gsd_line_onsurf(geosurf *, float *, float *)
Line on surface, fix z-values.
geosurf * gs_get_prev_surface(int)
Get previous geosurf struct.
int * GS_get_surf_list(int *)
Get surface list.
char * gvl_file_get_name(int)
Get file name for given handle.
int GV_Set_ClientData(int, void *)
Set client data.
void GK_print_keys(const char *)
Print keyframe info.
void gsd_plus(float *, int, float)
ADD.
void GS_set_infocus(void)
Set focus.
int GS_get_zextents(int, float *, float *, float *)
Get z-extent for a single surface.
void print_bm(struct BM *)
Print bitmap to stderr.
void GS_set_draw(int)
Sets which buffer to draw to.
void GS_draw_cplane(int)
Draw cplace.
void gsd_scale(float, float, float)
Multiply the current matrix by a general scaling matrix.
int gvl_isosurf_set_att_map(geovol_isosurf *, int, const char *)
Set attribute map.
int GS_get_light_reset(void)
unsigned int GS_default_draw_color(void)
Get default draw color.
void gsd_draw_cplane(int)
Draw cplane.
int GV_new_vector(void)
Register new vector set.
int GP_surf_is_selected(int, int)
Check if surface is selected.
int GV_delete_vector(int)
Delete vector set from list.
int gsds_free_datah(int)
Free allocated dataset.
int GVL_isosurf_move_up(int, int)
Move up isosurface in list.
void GK_update_tension(void)
Update tension.
int get_horz_intersects(geosurf *, float *, float *, float *)
Get horizontal intersects.
void gsd_getwindow(int *, int *, double *, double *)
Get viewport.
void GS_get_from(float *)
Get viewpoint 'from' position.
void gvd_draw_lineonsurf(geosurf *, float *, float *, int)
Draw line on surface.
int gvl_slice_init(geovol_slice *)
Initialize geovol_slice struct.
void GK_show_site(int)
Show point sets.
int gvld_vol(geovol *)
Draw volume set (slices and isosurfaces)
int gs_getall_surfaces(geosurf **)
Get array of geosurf structs.
int gvl_file_get_data_type(geovol_file *)
Get data type for given handle.
void gsd_do_scale(int)
Set current scale.
struct BM * gsbm_make_mask(typbuff *, float, int, int)
Do combining of bitmaps, make bitmaps from other data w/maskval.
int GV_surf_is_selected(int, int)
Check if surface is selected.
int get_txtdescender(void)
Get text descender.
int Gvl_get_color_for_value(void *, float *)
Get color for value.
void gsd_update_cpnorm(int)
ADD.
void gsdiff_set_SDref(geosurf *)
ADD.
void GS_alldraw_wire(void)
Draw all wires.
int GS_dv3norm(double *)
Changes v1 so that it is a unit vector.
void gsd_def_clipplane(int, double *)
Define clip plane.
int GS_v2norm(float *)
Change v1 so that it is a unit vector (3D)
void GS_set_rotation_matrix(double *)
Set rotation matrix.
int gvl_getall_vols(geovol **)
Get all volumes.
int gvl_file_set_mode(geovol_file *, IFLAG)
Set read mode.
int GS_set_SDscale(float)
Set ?
void GK_showtension_stop(void)
Show tension stop ?
int GS_get_wire_color(int, int *)
Get wire color.
geovol * gvl_get_vol(int)
Get volume set structure.
void GS_init_rotation(void)
Reset scene rotation.
void gsd_x(geosurf *, float *, int, float)
Draw X symbol.
int gvld_slices(geovol *)
Draw slices.
void GS_v3sub(float *, float *)
Subtract vectors.
void gsd_bgnqstrip(void)
ADD.
int GV_get_trans(int, float *, float *, float *)
Get trans ?
void gv_update_drapesurfs(void)
Update drape surfaces.
geovol_isosurf * gvl_isosurf_get_isosurf(int, int)
Get isosurface of given volume set.
typbuff * gsds_get_typbuff(int, IFLAG)
Get data buffer.
void GK_showtension_start(void)
void do_label_display(GLuint, float *, const char *)
Display label.
void GS_setlight_color(int, float, float, float)
Set light color.
int Gvl_load_colors_data(void **, const char *)
Load color table.
void GVL_set_draw_wire(int, int)
Set drawing wire box.
void gsd_draw_cplane_fence(geosurf *, geosurf *, int)
int gvl_slices_calc(geovol *)
Calculate slices for given volume set.
void gsd_draw_box(float *, unsigned long, float)
Draw box.
int P3toPlane(Point3, Point3, Point3, float *)
Define plane.
void Gs_pack_colors(const char *, int *, int, int)
Pack color table.
void GS_v3mag(float *, float *)
Magnitude of vector.
void gsd_cplane_off(int)
Turn off clip plane.
void gsd_model2surf(geosurf *, Point3)
Convert model to surface coordinates.
int GP_get_zmode(int, int *)
Get z-mode.
int GS_get_selected_point_on_surface(int, int, int *, float *, float *, float *)
Get selected point of surface.
int * GVL_get_vol_list(int *)
Get list of loaded volume sets.
double GS_get_aspect(void)
Get aspect value.
int XY_intersect_plane(float *, float *)
Check for intersection (point and plane)
int GS_load_att_map(int, const char *, int)
Load raster map as attribute.
int gv_num_points(geovect *)
Get number of points in vector.
int gs_get_yrange(float *, float *)
Get y-range.
int * GV_get_vect_list(int *)
Get list of vector sets.
int gvl_isosurf_set_att_changed(geovol_isosurf *, int)
Set attribute changed.
int GP_unset_style_thematic(int)
Make style for thematic mapping inactive.
int GV_unset_style_thematic(int)
Make style for thematic mapping inactive.
void gsd_shademodel(int)
Set shaded model.
int GS_write_ppm(const char *)
Save current GL screen to ppm file.
int GVL_slice_get_drawmode(int, int *)
Get slice draw mode.
int gsd_wire_surf_const(geosurf *, float)
ADD.
int GVL_isosurf_num_isosurfs(int)
Get number of available isosurfaces.
int GS_get_zrange(float *, float *, int)
Get z-extent for all loaded surfaces.
int gvl_file_get_file_type(geovol_file *)
Get file type for given handle.
int GS_new_light(void)
Add new model light.
int gs_masked(typbuff *, int, int, int)
Should only be called when setting up the current mask (gs_bm.c)
int gvl_isosurf_init(geovol_isosurf *)
Initialize geovol_isosurf struct.
int GK_set_interpmode(int)
Set interpolation mode.
int RayCvxPolyhedronInt(Point3, Point3, double, Point4 *, int, double *, int *)
Ray-Convex Polyhedron Intersection Test.
int Gs_save_3dview(const char *, geoview *, geodisplay *, struct Cell_head *, geosurf *)
int order_intersects(geosurf *, Point3, Point3, int, int, int)
ADD.
void gv_set_drapesurfs(geovect *, int *, int)
Set drape surfaces for vector set.
int gvld_wire_isosurf(geovol *)
int GS_draw_legend(const char *, GLuint, int, int *, float *, int *)
Draw legend.
int gvl_get_yrange(float *, float *)
Get volume y-range value.
void gsd_fringe_vert_poly(float, geosurf *, int, int)
Draw fringe outline in y direction.
void * GVL_get_window(void)
Get window.
void GS_delete_list(GLuint)
Delete pre-defined list.
double lin_interp(float, float, float)
Linear interpolation.
int gpd_3dsite(geosite *, float, float, int)
int gvd_vect(geovect *, geosurf *, int)
Draw vector set.
int GVL_load_vol(int, const char *)
Load 3d raster map to volume set.
int gsd_get_cplanes(Point4 *)
Get cplaces.
float GS_P2distance(float *, float *)
Calculate distance in plane.
int gvl_isosurf_set_att_const(geovol_isosurf *, int, float)
Set isosurface attribute constant.
int gs_clip_segment(geosurf *, float *, float *, float *)
Clip segment.
int GP_load_site(int, const char *)
Load point set from file.
int GS_delete_surface(int)
Delete surface.
void gsbm_zero_mask(struct BM *)
Zero mask.
int gs_get_zrange(float *, float *)
Get z-range.
void Gs_pack_colors_float(const char *, float *, int *, int, int)
Pack color table (floating-point map)
int GP_select_surf(int, int)
Select surface for given point set.
int GVL_slice_del(int, int)
Delete slice.
void GS_set_cancel(int)
Set cancel.
int gs_los_intersect(int, float **, float *)
Crude method of intersecting line of sight with closest part of surface.
void gsd_sphere(float *, float)
ADD.
void GV_alldraw_fastvect(void)
Draw all loaded vector sets (fast mode)
double Gs_distance(double *, double *)
Calculates distance in METERS between two points in current projection (2D)
void gvl_write_char(int, unsigned char **, unsigned char)
ADD.
void gsd_remove_all(void)
Remove all labels from display list.
int Gp_set_color(const char *, geopoint *)
int GS_get_longdim(float *)
Get largest dimension.
int GS_setall_drawmode(int)
Set all draw-modes.
void GS_set_att_defaults(float *, float *)
Set default attributes for map objects.
int GVL_isosurf_set_drawmode(int, int)
Set isosurface draw mode.
void gsd_circ(float, float, float)
ADD.
int get_vert_intersects(geosurf *, float *, float *, float *)
ADD.
void GK_show_vol(int)
Show volumes.
void GVL_draw_vol(int)
Draw volume set.
geoline * Gv_load_vect(const char *, int *)
Load vector map to memory.
int gsd_wire_surf_func(geosurf *, int(*)(void))
int GVL_isosurf_set_att_map(int, int, int, const char *)
Set isosurface map attribute.
void GS_getlight_color(int, float *, float *, float *)
Get light color.
int gs_get_att_src(geosurf *, int)
Get attribute source.
void GS_get_from_real(float *)
Get viewpoint 'from' real coordinates.
int gsds_findh(const char *, IFLAG *, IFLAG *, int)
Get handle to gsds.
geosite * gp_get_last_site(void)
Get last point set.
int GVL_isosurf_set_maskmode(int, int, int)
Set mask attribute mode.
void dir_to_slope_aspect(float *, float *, float *, int)
ADD.
void gsd_bgnpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
void gvl_file_get_min_max(geovol_file *, double *, double *)
Get minimum and maximum value in volume file.
int GS_draw_nline_onsurf(int, float, float, float, float, float *, int)
Draw multiline on surface.
int Gs_update_attrange(geosurf *, int)
Update no_zero ranges for attribute (actually no_null now)
int GS_load_3dview(const char *, int)
Load 3d view.
int Point_on_plane(Point3, Point3, Point3, Point3)
Check if point is on plane.
void GS_set_focus(float *)
Set focus.
void gs_get_databounds_planes(Point4 *)
Get data bounds for plane.
size_t gsds_alloc_typbuff(int, int *, int, int)
Allocates correct buffer according to type, keeps track of total mem.
void GS_v3add(float *, float *)
Sum vectors.
void GVL_draw_wire(int)
Draw volume in wire mode.
void gsd_3dcursor(float *)
Draw 3d cursor.
int GV_load_vector(int, const char *)
Load vector set.
void gsd_surf2real(geosurf *, Point3)
Convert surface to real coordinates.
int gsd_wall(float *, float *, float *)
ADD.
int GS_set_drawres(int, int, int, int, int)
Set draw resolution for surface.
int GVL_slice_set_drawmode(int, int)
Set slice draw mode.
int gs_calc_normals(geosurf *)
Calculate normals.
int GS_v3normalize(float *, float *)
Change v2 so that v1v2 is a unit vector.
int Gs_loadmap_as_short(struct Cell_head *, const char *, short *, struct BM *, int *)
Load raster map as integer map.
void * GVL_Get_ClientData(int)
Get client data.
int GS_save_3dview(const char *, int)
Save 3d view.
int GS_set_att_const(int, int, float)
Set attribute constant.
void GS_get_trans(int, float *, float *, float *)
Get translation values (surface position)
int gs_get_yextents(geosurf *, float *, float *)
Get y-extent values.
int segs_intersect(float, float, float, float, float, float, float, float, float *, float *)
Line intersect.
void gs_delete_surf(int)
Remove geosurf struct from list.
int GS_get_distance_alongsurf(int, float, float, float, float, float *, int)
Measure distance "as the ball rolls" between two points on surface.
int GS_get_fov(void)
Get field of view.
int GS_get_val_at_xy(int, int, char *, float, float)
Get RGB color at given point.
void GS_draw_surf(int)
Draw surface.
int GS_transp_is_set(void)
Check if transparency is set.
int calc_norm(geosurf *, int, int, unsigned int)
Calculate normals.
void GS_unset_cplane(int)
Unset clip place (turn off)
int gvl_get_yextents(geovol *, float *, float *)
Get volume y-extent value.
int GVL_slice_set_pos(int, int, float, float, float, float, float, float, int)
Get slice position.
void gsd_bgntstrip(void)
ADD.
geovol * gvl_get_prev_vol(int)
Get previous volume.
void GS_libinit(void)
Initialize OGSF library.
void P_rot(float, char)
Rotate matrix.
int gsd_coarse_surf_map(geosurf *)
Draw coarse surface.
void gsd_deletelist(GLuint, int)
void gsd_bgnlist(int, int)
ADD.
void gs_err(const char *)
void init_vars(geosurf *)
Init variables.
int gp_set_defaults(geosite *)
Set default value for geosite struct.
void GS_set_Narrow(int *, int, float *)
Set decoration, north arrow ??
int gsds_set_changed(int, IFLAG)
ADD.
int GVL_isosurf_set_flags(int, int, int)
Set isosurface flags.
int GVL_get_volname(int, char *)
Get volume set name.
int gp_init_site(geosite *)
Initialize geosite struct.
void gsd_init_lightmodel(void)
Initialize model light.
int GS_get_fencecolor(void)
Get fence color.
int gsd_getshademodel(void)
Get shaded model.
void gsd_drawsphere(float *, unsigned long, float)
Draw sphere.
int gs_get_datacenter(float *)
Get data center point.
void print_site_fields(geosite *)
void gsd_switchlight(int, int)
Switch light on/off.
int GP_attmode_color(int, const char *)
void GS_set_twist(int)
Set viewpoint twist value.
int GP_set_style_thematic(int, int, const char *, const char *, const char *, const char *, struct Colors *)
Set point set style for thematic mapping.
int gsd_wire_arrows(geosurf *)
ADD.
void GS_setlight_position(int, float, float, float, int)
Set light position.
int GVL_isosurf_add(int)
Add isosurface.
int GP_set_style(int, int, int, float, int)
Set point style.
void GS_getlight_position(int, float *, float *, float *, int *)
Get light position.
int seg_intersect_vregion(geosurf *, float *, float *)
Check if segment intersect vector region.
int GVL_isosurf_get_flags(int, int, int *)
Get isosurface flags.
int gsbm_and_masks(struct BM *, struct BM *)
Mask bitmap (mask type ADD)
int Gs_loadmap_as_char(struct Cell_head *, const char *, unsigned char *, struct BM *, int *)
Load raster map as integer map.
int gsd_checkpoint(float[4], int[4], int[4], double[16], double[16])
ADD.
int gsds_free_data_buff(int, int)
Free allocated buffer.
void GK_show_path(int)
Draw the current path.
size_t free_data_buffs(dataset *, int)
Free data buffer.
void gsd_checkwindow(int *, int *, double *, double *)
void gsdiff_set_SDscale(float)
Set scale.
int gsd_makelist(void)
ADD.
int gvl_isosurf_calc(geovol *)
Fill data structure with computed isosurfaces polygons.
void gsd_calllist(int)
ADD.
void GS_set_wire_color(int, int)
Set wire color.
int gv_num_vects(void)
Get number of loaded vector sets.
int V3Cross(Point3, Point3, Point3)
Get cross product.
int GP_Set_ClientData(int, void *)
Set client data.
int GP_get_sitename(int, char **)
Get point set filename.
void GS_get_dims(int, int *, int *)
Get dimension of surface.
void gsd_def_cplane(int, float *, float *)
Define cplace.
int GVL_slice_set_transp(int, int, int)
Set slice trans ?
int GVL_get_region(float *, float *, float *, float *, float *, float *)
Get region extent settings.
void gsd_swapbuffers(void)
Swap buffers.
void GS_v3eq(float *, float *)
Copy vector values.
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.
size_t gs_malloc_att_buff(geosurf *, int, int)
Allocate attribute buffer.
int gsd_get_txtwidth(const char *, int)
Get text width.
int gv_free_vect(geovect *)
Free allocated memory for geovect struct.
int in_vregion(geosurf *, float *)
ADD.
int GV_num_vects(void)
Get number of available vector sets.
void GS_set_viewdir(float *)
Set viewdir.
int GS_draw_cplane_fence(int, int, int)
Draw cplace fence ?
void gsd_endqstrip(void)
ADD.
int GS_setall_drawres(int, int, int, int)
Set all draw resolutions.
void GS_get_zrange_nz(float *, float *)
Get Z extents for all loaded surfaces.
int Gs_loadmap_as_bitmap(struct Cell_head *, const char *, struct BM *)
Load raster map as integer map.
int gsd_ortho_wall(int, int, geosurf **, Point3 **, float *)
ADD.
int gsd_get_txtheight(int size)
Get text height.
void GS_unset_SDsurf(void)
Unset Scaled Difference surface.
void gs_set_defaults(geosurf *, float *, float *)
Set default attribute values.
char * gsds_get_name(int)
Get name.
int gsd_wire_surf_map(geosurf *)
ADD.
int GS_set_SDsurf(int)
Set surface as Scaled Difference surface.
geovect * gv_get_last_vect(void)
Get last loaded vector set.
void sub_Vectmem(int)
Tracking memory.
int GVL_isosurf_unset_att(int, int, int)
Unset isosurface attributes.
void GS_draw_line_onsurf(int, float, float, float, float)
Draw line on surface.
void gv_delete_vect(int)
Delete vector set (unload)
int gs_setall_norm_needupdate(void)
Set for geosurf need-to-update mark.
void GS_moveto(float *)
Move viewpoint.
int gvl_isosurf_freemem(geovol_isosurf *)
Free geovol_isosurf struct.
int GVL_slice_move_down(int, int)
Move down slice.
int GS_num_surfs(void)
Get number of surfaces.
void GS_unset_rotation(void)
Stop scene rotation.
int GS_Set_ClientData(int, void *)
Set client data.
int gs_mapcolor(typbuff *, gsurf_att *, int)
Call this one when you already know att_src is MAP_ATT.
int GVL_num_vols(void)
Get number of loaded volume sets.
void gsd_cplane_setrot(int, float, float, float)
ADD.
int Gs_get_cat_label(const char *, int, int, char *)
Get categories/labels.
void GS_get_modelposition(float *, float *)
Retrieves coordinates for lighting model position, at center of view.
void GV_alldraw_vect(void)
Draw all loaded vector sets.
int gs_num_datah_reused(int)
Get number of reused values.
int gvld_wire_vol(geovol *)
Draw volume in wire mode (bounding box)
void gsd_get_cplanes_state(int *)
Get cplane state.
int gsd_nline_onsurf(geosurf *, float *, float *, float *, int)
Multiline on surface, fix z-values.
void GK_set_tension(float)
Set value for tension when interpmode is KF_SPLINE.
void gsd_draw_gyro(float *, unsigned long, float)
Draw gyro.
int GP_unselect_surf(int, int)
Unselect surface.
int gs_update_curmask(geosurf *)
Update current maps.
void show_colormode(void)
Print color mode to stderr.
int GS_write_zoom(const char *, unsigned int, unsigned int)
Write zoom to file.
int GVL_isosurf_del(int, int)
Delete isosurface.
int GVL_slice_get_pos(int, int, float *, float *, float *, float *, float *, float *, int *)
Get slice position.
geovect * gv_get_vect(int)
Get vector set.
void GS_draw_lighting_model(void)
Draw lighting model.
int GVL_vol_exists(int)
Check if volume set exists.
float gsdiff_get_SDscale(void)
Get scale.
int GVL_slice_move_up(int, int)
Move up slice.
int GV_select_surf(int, int)
Select surface identified by hs to have vector identified by hv draped over it.
void gsd_color_func(unsigned int)
Set current color.
Point3 * gsdrape_get_segments(geosurf *, float *, float *, int *)
ADD.
int GVL_isosurf_set_drawres(int, int, int, int)
Set isosurface draw resolution.
void gp_set_drapesurfs(geosite *, int *, int)
int gvld_slice(geovol *, int)
Draw slice.
void GS_set_cplane(int)
Set cplace.
void GVL_set_trans(int, float, float, float)
Set trans ?
int gvl_free_vol(geovol *)
Free geovol struct.
int gs_set_att_src(geosurf *, int, int)
Set attribute source.
void print_realto(float *)
Debugging, print 'to' real coordinates to stderr.
void gs_init(void)
Initialize library.
void GS_get_to_real(float *)
Get 'to' real coordinates.
int GP_get_style(int, int *, int *, float *, int *)
Get point set style.
void GVL_alldraw_vol(void)
Draw all volume sets.
int GP_str_to_marker(const char *)
Determine point marker symbol for string.
void gp_free_sitemem(geosite *)
Free geosite (lower level)
void gsd_backbuffer(void)
Draw to the back buffer.
void gk_free_key(Keylist *)
Free keyframe list.
int GS_unset_att(int, int)
Unset attribute.
geosite * gp_get_site(int)
Get geosite struct.
int GVL_slice_set_drawres(int, int, int, int)
Set slice draw resolution.
int gs_get_xrange(float *, float *)
Get x-range.
void gsd_diamond_lines(void)
Draw diamond lines.
void GVL_alldraw_wire(void)
Draw all volume sets in wire mode.
geovol * gvl_get_last_vol(void)
Get last volume set from the list.
geovol_slice * gvl_slice_get_slice(int, int)
Get geovol_slice struct.
int gvl_get_xextents(geovol *, float *, float *)
Get volume x-extent value.
float gv_line_length(geoline *)
Get line width.
void gsd_translate(float, float, float)
Multiply the current matrix by a translation matrix.
void GS_lights_on(void)
Switch on all lights.
GLuint gsd_set_font(const char *)
int gvl_file_set_slices_param(geovol_file *, int, int)
Set parameters for slice reading.
Viewnode * gk_make_framesfromkeys(Keylist *, int, int, int, float)
Generate viewnode from keyframes.
geovect * gv_get_new_vect(void)
Allocate memory for new vector set.
void GK_update_frames(void)
Recalculate path using the current number of frames requested.
geovol * gvl_get_new_vol(void)
Allocate new volume set and add it to the list.
void gsd_get_zup(geoview *, double *)
Get z-up vector (z-direction)
int gs_set_att_type(geosurf *, int, int)
Set attribute type.
int gsd_getimage(unsigned char **, unsigned int *, unsigned int *)
Get image of current GL screen.
void GVL_init_region(void)
Initialize 3D region.
int gvld_wind3_box(geovol *)
Draw volume bounding box.
unsigned int GS_background_color(void)
Get background color.
void GS_set_focus_center_map(int)
Set focus to map center.
int gsd_wire_surf(geosurf *)
Draw surface wire.
void P_scale(float, float, float)
ADD.
void GS_alldraw_surf(void)
Draw all surfaces.
int gln_num_points(geoline *)
Get number of line vertices.
void GV_set_trans(int, float, float, float)
Set trans ?
int GS_get_exag_guess(int, float *)
Get exag-value guess.
int GV_get_style(int, int *, int *, int *, int *)
Get vector style.
void print_view_fields(geoview *)
Debugging, print geoview fields to stderr.
void GS_set_light_reset(int)
void gsd_popmatrix(void)
Pop the current matrix stack.
int gs_get_zrange0(float *, float *)
Get z-range.
void gsd_real2model(Point3)
Convert real to model coordinates.
geopoint * Gp_load_sites(const char *, int *, int *)
Load to points to memory.
int GS_get_nozero(int, int, int *)
Get no-zero ?
int Gs_build_256lookup(const char *, int *)
Build color table (256)
int GV_set_style_thematic(int, int, const char *, const char *, struct Colors *)
Set vector set style for thematic mapping.
void GVL_libinit(void)
Library initialization for volumes.
int get_txtxoffset(void)
Get text offset.
void gsd_flush(void)
Mostly for flushing drawing commands across a network.
int gsbm_or_masks(struct BM *, struct BM *)
Mask bitmap (mask type OR)
void interp_first_last(geosurf *, float *, float *, Point3, Point3)
ADD.
void gsd_set_view(geoview *, geodisplay *)
Set view.
void GS_init_view(void)
Init viewpoint.
int GVL_isosurf_move_down(int, int)
Move down isosurface in list.
void GS_switchlight(int, int)
Switch on/off light.
int gvl_isosurf_get_att_src(geovol_isosurf *, int)
Get attribute source.
void GS_set_global_exag(float)
Set global z-exag value.
int Gs_loadmap_as_float(struct Cell_head *, const char *, float *, struct BM *, int *)
Load raster map as floating point map.
void correct_twist(Keylist *)
Correct twist value.
void gsd_fringe_vert_line(float, geosurf *, int, int)
Draw fringe outline in y direction.
int gvl_file_is_null_value(geovol_file *, void *)
Check for null value.
int GK_add_key(float, unsigned long, int, float)
Add keyframe.
void gsd_viewport(int, int, int, int)
Set the viewport.
void GS_v3cross(float *, float *, float *)
Get the cross product v3 = v1 cross v2.
void gsd_zwritemask(unsigned long)
Write out z-mask.
geovect * gv_get_prev_vect(int)
Get previous vector set.
Point3 * gsdrape_get_allsegments(geosurf *, float *, float *, int *)
Get all segments.
void GS_set_cplane_rot(int, float, float, float)
Set cplace rotation.
void GS_moveto_real(float *)
Move position to (real)
void gsd_linewidth(short)
Set width of rasterized lines.
int gsds_get_changed(int)
ADD.
void gvl_delete_vol(int)
Remove volume set from list.
void GS_get_to(float *)
Get 'to' model coordinates.
int gvl_file_get_value(geovol_file *, int, int, int, void *)
Get value for volume file at x, y, z.
int gv_init_vect(geovect *)
Initialize geovect struct.
void gsd_endline(void)
End line.
void GP_set_trans(int, float, float, float)
Set transformation params.
void GVL_set_focus_center_map(int)
Set focus on map center.
int gs_num_surfaces(void)
Get number of surfaces.
void gsd_finish(void)
Finish.
int gsdrape_set_surface(geosurf *)
ADD.
int GS_update_curmask(int)
Update current mask.
geosurf * gs_get_last_surface(void)
Get last allocated geosurf struct from list.
void gsd_set_clipplane(int, int)
Set clip plane.
int gsd_surf_const(geosurf *, float)
Using tmesh - not confident with qstrips portability.
void GS_draw_wire(int)
Draw surface wire.
unsigned char gvl_read_char(int, const unsigned char *)
Read char.
void gsd_fringe_horiz_poly(float, geosurf *, int, int)
Draw fringe polygon in x direction.
int gs_distance_onsurf(geosurf *, float *, float *, float *, int)
Calculate distance on surface.
void print_vol_fields(geovol *)
Debug volume fields.
int gsd_north_arrow(float *, float, GLuint, unsigned long, unsigned long)
Draw North Arrow takes OpenGL coords and size.
int gsds_get_type(int)
ADD.
int viewcell_tri_interp(geosurf *, typbuff *, Point3, int)
ADD.
void primitive_cone(unsigned long)
Primitives only called after transforms.
void * GV_Get_ClientData(int)
Get client data.
int gsd_scalebar_v2(float *, float, GLuint, unsigned long, unsigned long)
void gs_free_unshared_buffs(geosurf *)
Free unshared buffers of geosurf struct.
void GS_set_exag(int, float)
Set Z exag for surface.
void gsd_surf2model(Point3)
Convert surface to model coordinates.
int gs_init_surf(geosurf *, double, double, int, int, double, double)
Initialize allocated geosurf struct.
void gsd_colormode(int)
Set color mode.
geosurf * gsdiff_get_SDref(void)
ADD.
int GV_set_style(int, int, int, int, int)
Set vector style.
void GS_set_trans(int, float, float, float)
Set translation (surface position)
void GS_clear(int)
Clear view.
int P_pushmatrix(void)
Push current transformation matrix onto matrix stack.
void GS_get_scale(float *, float *, float *, int)
Get axis scale.
void gvl_free_volmem(geovol *)
Free geovol struct memory.
void gsd_bgntfan(void)
ADD.
void P_transform(int, float(*)[4], float(*)[4])
Transform array of vectors using current T matrix.
void gsd_set_material(int, int, float, float, int)
Set material.
int GS_get_SDscale(float *)
Get ?
int gk_viable_keys_for_mask(unsigned long, Keylist *, Keylist **)
ADD.
int GVL_isosurf_get_drawmode(int, int *)
Get isosurface draw mode.
void GS_draw_lighting_model1(void)
Draw lighting model.
void GS_set_nofocus(void)
Unset focus.
int gpd_2dsite(geosite *, geosurf *, int)
void gsd_disc(float, float, float, float)
ADD.
void gsd_bgn_legend_viewport(GLint, GLint, GLint, GLint)
ADD.
int gvld_wire_slices(geovol *)
Draw wire slices.
int GP_num_sites(void)
Get number of loaded point sets.
int GP_set_zmode(int, int)
Set z mode for point set.
int GS_coordpair_repeats(float *, float *, int)
ADD.
int * GP_get_site_list(int *)
Get list of point sets.
typbuff * gs_get_att_typbuff(geosurf *, int, int)
Get attribute data buffer.
void GV_draw_vect(int)
Draw vector set.
void gsd_display_fringe(geosurf *, unsigned long, float, int[4])
Display fridge.
void GS_set_nozero(int, int, int)
Set no-zero ?
int GS_v3dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3.
geovol_file * gvl_file_get_volfile(int)
Get geovol_file structure for given handle.
void GV_draw_fastvect(int)
Draw vector set (fast mode)
int _viewcell_tri_interp(geosurf *, Point3)
ADD.
int gvl_init_vol(geovol *, double, double, double, int, int, int, double, double, double)
Initialize geovol structure.
void gsd_end_legend_viewport(void)
ADD.
int GS_get_att(int, int, int *, float *, char *)
Get attributes.
void gsd_draw_asterisk(float *, unsigned long, float)
Draw asterisk.
int Gvl_unload_colors_data(void *)
Unload color table.
int GS_is_masked(int, float *)
Check if point is masked ?
int gs_get_data_avg_zmax(float *)
Get average z-max value.
void gsd_3darrow(float *, unsigned long, float, float, float *, float)
Draw 3d north arrow.
void gsd_bgnline(void)
Begin line.
void GK_clear_keys(void)
Deletes all keyframes, resets field masks.
int gsd_get_los(float(*)[3], short, short)
ADD.
int GVL_isosurf_get_maskmode(int, int, int *)
Get isosurface mask mode.
void gs_set_maskmode(int)
Set geosurf mask mode.
int GK_move_key(float, float, float)
Move keyframe.
float gsdiff_do_SD(float, int)
ADD.
void GS_done_draw(void)
Draw done, swap buffers.
void GS_get_rotation_matrix(double *)
Get rotation matrix.
void GS_set_viewport(int, int, int, int)
Set viewport.
int get_diag_intersects(geosurf *, float *, float *, float *)
int Gs_numtype(const char *, int *)
Get map data type.
int gsd_surf_map(geosurf *)
Draw surface using triangle fan instead of strip.
void GS_draw_flowline_at_xy(int, float, float)
Draw flow-line on surace.
int gv_set_defaults(geovect *)
Set attributes of vector set to default values.
void gk_follow_frames(Viewnode *, int, Keylist *, int, int, int, unsigned long)
Checks key masks.
void gsd_blend(int)
Specify pixel arithmetic.
void gsd_model2real(Point3)
Convert model to real coordinates.
void GS_draw_fringe(int, unsigned long, float, int *)
Draw fringe around data (surface) at selected corners.
void gsd_rot(float, char)
ADD.
int gs_set_att_const(geosurf *, int, float)
Set attribute constant value.
void gsd_vert_func(float *)
ADD.
int gvl_get_zrange(float *, float *)
Get volume z-range value.
void gsd_bgntmesh(void)
ADD.
double get_2key_neighbors(int, float, float, int, Keylist **, Keylist **, Keylist **)
int gs_setlos_enterdata(Point3 *)
void GK_show_list(int)
Show list.
int GS_check_cancel(void)
Check for cancel.
void GS_set_fencecolor(int)
Set fence color.
int gp_free_site(geosite *)
Free allocated geosite struct.
int gs_att_is_set(geosurf *, IFLAG)
Check if attribute is set.
void gsd_check_focus(geoview *)
Check focus.
void gsd_litvert_func2(float *, unsigned long, float *)
int GV_get_vectname(int, char **)
Get vector map name.
int gvl_num_vols(void)
Get number of loaded volume sets.
int gvl_get_xrange(float *, float *)
Get volume x-range value.
void GP_alldraw_site(void)
Draw all available point sets.
int GVL_new_vol(void)
Create new volume set.
int GP_site_exists(int)
Check if point set exists.
void GS_setlight_ambient(int, float, float, float)
Set light ambient.
int gp_num_sites(void)
Get number of loaded point sets.
void GS_set_focus_real(float *)
Set real focus.
void print_surf_fields(geosurf *)
Debugging, print geosurf fields to stderr.
int GS_has_transparency(void)
Check for transparency.
int GVL_get_trans(int, float *, float *, float *)
Get trans ?
int GS_get_focus(float *)
Get focus.
int gs_mask_defined(geosurf *)
Check if mask is defined.
int gsbm_ornot_masks(struct BM *, struct BM *)
Mask bitmap (mask type ORNOT)
int GVL_slice_get_transp(int, int, int *)
Get slice trans ?
void gsd_cplane_settrans(int, float, float, float)
ADD.
void gp_delete_site(int)
Delete point set and remove from list.
int gsd_norm_arrows(geosurf *)
ADD.
int gs_los_intersect1(int, float(*)[3], float *)
Crude method of intersecting line of sight with closest part of surface.
void gsd_deflight(int, struct lightdefs *)
Define light.
int gs_init_normbuff(geosurf *)
Init geosurf normbuff.
void GS_lights_off(void)
Switch off all lights.
void GS_v2dir(float *, float *, float *)
Get a normalized direction from v1 to v2, store in v3 (2D)
int gs_get_xextents(geosurf *, float *, float *)
Get x-extent values.
int GK_delete_key(float, float, int)
void GS_get_drawres(int, int *, int *, int *, int *)
Get draw resolution of surface.
float GS_distance(float *, float *)
Calculate distance.
void gsd_bothbuffers(void)
Draw to the front and back buffers.
int gvl_file_free_datah(int)
Free geovol_file structure for given handle.
void gsd_frontbuffer(void)
Draw to the front buffer.
int gsd_surf(geosurf *)
ADD.
int gsd_arrow(float *, unsigned long, float, float *, float, geosurf *)
ADD.
void gsd_endpolygon(void)
Delimit the vertices of a primitive or a group of like primitives.
geosurf * gs_get_surf(int)
Get geosurf struct.
int GS_get_maskmode(int, int *)
Get mask mode.
void GP_draw_site(int)
Draw point set.
int Gv_load_vect_thematic(geovect *, struct Colors *)
Load styles for geolines based on thematic mapping.
int gs_free_surf(geosurf *)
Free geosurf struct.
void gp_update_drapesurfs(void)
Update drape surfaces.
double GS_geodistance(double *, double *, const char *)
Calculate distance between 2 coordinates.
void gs_put_label(const char *, GLuint, int, unsigned long, int *)
Put label.
int gsd_arrow_onsurf(float *, float *, unsigned long, int, geosurf *)
Draw north arrow on surface.
void gsd_litvert_func(float *, unsigned long, float *)
Set the current normal vector & specify vertex.
void GS_getlight_ambient(int, float *, float *, float *)
Get light ambient.
int GS_set_maskmode(int, int)
Set mask mode.
int GS_set_drawmode(int, int)
Set draw mode.
void GS_set_cplane_trans(int, float, float, float)
Set cplace trans.
int GVL_slice_add(int)
Add slice.
int gs_point_in_region(geosurf *, float *, float *)
Check if point is in region.
int Gs_loadmap_as_int(struct Cell_head *, const char *, int *, struct BM *, int *)
Load raster map as integer map.
int GS_get_drawmode(int, int *)
Get draw mode.
void gsd_call_label(void)
Call display list and draw defined labels – called from gsd_prim (gsd_call_lists)
int GV_unselect_surf(int, int)
Unselect surface.
float GS_global_exag(void)
Get global z-exag value.
int Gp_load_sites_thematic(geosite *, struct Colors *)
Load styles for geopoints based on thematic mapping.
void gsd_update_cplanes(void)
Update cplaces.
void gsd_cplane_on(int)
ADD.
void * GS_Get_ClientData(int)
Get client data.
int gsd_scalebar(float *, float, GLuint, unsigned long, unsigned long)
Draw Scalebar takes OpenGL coords and size.
void GVL_isosurf_get_drawres(int, int *, int *, int *)
Get draw resolution for isosurface.
2D/3D raster map header (used also for region)