Assignments
Assignments
geometry.h File Reference
#include <iostream>
#include <string>
#include <limits>
#include <Util/algebra.h>
#include "geometry.inl"
#include "geometry.todo.inl"

Go to the source code of this file.

Classes

struct  Util::GlobalProperties
 
class  Util::Point< Dim >
 
class  Util::Point< 0 >
 
class  Util::_BaseMatrix< Rows, Cols, MatrixType, MatrixTransposeType >
 
class  Util::Matrix< Rows, Cols >
 
class  Util::Matrix< Dim, Dim >
 
class  Util::Plane< Dim >
 
class  Util::Ray< Dim >
 
class  Util::BoundingBox< Dim >
 
class  Util::Quadric< Dim >
 
struct  Util::Quadric< Dim >::BoundingBoxOverlap
 
class  Util::Quaternion
 
class  Util::RotationParameter< RotationParameterType, ParameterType >
 
class  Util::TrivialRotationParameter
 
class  Util::EulerRotationParameter
 
class  Util::MatrixRotationParameter
 
class  Util::SkewSymmetricRotationParameter
 
class  Util::QuaternionRotationParameter
 
class  Util::TransformationParameter< RotationParameterType >
 

Namespaces

namespace  Util
 
namespace  Util::RotationParameters
 

Typedefs

typedef Point< 1 > Util::Point1D
 
typedef Point< 2 > Util::Point2D
 
typedef Point< 3 > Util::Point3D
 
typedef Point< 4 > Util::Point4D
 
template<unsigned int Dim>
using Util::SquareMatrix = Matrix< Dim, Dim >
 
typedef Matrix< 1, 1 > Util::Matrix1D
 
typedef Matrix< 2, 2 > Util::Matrix2D
 
typedef Matrix< 3, 3 > Util::Matrix3D
 
typedef Matrix< 4, 4 > Util::Matrix4D
 
typedef Plane< 2 > Util::Plane2D
 
typedef Plane< 3 > Util::Plane3D
 
typedef Plane< 4 > Util::Plane4D
 
typedef Ray< 1 > Util::Ray1D
 
typedef Ray< 2 > Util::Ray2D
 
typedef Ray< 3 > Util::Ray3D
 
typedef Ray< 4 > Util::Ray4D
 
typedef BoundingBox< 1 > Util::BoundingBox1D
 
typedef BoundingBox< 2 > Util::BoundingBox2D
 
typedef BoundingBox< 3 > Util::BoundingBox3D
 
typedef BoundingBox< 4 > Util::BoundingBox4D
 

Enumerations

enum  {
  Util::RotationParameters::TRIVIAL , Util::RotationParameters::ROTATION , Util::RotationParameters::EULER , Util::RotationParameters::SKEW_SYMMETRIC ,
  Util::RotationParameters::QUATERNION , Util::RotationParameters::COUNT
}
 

Functions

template<unsigned int Dim>
std::ostream & Util::operator<< (std::ostream &stream, const Point< Dim > &p)
 
template<unsigned int Dim>
std::istream & Util::operator>> (std::istream &stream, Point< Dim > &p)
 
template<unsigned int Rows, unsigned int Cols, typename MatrixType , typename MatrixTransposeType >
std::ostream & Util::operator<< (std::ostream &stream, const _BaseMatrix< Rows, Cols, MatrixType, MatrixTransposeType > &m)
 
template<unsigned int Rows, unsigned int Cols, typename MatrixType , typename MatrixTransposeType >
std::istream & Util::operator>> (std::istream &stream, _BaseMatrix< Rows, Cols, MatrixType, MatrixTransposeType > &m)
 
template<unsigned int Dim>
Ray< Dim > Util::operator* (const Matrix< Dim+1, Dim+1 > &m, const Ray< Dim > &ray)
 
template<unsigned int Dim>
std::ostream & Util::operator<< (std::ostream &stream, const Ray< Dim > &ray)
 
template<unsigned int Dim>
BoundingBox< Dim > Util::operator* (const Matrix< Dim+1, Dim+1 > &m, const BoundingBox< Dim > &b)
 

Variables

static const double Util::Pi = 3.1415926535897932384
 
static const double Util::Epsilon = 1e-10
 
static const double Util::Infinity = std::numeric_limits< double >::infinity()
 
const std::string Util::RotationParameters::Names [] = { "trivial" , "closest rotation" , "euler" , "skew symmetric" , "quaternion" }