sphore 0.0.1
SPH openGL rendering engine
|
00001 /******************************************************************** 00002 * sphore - SPH Opengl Rendering Engine 00003 * 00004 * This file is (or was) part of sphore. 00005 * sphore comes with ABSOLUTELY NO WARRANTY. 00006 * This is free software; and you are welcome to redistribute 00007 * it under the terms of the GNU General Public License 00008 * (see LICENSE file for details) and the provision that 00009 * this notice remains intact. If you modify this file, please 00010 * note section 2a) of the GPLv2 states that: 00011 * 00012 * a) You must cause the modified files to carry prominent notices 00013 * stating that you changed the files and the date of any change. 00014 * 00015 * Copyright (C) 2011 James Wetter. All rights reserved. 00016 * Contact: wetter.j@gmail.com 00017 * 00018 ********************************************************************/ 00019 00020 #ifndef CAMERA_H 00021 #define CAMERA_H 00022 00033 typedef struct _camera camera_t; 00034 00042 camera_t *camera_create (void); 00043 00050 void camera_destroy (camera_t * cam); 00051 00058 void camera_reset (camera_t * cam); 00059 00069 void camera_translate (camera_t * cam, float x, float y, float z); 00070 00081 void camera_rotate (camera_t * cam, float theta, float x, float y, float z); 00082 00089 const float *camera_get_matrix (camera_t * cam); 00090 00099 void camera_set_position (camera_t * cam, float x, float y, float z); 00100 00110 float *camera_get_inverse_rotation_matrix (camera_t * cam); 00111 #endif