EMAN2
Classes | Namespaces | Typedefs | Functions
vec3.h File Reference
#include <vector>
#include <cmath>
#include <iostream>
Include dependency graph for vec3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  EMAN::Vec4< Type >
 The Vec4 object is a templated object, intended to instantiated with basic types such as int, float, double etc. More...
 
class  EMAN::Vec3< Type >
 The Vec3 object is a templated object, intended to instantiated with basic types such as int, float, double etc. More...
 
class  EMAN::Vec2< Type >
 The Vec2 is precisely the same as Vec3 except it works exclusively in 2D Note there are convenient typedef so one needn't bother about using template terminology typedef Vec2<float> Vec2f; typedef Vec2<int> Vec2i; typedef Vec2double> Vec2d; // Not recommended for use unless precision is addressed in this class. More...
 

Namespaces

namespace  EMAN
 E2Exception class.
 

Typedefs

typedef Vec4< float > EMAN::Vec4f
 
typedef Vec4< int > EMAN::Vec4i
 
typedef Vec4< double > EMAN::Vec4d
 
typedef Vec3< float > EMAN::Vec3f
 
typedef Vec3< int > EMAN::Vec3i
 
typedef Vec3< double > EMAN::Vec3d
 
typedef Vec2< float > EMAN::Vec2f
 
typedef Vec2< int > EMAN::Vec2i
 
typedef Vec2< double > EMAN::Vec2d
 

Functions

template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator+ (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator+ (const Vec3< Type > &v, const Type2 &n)
 
template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator- (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator- (const Vec3< Type > &v, const Type2 &n)
 
template<typename Type >
Vec3< Type > EMAN::operator- (const Vec3< Type > &v)
 
template<typename Type , typename Type2 >
Type EMAN::operator* (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec3< Type2 > EMAN::operator* (const Type &d, const Vec3< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator* (const Vec3< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
Vec3< Type2 > EMAN::operator/ (const Type &d, const Vec3< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec3< Type > EMAN::operator/ (const Vec3< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
bool EMAN::operator== (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
bool EMAN::operator!= (const Vec3< Type > &v1, const Vec3< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator+ (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator+ (const Vec2< Type > &v, const Type2 &n)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator- (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator- (const Vec2< Type > &v, const Type2 &n)
 
template<typename Type >
Vec2< Type > EMAN::operator- (const Vec2< Type > &v)
 
template<typename Type , typename Type2 >
Type EMAN::operator* (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
Vec2< Type2 > EMAN::operator* (const Type &d, const Vec2< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator* (const Vec2< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
Vec2< Type2 > EMAN::operator/ (const Type &d, const Vec2< Type2 > &v)
 
template<typename Type , typename Type2 >
Vec2< Type > EMAN::operator/ (const Vec2< Type > &v, const Type2 &d)
 
template<typename Type , typename Type2 >
bool EMAN::operator== (const Vec2< Type > &v1, const Vec2< Type2 > &v2)
 
template<typename Type , typename Type2 >
bool EMAN::operator!= (const Vec2< Type > &v1, const Vec2< Type2 > &v2)