Assignments
Assignments
camera.h
Go to the documentation of this file.
1#ifndef CAMERA_INCLUDED
2#define CAMERA_INCLUDED
3#include <stdio.h>
4#include <Util/geometry.h>
5
6namespace Ray
7{
9 class Camera
10 {
11 public:
14
17
20
23
26
28 void drawOpenGL( void ) const;
29
31 void rotateUp( Util::Point3D center , float angle );
32
34 void rotateRight( Util::Point3D center , float angle );
35
37 void moveForward( float dist );
38
40 void moveRight( float dist );
41
43 void moveUp( float dist );
44
46 Util::Ray3D getRay( int i , int j , int width , int height ) const;
47 };
48
50 std::ostream &operator << ( std::ostream &stream , const Camera &camera );
51
53 std::istream &operator >> ( std::istream &stream , Camera &camera );
54}
55#endif // CAMERA_INCLUDED
56
57
Definition: camera.h:10
Util::Point3D forward
Definition: camera.h:19
Util::Point3D position
Definition: camera.h:16
Util::Ray3D getRay(int i, int j, int width, int height) const
Definition: camera.todo.cpp:13
Util::Point3D up
Definition: camera.h:22
Util::Point3D right
Definition: camera.h:25
void moveRight(float dist)
Definition: camera.todo.cpp:57
void moveForward(float dist)
Definition: camera.todo.cpp:49
void rotateRight(Util::Point3D center, float angle)
Definition: camera.todo.cpp:41
double heightAngle
Definition: camera.h:13
void rotateUp(Util::Point3D center, float angle)
Definition: camera.todo.cpp:33
void moveUp(float dist)
Definition: camera.todo.cpp:65
void drawOpenGL(void) const
Definition: camera.todo.cpp:22
Definition: geometry.h:299
Definition: box.h:7
std::istream & operator>>(std::istream &stream, Camera &camera)
Definition: camera.cpp:15
std::ostream & operator<<(std::ostream &stream, const Camera &camera)
Definition: camera.cpp:25