template<typename T>
inline Angle<T> abs(const Angle<T> &angle)
{
- return Angle<T>::from_radians(std::abs(angle.radians()));
+ using std::abs;
+ return Angle<T>::from_radians(abs(angle.radians()));
}
template<typename T>
inline T sin(const Angle<T> &angle)
{
- return std::sin(angle.radians());
+ using std::sin;
+ return sin(angle.radians());
}
template<typename T>
inline Angle<T> asin(T s)
{
- return Angle<T>::from_radians(std::asin(s));
+ using std::asin;
+ return Angle<T>::from_radians(asin(s));
}
template<typename T>
inline T cos(const Angle<T> &angle)
{
- return std::cos(angle.radians());
+ using std::cos;
+ return cos(angle.radians());
}
template<typename T>
inline Angle<T> acos(T s)
{
- return Angle<T>::from_radians(std::acos(s));
+ using std::acos;
+ return Angle<T>::from_radians(acos(s));
}
template<typename T>
inline T tan(const Angle<T> &angle)
{
- return std::tan(angle.radians());
+ using std::tan;
+ return tan(angle.radians());
}
template<typename T>
inline Angle<T> atan(T s)
{
- return Angle<T>::from_radians(std::atan(s));
+ using std::atan;
+ return Angle<T>::from_radians(atan(s));
}
template<typename T>
inline Angle<T> atan2(T y, T x)
{
- return Angle<T>::from_radians(std::atan2(y, x));
+ using std::atan2;
+ return Angle<T>::from_radians(atan2(y, x));
}
} // namespace Geometry
template<typename T, unsigned M, unsigned N>
inline Matrix<T, M, N> &Matrix<T, M, N>::exchange_rows(unsigned i, unsigned j)
{
+ using std::swap;
for(unsigned k=0; k<N; ++k)
- std::swap(element(i, k), element(j, k));
+ swap(element(i, k), element(j, k));
return *this;
}