GRASS Programmer's Manual
6.5.svn(2014)-r66266
|
OGSF library - matrix transformation (higher level functions) More...
#include <math.h>
#include <grass/gis.h>
#include <grass/glocale.h>
#include <grass/gstypes.h>
Go to the source code of this file.
Macros | |
#define | MAX_STACK 20 |
#define | NPI M_PI |
Functions | |
void | P_scale (float x, float y, float z) |
ADD. More... | |
void | P_transform (int num_vert, float(*in)[4], float(*out)[4]) |
Transform array of vectors using current T matrix. More... | |
int | P_pushmatrix (void) |
Push current transformation matrix onto matrix stack. More... | |
int | P_popmatrix (void) |
Pop top of matrix stack, placing it into the current transformation matrix. More... | |
void | P_rot (float angle, char axis) |
Rotate matrix. More... | |
OGSF library - matrix transformation (higher level functions)
GRASS OpenGL gsurf OGSF Library
NOTE: This file should be REMOVED and any calls to the functions in this file should be replaced with appropriate OpenGL calls.
This routine should be available in GL!
Arguments are same as GL counterparts
I threw this code together in January at the beginning of this class. I was still learning about GL at the time. There are many places where the code could be improved.
(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 trans.c.
#define MAX_STACK 20 |
Definition at line 37 of file trans.c.
Referenced by P_pushmatrix().
int P_popmatrix | ( | void | ) |
Pop top of matrix stack, placing it into the current transformation matrix.
Definition at line 197 of file trans.c.
References G_warning().
Referenced by gsd_update_cpnorm(), P_rot(), and P_scale().
int P_pushmatrix | ( | void | ) |
Push current transformation matrix onto matrix stack.
Definition at line 177 of file trans.c.
References G_warning(), and MAX_STACK.
Referenced by gsd_update_cpnorm(), P_rot(), and P_scale().
void P_rot | ( | float | angle, |
char | axis | ||
) |
Rotate matrix.
angle | angle value |
axis | ('x, 'y', 'z') |
Definition at line 217 of file trans.c.
References NPI, P_popmatrix(), and P_pushmatrix().
Referenced by gsd_update_cpnorm().
void P_scale | ( | float | x, |
float | y, | ||
float | z | ||
) |
ADD.
x,y,z |
Definition at line 75 of file trans.c.
References P_popmatrix(), P_pushmatrix(), and y.
void P_transform | ( | int | num_vert, |
float(*) | in[4], | ||
float(*) | out[4] | ||
) |
Transform array of vectors using current T matrix.
Multiply 'in' matrix (homogenous coordinate generally) by the current transformation matrix, placing the result in 'out'
[in][trans_mat] => [out]
num_vert | |
in | |
out |
Definition at line 117 of file trans.c.
Referenced by gsd_update_cpnorm().