|
@@ -15,8 +15,8 @@ Author: Bill Brown GMSL/University of Illinois
|
|
|
<b>Overview</b>
|
|
|
|
|
|
<P>
|
|
|
-The OGSF (gsurf) library, consisting of approximately 20,000 lines of
|
|
|
-C code, contains some 180 public functions and about twice as many
|
|
|
+The OGSF (gsurf) library, consisting of approximately 27,000 lines of
|
|
|
+C code, contains some 250 public functions and about twice as many
|
|
|
internal functions for run-time data storage, manipulation, querying,
|
|
|
and visualization using OpenGL. The library handles all drawing and
|
|
|
lighting operations, including use of user-defined clipping planes and
|
|
@@ -24,7 +24,7 @@ drawing various style "fences" on clipping planes when drawing
|
|
|
multiple surfaces, and treats datasets as objects which can be used
|
|
|
for various attributes of the rendering. It allows data sharing
|
|
|
(%e.g., same data for more than one attribute of same or different
|
|
|
-surfaces) , separate masking for each surface, multiple surfaces,
|
|
|
+surfaces), separate masking for each surface, multiple surfaces,
|
|
|
%vector sets, or %point sets, and will also allow multiple volumes. The
|
|
|
library provides all query features such as 3D "point on surface",
|
|
|
keyframe animation routines, and full state saving functionality.
|
|
@@ -123,107 +123,125 @@ Functions which have to do with loading & manipulating surfaces.
|
|
|
Also functions for library initialization, setting global variables,
|
|
|
viewer positioning, and lighting.
|
|
|
|
|
|
-GS_Get_ClientData()
|
|
|
+GS_alldraw_cplane_fences()
|
|
|
|
|
|
-GS_P2distance ()
|
|
|
+GS_alldraw_surf()
|
|
|
|
|
|
-GS_Set_ClientData()
|
|
|
+GS_alldraw_wire()
|
|
|
|
|
|
-GS_alldraw_cplane_fences()
|
|
|
+GS_check_cancel()
|
|
|
|
|
|
-GS_alldraw_surf()
|
|
|
+GS_clear()
|
|
|
|
|
|
-GS_alldraw_wire()
|
|
|
+GS_coordpair_repeats()
|
|
|
|
|
|
-GS_background_color()
|
|
|
+GS_delete_list()
|
|
|
|
|
|
-GS_check_cancel()
|
|
|
+GS_delete_surface()
|
|
|
|
|
|
-GS_clear(int col)
|
|
|
+GS_distance()
|
|
|
|
|
|
-GS_default_draw_color()
|
|
|
+GS_done_draw()
|
|
|
|
|
|
-GS_delete_surface(int id)
|
|
|
+GS_draw_all_list()
|
|
|
|
|
|
-GS_distance ()
|
|
|
+GS_draw_cplane()
|
|
|
|
|
|
-GS_done_draw()
|
|
|
+GS_draw_cplane_fence()
|
|
|
|
|
|
-GS_draw_X()
|
|
|
+GS_draw_flowline_at_xy()
|
|
|
|
|
|
-GS_draw_cplane()
|
|
|
+GS_draw_fringe()
|
|
|
|
|
|
-GS_draw_cplane_fence()
|
|
|
+GS_draw_legend()
|
|
|
|
|
|
-GS_draw_lighting_model()
|
|
|
+GS_draw_lighting_model()
|
|
|
|
|
|
-GS_draw_line_onsurf()
|
|
|
+GS_draw_lighting_model1()
|
|
|
|
|
|
-GS_draw_surf(int id)
|
|
|
+GS_draw_line_onsurf()
|
|
|
|
|
|
-GS_draw_wire(int id)
|
|
|
+GS_draw_list()
|
|
|
|
|
|
-GS_dv3norm()
|
|
|
+GS_draw_nline_onsurf()
|
|
|
|
|
|
-GS_geodistance()
|
|
|
+GS_draw_surf()
|
|
|
+
|
|
|
+GS_draw_wire()
|
|
|
|
|
|
-GS_get_SDscale()
|
|
|
+GS_draw_X()
|
|
|
+
|
|
|
+GS_dv3norm()
|
|
|
|
|
|
-GS_get_SDsurf()
|
|
|
+GS_geodistance()
|
|
|
|
|
|
-GS_get_aspect()
|
|
|
+GS_get_aspect()
|
|
|
|
|
|
-GS_get_att()
|
|
|
+GS_get_att()
|
|
|
|
|
|
-GS_get_cat_at_xy()
|
|
|
+GS_get_cat_at_xy()
|
|
|
|
|
|
-GS_get_dims()
|
|
|
+GS_get_dims()
|
|
|
|
|
|
GS_get_distance_alongsurf()
|
|
|
|
|
|
-GS_get_drawmode()
|
|
|
+GS_get_drawmode()
|
|
|
|
|
|
-GS_get_drawres()
|
|
|
+GS_get_drawres()
|
|
|
|
|
|
-GS_get_exag_guess()
|
|
|
+GS_get_exag_guess()
|
|
|
|
|
|
-GS_get_fencecolor()
|
|
|
+GS_get_fencecolor()
|
|
|
|
|
|
-GS_get_focus()
|
|
|
+GS_get_focus()
|
|
|
|
|
|
GS_get_fov()
|
|
|
|
|
|
-GS_get_from()
|
|
|
+GS_get_from()
|
|
|
+
|
|
|
+GS_get_from_real()
|
|
|
+
|
|
|
+GS_getlight_ambient()
|
|
|
+
|
|
|
+GS_getlight_color()
|
|
|
+
|
|
|
+GS_getlight_position()
|
|
|
+
|
|
|
+GS_get_longdim()
|
|
|
+
|
|
|
+GS_get_maskmode()
|
|
|
|
|
|
-GS_get_from_real()
|
|
|
+GS_get_modelposition()
|
|
|
|
|
|
-GS_get_longdim()
|
|
|
+GS_get_modelposition1()
|
|
|
|
|
|
-GS_get_maskmode()
|
|
|
+GS_get_norm_at_xy()
|
|
|
|
|
|
-GS_get_modelposition()
|
|
|
+GS_get_nozero()
|
|
|
|
|
|
-GS_get_nozero()
|
|
|
+GS_get_region()
|
|
|
|
|
|
-GS_get_region()
|
|
|
+GS_get_scale()
|
|
|
|
|
|
-GS_get_scale()
|
|
|
+GS_get_SDscale()
|
|
|
+
|
|
|
+GS_get_SDsurf()
|
|
|
|
|
|
GS_get_selected_point_on_surface()
|
|
|
|
|
|
-GS_get_surf_list()
|
|
|
+GS_get_to()
|
|
|
|
|
|
-GS_get_to()
|
|
|
+GS_get_to_real()
|
|
|
|
|
|
-GS_get_trans()
|
|
|
+GS_get_trans()
|
|
|
|
|
|
-GS_get_twist()
|
|
|
+GS_get_twist()
|
|
|
|
|
|
GS_get_val_at_xy()
|
|
|
|
|
|
-GS_get_viewdir()
|
|
|
+GS_get_viewdir()
|
|
|
|
|
|
-GS_get_wire_color()
|
|
|
+GS_get_wire_color()
|
|
|
|
|
|
GS_get_zextents()
|
|
|
|
|
@@ -231,53 +249,57 @@ GS_get_zrange()
|
|
|
|
|
|
GS_get_zrange_nz()
|
|
|
|
|
|
-GS_global_exag()
|
|
|
+GS_global_exag()
|
|
|
|
|
|
-GS_has_transparency()
|
|
|
+GS_has_transparency()
|
|
|
|
|
|
-GS_init_view()
|
|
|
+GS_init_view()
|
|
|
|
|
|
-GS_is_masked()
|
|
|
+GS_is_masked()
|
|
|
|
|
|
-GS_libinit()
|
|
|
+GS_libinit()
|
|
|
|
|
|
-GS_lights_off()
|
|
|
+GS_lights_off()
|
|
|
|
|
|
-GS_lights_on()
|
|
|
+GS_lights_on()
|
|
|
|
|
|
-GS_load_3dview()
|
|
|
+GS_load_3dview()
|
|
|
|
|
|
-GS_load_att_map()
|
|
|
+GS_load_att_map()
|
|
|
|
|
|
GS_look_here()
|
|
|
|
|
|
-GS_moveto()
|
|
|
+GS_moveto()
|
|
|
+
|
|
|
+GS_moveto_real()
|
|
|
+
|
|
|
+GS_new_light()
|
|
|
|
|
|
-GS_moveto_real()
|
|
|
+GS_new_surface()
|
|
|
|
|
|
-GS_new_light()
|
|
|
+GS_num_surfs()
|
|
|
|
|
|
-GS_new_surface()
|
|
|
+GS_P2distance()
|
|
|
|
|
|
-GS_num_surfs()
|
|
|
+GS_ready_draw()
|
|
|
|
|
|
-GS_ready_draw()
|
|
|
+GS_save_3dview()
|
|
|
|
|
|
-GS_save_3dview()
|
|
|
+GS_setall_drawmode()
|
|
|
|
|
|
-GS_set_SDscale()
|
|
|
+GS_setall_drawres()
|
|
|
|
|
|
-GS_set_SDsurf()
|
|
|
+GS_set_att_const()
|
|
|
|
|
|
-GS_set_att_const()
|
|
|
+GS_set_att_defaults()
|
|
|
|
|
|
-GS_set_att_defaults()
|
|
|
+GS_set_cancel()
|
|
|
|
|
|
-GS_set_cancel()
|
|
|
+GS_Set_ClientData()
|
|
|
|
|
|
-GS_set_cplane()
|
|
|
+GS_set_cplane()
|
|
|
|
|
|
-GS_set_cplane_rot()
|
|
|
+GS_set_cplane_rot()
|
|
|
|
|
|
GS_set_cplane_trans()
|
|
|
|
|
@@ -285,68 +307,76 @@ GS_set_cxl_func()
|
|
|
|
|
|
GS_set_draw()
|
|
|
|
|
|
-GS_set_drawmode()
|
|
|
+GS_set_drawmode()
|
|
|
|
|
|
-GS_set_drawres()
|
|
|
+GS_set_drawres()
|
|
|
|
|
|
-GS_set_exag()
|
|
|
+GS_set_exag()
|
|
|
|
|
|
-GS_set_fencecolor()
|
|
|
+GS_set_fencecolor()
|
|
|
|
|
|
-GS_set_focus()
|
|
|
+GS_set_focus()
|
|
|
|
|
|
-GS_set_focus_center_map()
|
|
|
+GS_set_focus_center_map()
|
|
|
|
|
|
-GS_set_fov()
|
|
|
+GS_set_focus_real()
|
|
|
|
|
|
-GS_set_global_exag()
|
|
|
+GS_set_fov()
|
|
|
|
|
|
-GS_set_maskmode()
|
|
|
+GS_set_global_exag()
|
|
|
|
|
|
-GS_set_nofocus()
|
|
|
+GS_set_infocus()
|
|
|
|
|
|
-GS_set_nozero()
|
|
|
+GS_setlight_ambient()
|
|
|
|
|
|
-GS_set_swap_func()
|
|
|
+GS_setlight_color()
|
|
|
|
|
|
-GS_set_trans()
|
|
|
+GS_setlight_position()
|
|
|
|
|
|
-GS_set_twist()
|
|
|
+GS_set_maskmode()
|
|
|
|
|
|
-GS_set_viewdir()
|
|
|
+GS_set_Narrow()
|
|
|
|
|
|
-GS_set_viewport()
|
|
|
+GS_set_nofocus()
|
|
|
|
|
|
-GS_set_wire_color(int id, int colr)
|
|
|
+GS_set_nozero()
|
|
|
|
|
|
-GS_setall_drawmode(int mode)
|
|
|
+GS_set_SDscale()
|
|
|
|
|
|
-GS_setall_drawres()
|
|
|
+GS_set_SDsurf()
|
|
|
|
|
|
-GS_setlight_ambient()
|
|
|
+GS_set_swap_func()
|
|
|
|
|
|
-GS_setlight_color()
|
|
|
+GS_set_trans()
|
|
|
|
|
|
-GS_setlight_position()
|
|
|
+GS_set_twist()
|
|
|
+
|
|
|
+GS_set_viewdir()
|
|
|
+
|
|
|
+GS_set_viewport()
|
|
|
+
|
|
|
+GS_set_wire_color()
|
|
|
|
|
|
GS_surf_exists()
|
|
|
|
|
|
GS_switchlight()
|
|
|
|
|
|
-GS_transp_is_set()
|
|
|
-
|
|
|
-GS_unset_SDsurf()
|
|
|
+GS_transp_is_set()
|
|
|
|
|
|
GS_unset_att()
|
|
|
|
|
|
GS_unset_cplane()
|
|
|
|
|
|
+GS_unset_SDsurf()
|
|
|
+
|
|
|
GS_update_curmask()
|
|
|
|
|
|
GS_update_normals()
|
|
|
|
|
|
GS_v2dir()
|
|
|
|
|
|
+GS_v2norm()
|
|
|
+
|
|
|
GS_v3add()
|
|
|
|
|
|
GS_v3cross()
|
|
@@ -365,16 +395,20 @@ GS_v3normalize()
|
|
|
|
|
|
GS_v3sub()
|
|
|
|
|
|
+GS_write_ppm()
|
|
|
+
|
|
|
+GS_write_tif()
|
|
|
+
|
|
|
+GS_write_zoom()
|
|
|
+
|
|
|
+GS_zoom_setup()
|
|
|
+
|
|
|
\subsection gv_vect Loading and manipulation of vector maps (GV)
|
|
|
|
|
|
Functions which have to do with loading & manipulating %vector
|
|
|
sets.
|
|
|
|
|
|
-GV_Get_ClientData()
|
|
|
-
|
|
|
-GV_Set_ClientData()
|
|
|
-
|
|
|
-GV_alldraw_vect()
|
|
|
+GV_alldraw_vect()
|
|
|
|
|
|
GV_delete_vector()
|
|
|
|
|
@@ -384,20 +418,20 @@ GV_draw_vect()
|
|
|
|
|
|
GV_get_trans()
|
|
|
|
|
|
-GV_get_vect_list()
|
|
|
-
|
|
|
GV_get_vectmode()
|
|
|
|
|
|
GV_get_vectname()
|
|
|
|
|
|
GV_load_vector()
|
|
|
|
|
|
-GV_new_vector()
|
|
|
+GV_new_vector()
|
|
|
|
|
|
-GV_num_vects()
|
|
|
+GV_num_vects()
|
|
|
|
|
|
GV_select_surf()
|
|
|
|
|
|
+GV_Set_ClientData()
|
|
|
+
|
|
|
GV_set_trans()
|
|
|
|
|
|
GV_set_vectmode()
|
|
@@ -412,11 +446,7 @@ GV_vect_exists()
|
|
|
|
|
|
Functions which have to do with loading & manipulating %point sets.
|
|
|
|
|
|
-GP_Get_ClientData()
|
|
|
-
|
|
|
-GP_Set_ClientData()
|
|
|
-
|
|
|
-GP_alldraw_site()
|
|
|
+GP_alldraw_site()
|
|
|
|
|
|
GP_attmode_color()
|
|
|
|
|
@@ -426,8 +456,6 @@ GP_delete_site()
|
|
|
|
|
|
GP_draw_site()
|
|
|
|
|
|
-GP_get_site_list()
|
|
|
-
|
|
|
GP_get_sitemode()
|
|
|
|
|
|
GP_get_sitename()
|
|
@@ -438,12 +466,14 @@ GP_get_zmode()
|
|
|
|
|
|
GP_load_site()
|
|
|
|
|
|
-GP_new_site()
|
|
|
+GP_new_site()
|
|
|
|
|
|
-GP_num_sites()
|
|
|
+GP_num_sites()
|
|
|
|
|
|
GP_select_surf()
|
|
|
|
|
|
+GP_Set_ClientData()
|
|
|
+
|
|
|
GP_set_sitemode()
|
|
|
|
|
|
GP_set_trans()
|
|
@@ -471,62 +501,138 @@ GK_do_framestep()
|
|
|
|
|
|
GK_move_key()
|
|
|
|
|
|
+GK_print_keys()
|
|
|
+
|
|
|
GK_set_interpmode()
|
|
|
|
|
|
GK_set_numsteps()
|
|
|
|
|
|
GK_set_tension()
|
|
|
|
|
|
-GK_show_path()
|
|
|
+GK_show_list()
|
|
|
|
|
|
-GK_show_site()
|
|
|
+GK_show_path()
|
|
|
|
|
|
-GK_show_vect()
|
|
|
+GK_show_site()
|
|
|
|
|
|
-GK_showtension_start()
|
|
|
+GK_showtension_start()
|
|
|
|
|
|
GK_showtension_stop()
|
|
|
|
|
|
+GK_show_vect()
|
|
|
+
|
|
|
+GK_show_vol()
|
|
|
+
|
|
|
GK_update_frames()
|
|
|
|
|
|
-GK_update_tension()
|
|
|
+GK_update_tension()
|
|
|
|
|
|
\subsection gvl_volume Loading and manipulation of volume maps (GVL)
|
|
|
|
|
|
Functions which have to do with loading & manipulating 3D volumes.
|
|
|
|
|
|
-GVL_Get_ClientData()
|
|
|
+GVL_alldraw_vol()
|
|
|
|
|
|
-GVL_Set_ClientData()
|
|
|
+GVL_alldraw_wire()
|
|
|
+
|
|
|
+GVL_delete_vol()
|
|
|
|
|
|
-GVL_alldraw_vol()
|
|
|
+GVL_draw_vol()
|
|
|
|
|
|
-GVL_delete_volume()
|
|
|
+GVL_draw_wire()
|
|
|
|
|
|
-GVL_draw_fastvol()
|
|
|
+GVL_get_dims()
|
|
|
|
|
|
-GVL_draw_vol()
|
|
|
+GVL_get_region()
|
|
|
|
|
|
GVL_get_trans()
|
|
|
|
|
|
-GVL_get_vol_list()
|
|
|
+GVL_get_volname()
|
|
|
|
|
|
-GVL_get_volmode()
|
|
|
+GVL_libinit()
|
|
|
|
|
|
-GVL_get_volname()
|
|
|
+GVL_load_vol()
|
|
|
|
|
|
-GVL_load_volume()
|
|
|
+GVL_new_vol()
|
|
|
|
|
|
-GVL_new_vol()
|
|
|
+GVL_num_vols()
|
|
|
|
|
|
-GVL_num_vol()
|
|
|
+GVL_Set_ClientData()
|
|
|
|
|
|
-GVL_set_trans()
|
|
|
+GVL_set_focus_center_map()
|
|
|
|
|
|
-GVL_set_volmode()
|
|
|
+GVL_set_trans()
|
|
|
|
|
|
GVL_vol_exists()
|
|
|
|
|
|
+\subsection gvl_volume_isosurf Loading and manipulation of isosurfaces (GVL)
|
|
|
+
|
|
|
+Functions which have to do with loading & manipulating isosurfaces.
|
|
|
+
|
|
|
+GVL_isosurf_add()
|
|
|
+
|
|
|
+GVL_isosurf_del()
|
|
|
+
|
|
|
+GVL_isosurf_get_att()
|
|
|
+
|
|
|
+GVL_isosurf_get_drawmode()
|
|
|
+
|
|
|
+GVL_isosurf_get_drawres()
|
|
|
+
|
|
|
+GVL_isosurf_get_flags()
|
|
|
+
|
|
|
+GVL_isosurf_get_maskmode()
|
|
|
+
|
|
|
+GVL_isosurf_move_down()
|
|
|
+
|
|
|
+GVL_isosurf_move_up()
|
|
|
+
|
|
|
+GVL_isosurf_num_isosurfs()
|
|
|
+
|
|
|
+GVL_isosurf_set_att_const()
|
|
|
+
|
|
|
+GVL_isosurf_set_att_map()
|
|
|
+
|
|
|
+GVL_isosurf_set_drawmode()
|
|
|
+
|
|
|
+GVL_isosurf_set_drawres()
|
|
|
+
|
|
|
+GVL_isosurf_set_flags()
|
|
|
+
|
|
|
+GVL_isosurf_set_maskmode()
|
|
|
+
|
|
|
+GVL_isosurf_unset_att()
|
|
|
+
|
|
|
+\subsection gvl_volume_slice Loading and manipulation of slices (GVL)
|
|
|
+
|
|
|
+Functions which have to do with loading & manipulating slices.
|
|
|
+
|
|
|
+GVL_slice_add()
|
|
|
+
|
|
|
+GVL_slice_del()
|
|
|
+
|
|
|
+GVL_slice_get_drawmode()
|
|
|
+
|
|
|
+GVL_slice_get_drawres()
|
|
|
+
|
|
|
+GVL_slice_get_pos()
|
|
|
+
|
|
|
+GVL_slice_get_transp()
|
|
|
+
|
|
|
+GVL_slice_move_down()
|
|
|
+
|
|
|
+GVL_slice_move_up()
|
|
|
+
|
|
|
+GVL_slice_num_slices()
|
|
|
+
|
|
|
+GVL_slice_set_drawmode()
|
|
|
+
|
|
|
+GVL_slice_set_drawres()
|
|
|
+
|
|
|
+GVL_slice_set_pos()
|
|
|
+
|
|
|
+GVL_slice_set_transp()
|
|
|
+
|
|
|
\subsection gsurf_h Public include file gsurf.h
|
|
|
|
|
|
See include/gsurf.h
|