include/dpoint.hpp File Reference

d-dimensional point class More...

#include "assert.hpp"
#include <iostream>
#include <valarray>
#include <stdio.h>
#include <limits>

Go to the source code of this file.

Namespaces

namespace  reviver

Classes

class  reviver::InternalNumberType< float >
class  reviver::InternalNumberType< int >
class  reviver::InternalNumberType< double >
class  reviver::InternalNumberType< long >
struct  reviver::origin< NumType, D, I >
struct  reviver::origin< NumType, D, 0 >
struct  reviver::Distance< NumType, D, I >
 A structure to compute squared distances between points. More...
struct  reviver::Distance< NumType, D, 0 >
 Partial Template Specialization for distance calculations. More...
struct  reviver::DotProd< __INT, NumType, D, I >
 A structure to compute dot product between two points or associated vectors. More...
struct  reviver::DotProd< __INT, NumType, D, 0 >
 Partial Template Specialization for dot product calculations. More...
struct  reviver::IsEqual< NumType, D, I >
struct  reviver::IsEqual< NumType, D, 0 >
struct  reviver::Equate< NumType1, NumType2, D, I >
 Equate two d-dimensional points. More...
struct  reviver::Equate< NumType1, NumType2, D, 0 >
 Partial Template Specialization for Equate. More...
struct  reviver::Add< NumType, D, I >
 A structure to add two points. More...
struct  reviver::Add< NumType, D, 0 >
 Partial Template Specialization for Add structure. More...
struct  reviver::Subtract< NumType, D, I >
 Subtract two d-dimensional vectors. More...
struct  reviver::Subtract< NumType, D, 0 >
 Partial Template Specialization for subtraction of points (associated vectors). More...
struct  reviver::Multiply< NumType, D, I >
 Mutiply scalar with d-dimensional point. More...
struct  reviver::Multiply< NumType, D, 0 >
 Partial Template Specialization for scalar multiplication. More...
class  reviver::dpoint< NumType, D >
 Main d dimensional Point Class. More...

Functions

template<typename NumType>
NumType reviver::Subtract_nums (const NumType &x, const NumType &y)
template<typename NT, unsigned __DIM>
dpoint< NT, __DIM > reviver::operator+ (const dpoint< NT, __DIM > &p, const dpoint< NT, __DIM > &q)
template<typename NT, unsigned __DIM>
dpoint< NT, __DIM > reviver::operator- (const dpoint< NT, __DIM > &p, const dpoint< NT, __DIM > &q)
template<typename NT, unsigned __DIM>
bool reviver::operator== (const dpoint< NT, __DIM > &p, const dpoint< NT, __DIM > &q)
template<typename NT, unsigned __DIM>
bool reviver::operator!= (const dpoint< NT, __DIM > &p, const dpoint< NT, __DIM > &q)
template<typename NT, unsigned __DIM>
dpoint< NT, __DIM > reviver::operator * (const dpoint< NT, __DIM > &p, const NT k)
template<typename NT, unsigned __DIM>
dpoint< NT, __DIM > reviver::operator/ (const dpoint< NT, __DIM > &p, const NT k)
template<class NumType, unsigned D>
std::ostream & reviver::operator<< (std::ostream &os, const dpoint< NumType, D > &p)
template<class NumType, unsigned D>
std::istream & reviver::operator>> (std::istream &is, dpoint< NumType, D > &p)
template<typename NumType, unsigned D>
dpoint< NumType, D > reviver::CrossProd (const dpoint< NumType, D > &vector1, const dpoint< NumType, D > &vector2)
template<typename __NT, unsigned __DIM>
int reviver::orientation (const dpoint< __NT, __DIM > p[__DIM+1])
template<typename __NT>
__NT reviver::orientation (const dpoint< __NT, 2 > &p, const dpoint< __NT, 2 > &q, const dpoint< __NT, 2 > &r)
double reviver::orient2d (double *p, double *q, double *r)
template<>
double reviver::orientation< double > (const dpoint< double, 2 > &p, const dpoint< double, 2 > &q, const dpoint< double, 2 > &r)
template<>
float reviver::orientation< float > (const dpoint< float, 2 > &p, const dpoint< float, 2 > &q, const dpoint< float, 2 > &r)


Detailed Description

d-dimensional point class

A d-dimensional point class which is written carefully using templates. It allows for basic operations on points in any dimension. Orientation tests for 2 and 3 dimensional points are supported using Jonathan's code. This class forms the building block of other classes like dplane, dsphere etc.

Author:
Piyush Kumar
Bug:
No known bugs.

Definition in file dpoint.hpp.


Generated on Fri Nov 3 21:59:03 2006 for Triangle++ by  doxygen 1.4.6