RTFX  0.3
Real time special effects collaborative visualization and production library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
algebra.hpp File Reference

Classes and fuctions for Point, Vector and Matrix. More...

#include <iostream>
#include <algorithm>
#include <cmath>
#include "RTFX_API.h"
#include "RTFXBoostIncludes.h"

Go to the source code of this file.

Classes

class  RTFX::Point2D
 A 2D point object. More...
 
class  RTFX::Point3D
 A 3D point object. More...
 
class  RTFX::Vector3D
 A 3D vector object. More...
 
class  RTFX::Vector4D
 The homogenious vector object. More...
 
class  RTFX::Matrix4x4
 A homogeneous transformation matrix. More...
 
class  RTFX::Colour
 A class to represent several formats of colours. More...
 

Namespaces

namespace  RTFX
 The namespace for the RTFX Library.
 

Functions

Vector3D RTFX::operator* (double _s, const Vector3D &_v)
 
Vector3D RTFX::operator+ (const Vector3D &_a, const Vector3D &_b)
 
Point3D RTFX::operator+ (const Point3D &_a, const Vector3D &_b)
 
Point2D RTFX::operator+ (const Point2D &_a, const Point2D &_b)
 
Point2D RTFX::operator- (const Point2D &_a, const Point2D &_b)
 
Point3D RTFX::operator+ (const Point3D &_a, const Point3D &_b)
 
Point3D RTFX::operator* (const double &_a, const Point3D &_b)
 
Vector3D RTFX::operator- (const Point3D &_a, const Point3D &_b)
 
Vector3D RTFX::operator- (const Vector3D &_a, const Vector3D &_b)
 
Vector3D RTFX::operator- (const Vector3D &_a)
 
Point3D RTFX::operator- (const Point3D &_a, const Vector3D &_b)
 
bool RTFX::operator== (const Vector3D &_a, const Vector3D &_b)
 
bool RTFX::operator!= (const Vector3D &_a, const Vector3D &_b)
 
Point3D RTFX::operator- (const Vector3D &_a, const Point3D &_b)
 
Vector3D RTFX::cross (const Vector3D &_a, const Vector3D &_b)
 
std::ostream & RTFX::operator<< (std::ostream &_os, const Point2D &_p)
 
std::ostream & RTFX::operator<< (std::ostream &_os, const Point3D &_p)
 
std::ostream & RTFX::operator<< (std::ostream &_os, const Vector3D &_v)
 
Matrix4x4 RTFX::operator* (const Matrix4x4 &_a, const Matrix4x4 &_b)
 
Vector3D RTFX::operator* (const Matrix4x4 &_M, const Vector3D &_v)
 
Point3D RTFX::operator* (const Matrix4x4 &_M, const Point3D &_p)
 
Vector3D RTFX::transNorm (const Matrix4x4 &_M, const Vector3D &_n)
 
std::ostream & RTFX::operator<< (std::ostream &_os, const Matrix4x4 &_M)
 

Variables

static const double RTFX::M_PI = 3.14159265358979323846
 
class RTFXAPI RTFX::Matrix4x4
 

Detailed Description

Classes and fuctions for Point, Vector and Matrix.

CS488 – Introduction to Computer Graphics

Classes and functions for manipulating points, vectors, matrices, and colours. You probably won't need to modify anything in these two files.

University of Waterloo Computer Graphics Lab / 2003

This file was modified by Lesley Northam to include several missing constructors, and mathematical operations. Boost::serialization was also added, and comments were doxygenated.

The Colour definition (in this file) was created and implemented by Lesley Northam.