Vec.h File Reference

#include <sofa/helper/fixed_array.h>
#include <sofa/helper/static_assert.h>
#include <sofa/helper/rmath.h>
#include <functional>

Include dependency graph for Vec.h:

Go to the source code of this file.


Data Structures

class  sofa::defaulttype::Vec< N, real >
class  sofa::defaulttype::VecNoInit< N, real >
 Same as Vec except the values are not initialized by default. More...
struct  std::less< sofa::defaulttype::Vec< N, T > >

Namespaces

namespace  sofa
 Main SOFA namespace.
namespace  sofa::defaulttype
 Default data types for the most common cases (1D/2D/3D vectors, rigid frames).
namespace  std

Defines

#define EQUALITY_THRESHOLD   1e-6

Typedefs

typedef Vec< 1, float > sofa::defaulttype::Vec1f
typedef Vec< 1, double > sofa::defaulttype::Vec1d
typedef Vec< 2, float > sofa::defaulttype::Vec2f
typedef Vec< 2, double > sofa::defaulttype::Vec2d
typedef Vec< 3, float > sofa::defaulttype::Vec3f
typedef Vec< 3, double > sofa::defaulttype::Vec3d
typedef Vec< 4, float > sofa::defaulttype::Vec4f
typedef Vec< 4, double > sofa::defaulttype::Vec4d
typedef Vec< 6, float > sofa::defaulttype::Vec6f
typedef Vec< 6, double > sofa::defaulttype::Vec6d
typedef Vec1d sofa::defaulttype::Vector1
 alias
typedef Vec2d sofa::defaulttype::Vector2
 alias
typedef Vec3d sofa::defaulttype::Vector3
 alias
typedef Vec4d sofa::defaulttype::Vector4
 alias
typedef Vec6d sofa::defaulttype::Vector6
 alias

Enumerations

enum  sofa::defaulttype::NoInit { sofa::defaulttype::NOINIT }

Functions

template<int N, typename Real >
std::istream & sofa::defaulttype::operator>> (std::istream &in, Vec< N, Real > &v)
 Read from an input stream.
template<int N, typename Real >
std::ostream & sofa::defaulttype::operator<< (std::ostream &out, const Vec< N, Real > &v)
 Write to an output stream.
template<typename real >
Vec< 3, real > sofa::defaulttype::cross (const Vec< 3, real > &a, const Vec< 3, real > &b)
 Cross product for 3-elements vectors.
template<typename real >
real sofa::defaulttype::cross (const defaulttype::Vec< 2, real > &a, const defaulttype::Vec< 2, real > &b)
 Cross product for 2-elements vectors.
template<int N, typename real >
real sofa::defaulttype::dot (const Vec< N, real > &a, const Vec< N, real > &b)
 Dot product (alias for operator*).
template<int N, typename real >
sofa::defaulttype::Vec< N, real > operator* (real r, const sofa::defaulttype::Vec< N, real > &v)
 Scalar vector multiplication operator.


Define Documentation

#define EQUALITY_THRESHOLD   1e-6


Function Documentation

template<int N, typename real >
sofa::defaulttype::Vec<N,real> operator* ( real  r,
const sofa::defaulttype::Vec< N, real > &  v 
) [inline]

Scalar vector multiplication operator.

Definition at line 589 of file Vec.h.


Generated on Sun Nov 23 04:07:11 2008 for Sofa by  doxygen 1.5.7.1