Added free functions for non-C++11 Vectors
This commit is contained in:
@@ -264,7 +264,6 @@ dot(const VectorT<Scalar,N>& _v1, const VectorT<Scalar,N>& _v2) {
|
|||||||
return (_v1 | _v2);
|
return (_v1 | _v2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// \relates OpenMesh::VectorT
|
/// \relates OpenMesh::VectorT
|
||||||
/// symmetric version of the cross product
|
/// symmetric version of the cross product
|
||||||
template<typename Scalar, int N>
|
template<typename Scalar, int N>
|
||||||
@@ -273,8 +272,46 @@ cross(const VectorT<Scalar,N>& _v1, const VectorT<Scalar,N>& _v2) {
|
|||||||
return (_v1 % _v2);
|
return (_v1 % _v2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member norm
|
||||||
|
template<typename Scalar, int DIM>
|
||||||
|
Scalar norm(const VectorT<Scalar, DIM>& _v) {
|
||||||
|
return _v.norm();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member sqrnorm
|
||||||
|
template<typename Scalar, int DIM>
|
||||||
|
Scalar sqrnorm(const VectorT<Scalar, DIM>& _v) {
|
||||||
|
return _v.sqrnorm();
|
||||||
|
}
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member vectorize
|
||||||
|
template<typename Scalar, int DIM, typename OtherScalar>
|
||||||
|
VectorT<Scalar, DIM>& vectorize(VectorT<Scalar, DIM>& _v, OtherScalar const& _val) {
|
||||||
|
return _v.vectorize(_val);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member normalize
|
||||||
|
template<typename Scalar, int DIM>
|
||||||
|
VectorT<Scalar, DIM>& normalize(VectorT<Scalar, DIM>& _v) {
|
||||||
|
return _v.normalize();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member maximize
|
||||||
|
template<typename Scalar, int DIM>
|
||||||
|
VectorT<Scalar, DIM>& maximize(VectorT<Scalar, DIM>& _v1, VectorT<Scalar, DIM>& _v2) {
|
||||||
|
return _v1.maximize(_v2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// \relates OpenMesh::VectorT
|
||||||
|
/// non-member minimize
|
||||||
|
template<typename Scalar, int DIM>
|
||||||
|
VectorT<Scalar, DIM>& minimize(VectorT<Scalar, DIM>& _v1, VectorT<Scalar, DIM>& _v2) {
|
||||||
|
return _v1.minimize(_v2);
|
||||||
|
}
|
||||||
|
|
||||||
//== TYPEDEFS =================================================================
|
//== TYPEDEFS =================================================================
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user