VTB_MAKE_ROTATE
template <class Container, class T>
winding_number(const Container & vertices, const Vertex< T, 2 > & origin) -> int
template <class Figure>
centroid(const Figure & figure) -> Figure::value_type
template <class T>
det(const Vertex< T, 2 > & origin, const Vertex< T, 2 > & a, const Vertex< T, 2 > & b) -> T
template <int dimension, int degrees, class T, int N>
rotate(const Vertex< T, N > & v) -> Vertex< T, N >
template <class Figure>
bounding_box(const Figure & figure) -> auto
template <class Figure>
interior_contains(const Figure & figure, const typename Figure::value_type & vertex) -> bool
template <class T>
det(const Vertex< T, 2 > & a, const Vertex< T, 2 > & b) -> T
template <class T, int N>
cosine(const Vertex< T, N > & a, const Vertex< T, N > & b) -> T
template <class Figure>
perimeter(const Figure & figure) -> Figure::value_type
template <class T, int N>
unit(const Vertex< T, N > & v) -> Vertex< T, N >
template <class T>
orientation(const Vertex< T, 2 > & origin, const Vertex< T, 2 > & a, const Vertex< T, 2 > & b) -> Vertex< T, 1 >
template <class T>
clockwise(const Vertex< T, 2 > & origin, const Vertex< T, 2 > & a, const Vertex< T, 2 > & b) -> bool
template <class T>
line_normal(const Vertex< T, 2 > & v0, const Vertex< T, 2 > & v1) -> Vertex< T, 2 >

Rotates line segment by 90 degrees counterclockwise and normalises resulting vector.

template <class T>
det(const Vertex< T, 3 > & a, const Vertex< T, 3 > & b, const Vertex< T, 3 > & c) -> T
template <class Figure>
contains(const Figure & figure, const typename Figure::value_type & vertex, const typename Figure::scalar_type eps) -> bool
template <class Figure>
border_contains(const Figure & figure, const typename Figure::value_type & vertex, const typename Figure::scalar_type eps) -> bool
template <class T>
surface_normal(const Vertex< T, 3 > & v0, const Vertex< T, 3 > & v1, const Vertex< T, 3 > & v2) -> Vertex< T, 3 >
template <class Figure>
operator<<(std::ostream & out, const Figure & figure) -> std::enable_if< is_figure< Figure >::value, std::ostream & >::type