|
GRASS GIS 7 Programmer's Manual
7.9.dev(2021)-e5379bbd7
|
OGSF library - manipulating views (lower level functions) More...
#include <grass/config.h>#include <GL/gl.h>#include <GL/glu.h>#include <grass/ogsf.h>#include "math.h"
Go to the source code of this file.
Functions | |
| int | gsd_get_los (float(*vect)[3], short sx, short sy) |
| ADD. More... | |
| void | gsd_set_view (geoview *gv, geodisplay *gd) |
| Set view. More... | |
| void | gsd_check_focus (geoview *gv) |
| Check focus. More... | |
| void | gsd_get_zup (geoview *gv, double *up) |
| Get z-up vector (z-direction) More... | |
| int | gsd_zup_twist (geoview *gv) |
| ADD. More... | |
| void | gsd_do_scale (int doexag) |
| Set current scale. More... | |
| void | gsd_real2model (Point3 point) |
| Convert real to model coordinates. More... | |
| void | gsd_model2real (Point3 point) |
| Convert model to real coordinates. More... | |
| void | gsd_model2surf (geosurf *gs, Point3 point) |
| Convert model to surface coordinates. More... | |
| void | gsd_surf2model (Point3 point) |
| Convert surface to model coordinates. More... | |
| void | gsd_surf2real (geosurf *gs, Point3 point) |
| Convert surface to real coordinates. More... | |
| void | gsd_real2surf (geosurf *gs, Point3 point) |
| Convert real to surface coordinates. More... | |
OGSF library - manipulating views (lower level functions)
GRASS OpenGL gsurf OGSF Library
(C) 1999-2008 by the GRASS Development Team
This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.
Definition in file gsd_views.c.
| void gsd_check_focus | ( | geoview * | gv | ) |
Check focus.
| gv | view (geoview) |
Definition at line 215 of file gsd_views.c.
References FROM, geoview::from_to, GS_get_zrange(), GS_v3eq(), GS_v3mult(), GS_v3normalize(), geoview::infocus, geoview::real_to, geoview::scale, TO, geoview::vert_exag, and Z.
Referenced by gsd_set_view().
| void gsd_do_scale | ( | int | doexag | ) |
Set current scale.
| doexag | use z-exaggeration |
Definition at line 355 of file gsd_views.c.
References GS_get_scale(), GS_get_zrange(), gsd_scale(), gsd_translate(), max, and min.
Referenced by GS_draw_X(), GS_set_Narrow(), gsd_fringe_horiz_line(), gsd_fringe_horiz_line2(), gsd_fringe_horiz_poly(), gsd_fringe_vert_line(), gsd_fringe_vert_poly(), gsd_north_arrow(), gsd_scalebar(), gsd_scalebar_v2(), gsd_wire_arrows(), gsd_wire_surf_const(), gsd_wire_surf_map(), and gvld_wind3_box().
| int gsd_get_los | ( | float(*) | vect[3], |
| short | sx, | ||
| short | sy | ||
| ) |
ADD.
| vect | |
| sx,sy | screen coordinates |
Definition at line 40 of file gsd_views.c.
Referenced by GS_look_here().
| void gsd_get_zup | ( | geoview * | gv, |
| double * | up | ||
| ) |
Get z-up vector (z-direction)
| gv | view (geoview) |
| up | up vector |
Definition at line 239 of file gsd_views.c.
References FROM, geoview::from_to, GS_v3dir(), TO, X, Y, and Z.
Referenced by gsd_set_view().
| void gsd_model2real | ( | Point3 | point | ) |
Convert model to real coordinates.
| point[in,out] | 3d point (x,y,z) |
Definition at line 393 of file gsd_views.c.
Referenced by GS_get_from_real(), and Gs_save_3dview().
Convert model to surface coordinates.
| gs | surface (geosurf) |
| point | 3d point (Point3) |
Definition at line 414 of file gsd_views.c.
References GS_get_scale(), GS_get_zrange(), max, min, X, Y, and Z.
| void gsd_real2model | ( | Point3 | point | ) |
Convert real to model coordinates.
| point[in,out] | 3d point (Point3) |
Definition at line 373 of file gsd_views.c.
Referenced by GS_moveto_real().
Convert real to surface coordinates.
| gs | surface (geosurf) | |
| [in,out] | point | 3d point (Point3) |
Definition at line 480 of file gsd_views.c.
References g_surf::ox, g_surf::oy, X, and Y.
Referenced by GS_get_cat_at_xy(), GS_get_norm_at_xy(), and GS_get_val_at_xy().
| void gsd_set_view | ( | geoview * | gv, |
| geodisplay * | gd | ||
| ) |
Set view.
Establishes viewing & projection matrices
| gv | view (geoview) |
| dp | display (geodisplay) |
Definition at line 146 of file gsd_views.c.
References geodisplay::aspect, georot::do_rot, geodisplay::farclip, geoview::fov, FROM, geoview::from_to, GS_get_aspect(), gs_get_datacenter(), gsd_check_focus(), gsd_get_zup(), gsd_surf2model(), gsd_update_cplanes(), geodisplay::nearclip, georot::rot_angle, georot::rot_axes, geoview::rotate, georot::rotMatrix, TO, geoview::twist, X, Y, and Z.
Referenced by GS_ready_draw(), and GS_set_focus().
| void gsd_surf2model | ( | Point3 | point | ) |
Convert surface to model coordinates.
| point | 3d point (Point3) |
Definition at line 441 of file gsd_views.c.
References GS_get_scale(), GS_get_zrange(), max, min, X, Y, and Z.
Referenced by gsd_set_view().
Convert surface to real coordinates.
| gs | surface (geosurf) | |
| [in,out] | point | 3d point (Point3) |
Definition at line 464 of file gsd_views.c.
References g_surf::ox, g_surf::oy, X, and Y.
| int gsd_zup_twist | ( | geoview * | gv | ) |
ADD.
| gv | view (geoview) |
Definition at line 274 of file gsd_views.c.
References FROM, geoview::from_to, GS_distance(), GS_v3eq(), TO, geoview::twist, X, Y, and Z.