GRASS Programmer's Manual  6.5.svn(2014)-r66266
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
position.c File Reference

Nviz library – Position, focus settings. More...

#include <grass/glocale.h>
#include <grass/nviz.h>
Include dependency graph for position.c:

Go to the source code of this file.

Functions

void Nviz_init_view (nv_data *data)
 
int Nviz_set_focus_state (int state_flag)
 Set focus state. More...
 
int Nviz_set_focus_map (int type, int id)
 Set focus based on loaded map. More...
 
int Nviz_get_focus (nv_data *data, float *x, float *y, float *z)
 Get focus. More...
 
int Nviz_set_focus (nv_data *data, float x, float y, float z)
 Set focus. More...
 
int Nviz_has_focus (nv_data *data)
 Test focus. More...
 
float Nviz_get_xyrange (nv_data *data)
 Get xy range. More...
 
int Nviz_get_zrange (nv_data *data, float *min, float *max)
 Get z range. More...
 
float Nviz_get_longdim (nv_data *data)
 Get largest dimension. More...
 

Detailed Description

Nviz library – Position, focus settings.

Based on visualization/nviz/src/position.c

(C) 2008, 2010 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
Updated/modified by Martin Landa <landa.martin gmail.com> (Google SoC 2008/2010)

Definition in file position.c.

Function Documentation

int Nviz_get_focus ( nv_data *  data,
float *  x,
float *  y,
float *  z 
)

Get focus.

Parameters
datanviz data
x,y,zfocus coordinates

Definition at line 119 of file position.c.

References GS_get_focus().

Referenced by wxnviz.Nviz::GetFocus().

float Nviz_get_longdim ( nv_data *  data)

Get largest dimension.

Parameters
datanviz data

Definition at line 198 of file position.c.

References GS_get_longdim().

Referenced by wxnviz.Nviz::GetLongDim().

float Nviz_get_xyrange ( nv_data *  data)

Get xy range.

Parameters
datanviz data

Definition at line 176 of file position.c.

Referenced by wxnviz.Nviz::GetXYRange().

int Nviz_get_zrange ( nv_data *  data,
float *  min,
float *  max 
)

Get z range.

Parameters
datanviz data
min,maxz range

Definition at line 187 of file position.c.

References GS_get_zrange_nz().

Referenced by wxnviz.Nviz::GetZRange().

int Nviz_has_focus ( nv_data *  data)

Test focus.

Parameters
datanviz data

Definition at line 161 of file position.c.

References GS_get_focus().

Referenced by wxnviz.Nviz::GetFocus().

void Nviz_init_view ( nv_data *  data)

Initialize view, position, lighting settings (focus)

Set position to center of view

Definition at line 23 of file position.c.

References GS_init_view(), Nviz_set_focus_state(), Nviz_set_light_ambient(), Nviz_set_light_bright(), Nviz_set_light_color(), and Nviz_set_light_position().

Referenced by wxnviz.Nviz::InitView().

int Nviz_set_focus ( nv_data *  data,
float  x,
float  y,
float  z 
)

Set focus.

Parameters
datanviz data
x,y,zfocus coordinates

Definition at line 141 of file position.c.

References GS_set_focus(), and y.

Referenced by wxnviz.Nviz::SetFocus().

int Nviz_set_focus_map ( int  type,
int  id 
)

Set focus based on loaded map.

If map is MAP_OBJ_UNDEFINED, set focus from first surface/volume in the list.

Parameters
typemap object type
idmap object id
Returns
0 on no focus
id id of map object used for setting focus

Definition at line 75 of file position.c.

References G_free(), GS_get_surf_list(), GS_num_surfs(), GS_set_focus_center_map(), GS_set_nofocus(), GVL_get_vol_list(), GVL_num_vols(), GVL_set_focus_center_map(), and tools::id.

Referenced by wxnviz.Nviz::AddConstant(), wxnviz.Nviz::LoadSurface(), and wxnviz.Nviz::LookAtCenter().

int Nviz_set_focus_state ( int  state_flag)

Set focus state.

Parameters
state_flag1 for center view, 0 use viewdir
Returns
1 on success
0 on failure

Definition at line 49 of file position.c.

References G_warning(), GS_set_infocus(), and GS_set_nofocus().

Referenced by Nviz_init_view().