GRASS Programmer's Manual  6.4.2(2012)
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
gsd_views.c File Reference

OGSF library - manipulating views (lower level functions) More...

#include <grass/config.h>
#include <grass/gstypes.h>
#include "math.h"
Include dependency graph for gsd_views.c:

Go to the source code of this file.

Functions

int gsd_get_los (float(*vect)[3], short sx, short sy)
 ADD.
void gsd_set_view (geoview *gv, geodisplay *gd)
 Set view.
void gsd_check_focus (geoview *gv)
 Check focus.
void gsd_get_zup (geoview *gv, double *up)
 Get z-up vector (z-direction)
int gsd_zup_twist (geoview *gv)
 ADD.
void gsd_do_scale (int doexag)
 Set current scale.
void gsd_real2model (Point3 point)
 Convert real to model coordinates.
void gsd_model2real (Point3 point)
 Convert model to real coordinates.
void gsd_model2surf (geosurf *gs, Point3 point)
 Convert model to surface coordinates.
void gsd_surf2real (geosurf *gs, Point3 point)
 Convert surface to real coordinates.
void gsd_real2surf (geosurf *gs, Point3 point)
 Convert real to surface coordinates.

Detailed Description

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.

Author
Bill Brown USACERL (January 1993)
Doxygenized by Martin Landa <landa.martin gmail.com> (May 2008)

Definition in file gsd_views.c.

Function Documentation

void gsd_check_focus ( geoview *  gv)

Check focus.

Parameters
gvview (geoview)

Definition at line 143 of file gsd_views.c.

References FROM, GS_get_zrange(), GS_v3eq(), GS_v3mult(), and GS_v3normalize().

Referenced by gsd_set_view().

int gsd_get_los ( float(*)  vect[3],
short  sx,
short  sy 
)

ADD.

Parameters
vect
sx,syscreen coordinates
Returns
1

Definition at line 40 of file gsd_views.c.

References FROM, GS_ready_draw(), gsd_color_func(), gsd_do_scale(), gsd_linewidth(), X, and Y.

Referenced by GS_get_selected_point_on_surface(), and GS_look_here().

void gsd_get_zup ( geoview *  gv,
double *  up 
)

Get z-up vector (z-direction)

Parameters
gvview (geoview)
upup vector

Definition at line 167 of file gsd_views.c.

References FROM, GS_v3dir(), X, and Y.

Referenced by gsd_set_view().

void gsd_model2real ( Point3  point)

Convert model to real coordinates.

Parameters
point[in,out]3d point (x,y,z)

Definition at line 321 of file gsd_views.c.

References GS_get_region(), GS_get_scale(), GS_get_zrange(), max, min, gui_modules.psmap_dialogs::s, gui_modules.psmap_dialogs::w, X, and Y.

Referenced by GS_get_from_real(), and Gs_save_3dview().

void gsd_model2surf ( geosurf *  gs,
Point3  point 
)

Convert model to surface coordinates.

Parameters
gssurface (geosurf)
point3d point (Point3)

Definition at line 342 of file gsd_views.c.

References GS_get_scale(), GS_get_zrange(), max, min, X, and Y.

void gsd_real2model ( Point3  point)

Convert real to model coordinates.

Parameters
point[in,out]3d point (Point3)

Definition at line 301 of file gsd_views.c.

References GS_get_region(), GS_get_scale(), GS_get_zrange(), max, min, gui_modules.psmap_dialogs::s, gui_modules.psmap_dialogs::w, X, and Y.

Referenced by GS_moveto_real().

void gsd_real2surf ( geosurf *  gs,
Point3  point 
)

Convert real to surface coordinates.

Parameters
gssurface (geosurf)
[in,out]point3d point (Point3)

Definition at line 387 of file gsd_views.c.

References X, and Y.

Referenced by GS_get_cat_at_xy(), GS_get_distance_alongsurf(), 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

Parameters
gvview (geoview)
dpdisplay (geodisplay)

Definition at line 100 of file gsd_views.c.

References FROM, GS_get_aspect(), gsd_check_focus(), gsd_get_zup(), gsd_update_cplanes(), X, and Y.

Referenced by GS_ready_draw(), GS_set_focus(), GS_set_focus_real(), and GS_set_viewdir().

void gsd_surf2real ( geosurf *  gs,
Point3  point 
)

Convert surface to real coordinates.

Parameters
gssurface (geosurf)
[in,out]point3d point (Point3)

Definition at line 371 of file gsd_views.c.

References X, and Y.

Referenced by GS_draw_nline_onsurf(), and GS_get_selected_point_on_surface().

int gsd_zup_twist ( geoview *  gv)

ADD.

Parameters
gvview (geoview)
Returns
?

Definition at line 202 of file gsd_views.c.

References FROM, GS_distance(), GS_v3eq(), X, and Y.