7 #ifndef __FWMATH_VECTORFUNCTIONS_HPP__ 8 #define __FWMATH_VECTORFUNCTIONS_HPP__ 10 #include <fwCore/base.hpp> 12 #include "fwMath/IntrasecTypes.hpp" 13 #include "fwMath/config.hpp" 21 FWMATH_API
double normalize(fwVec3d & vec);
28 FWMATH_API fwVec3d
normalized(
const fwVec3d & vec);
36 FWMATH_API
double dot(
const fwVec3d& v1,
const fwVec3d& v2);
43 FWMATH_API fwVec3d
cross(
const fwVec3d& v1,
const fwVec3d& v2);
50 FWMATH_API
double vecLength(
const fwVec3d &_vec);
57 FWMATH_API
void negate(fwVec3d &_vec);
67 FWMATH_API fwVec3d& operator*=(fwVec3d& vec1,
double val);
75 FWMATH_API fwVec3d& operator/=(fwVec3d& vec,
double val );
83 FWMATH_API fwVec3d& operator+=(fwVec3d& vec1,
const fwVec3d& vec2);
91 FWMATH_API fwVec3d& operator-=(fwVec3d& vec1,
const fwVec3d& vec2);
99 FWMATH_API fwVec3d operator*(
const fwVec3d& _vec,
double _val);
107 FWMATH_API fwVec3d operator*(
const double _val,
const fwVec3d& _vec);
115 FWMATH_API fwVec3d operator/(
const fwVec3d& _vec,
double val);
123 FWMATH_API fwVec3d operator+(
const fwVec3d& _vec1,
const fwVec3d& _vec2);
131 FWMATH_API fwVec3d operator-(
const fwVec3d& _vec1,
const fwVec3d& _vec2);
139 FWMATH_API
int operator==(
const fwVec3d& _vec1,
const fwVec3d& _vec2);
147 FWMATH_API
int operator!=(
const fwVec3d& _vec1,
const fwVec3d& _vec2);
FWMATH_API double vecLength(const fwVec3d &_vec)
Compute the length of the vector.
FWMATH_API fwVec3d normalized(const fwVec3d &vec)
Return a normalized vector.
FWMATH_API fwVec3d cross(const fwVec3d &v1, const fwVec3d &v2)
Compute the Cross product between two vectors.
The namespace fwMath contains classes which provide the implementation of several mathematic function...
FWMATH_API void negate(fwVec3d &_vec)
Compute the negate of the vector.
FWMATH_API double dot(const fwVec3d &v1, const fwVec3d &v2)
Compute the Dot product between two vectors.
FWMATH_API double normalize(fwVec3d &vec)
Normalize a vector.