fart/util/Transform.h
Josh Holtrop 97b9fa9eab added getInverse() to util/Transform, fixed transform_*() functions
git-svn-id: svn://anubis/fart/trunk@39 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 15:28:53 +00:00

31 lines
688 B
C++

#ifndef TRANSFORM_H
#define TRANSFORM_H TRANSFORM_H
#include "Matrix.h"
#include "Ray.h"
#include "Vector.h"
#include <stack>
class Transform
{
public:
Transform();
Transform getInverse();
void translate(double x, double y, double z);
void rotate(double angle, double xv, double yv, double zv);
void scale(double xs, double ys, double zs);
Matrix & getMatrix() { return m_matrix; }
Vector transform_point(const Vector & v);
Vector transform_direction(const Vector & v);
Vector transform_normal(const Vector & v);
Ray transform_ray(const Ray & r);
protected:
Matrix m_matrix;
};
#endif