|
template<typename T > |
T | epsilon () |
|
template<> |
double | epsilon< double > () |
|
template<> |
float | epsilon< float > () |
|
template<typename T > |
int | orientation (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
int | orientation (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
int | robust_orientation (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
int | robust_orientation (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
int | orientation (const point2d< T > &point1, const point2d< T > &point2, const T &px, const T &py) |
|
template<typename T > |
int | orientation (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
int | orientation (const line< T, 2 > &line, const point2d< T > &point) |
|
template<typename T > |
int | orientation (const segment< T, 2 > &segment, const point2d< T > &point) |
|
template<typename T > |
int | orientation (const triangle< T, 2 > &triangle) |
|
template<typename T > |
int | orientation (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
int | orientation (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4) |
|
template<typename T > |
int | orientation (const triangle< T, 3 > &triangle, const point3d< T > &point) |
|
template<typename T > |
bool | differing_orientation (const T &x1, const T &y1, const T &x2, const T &y2, const T &p1x, const T &p1y, const T &p2x, const T &p2y) |
|
template<typename T > |
bool | differing_orientation (const point2d< T > &p1, const point2d< T > &p2, const point2d< T > &q1, const point2d< T > &q2) |
|
template<typename T > |
int | in_circle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &px, const T &py) |
|
template<typename T > |
int | in_circle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
int | in_circle (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
int | in_sphere (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &px, const T &py, const T &pz) |
|
template<typename T > |
int | in_sphere (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const point2d< T > &point5) |
|
template<typename T > |
int | in_sphere (const quadix< T, 3 > &quadix, const point3d< T > &point) |
|
template<typename T > |
T | signed_area (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
T | signed_area (const point2d< T > &point1, const point2d< T > &point2, const T &px, const T &py) |
|
template<typename T > |
T | signed_area (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
T | signed_area (const segment< T, 2 > &segment, const point2d< T > &point) |
|
template<typename T > |
T | signed_volume (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
T | signed_volume (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
T | signed_volume (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4) |
|
template<typename T > |
T | signed_volume (const triangle< T, 3 > &triangle, const point3d< T > &point) |
|
template<typename T > |
bool | collinear (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | collinear (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | collinear (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | collinear (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
bool | robust_collinear (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_collinear (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_collinear (const line< T, 2 > &line, const point2d< T > &point, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_collinear (const line< T, 3 > &line, const point3d< T > &point, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_collinear (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_collinear (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | is_point_collinear (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const point2d< T > &point1, const point2d< T > &point2, const T &px, const T &py, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const segment< T, 2 > &segment, const point2d< T > &point, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const bool robust=false) |
|
template<typename T > |
bool | is_point_collinear (const segment< T, 3 > &segment, const point3d< T > &point, const bool robust=false) |
|
template<typename T > |
bool | robust_coplanar (const point3d< T > point1, const point3d< T > point2, const point3d< T > point3, const point3d< T > point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | coplanar (const ray< T, 3 > &ray1, const ray< T, 3 > &ray2) |
|
template<typename T > |
bool | coplanar (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2) |
|
template<typename T > |
bool | coplanar (const line< T, 3 > &line1, const line< T, 3 > &line2) |
|
template<typename T > |
bool | coplanar (const triangle< T, 3 > &triangle1, const triangle< T, 3 > &triangle2) |
|
template<typename T > |
bool | coplanar (const quadix< T, 3 > &quadix1, const quadix< T, 3 > &quadix2) |
|
template<typename T > |
bool | cocircular (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | cocircular (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | cocircular (const triangle< T, 2 > &triangle, const point2d< T > &point, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | cocircular (const circle< T > &circle, const point2d< T > &point, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | is_skinny_triangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
bool | is_skinny_triangle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | is_skinny_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | intersect (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | intersect (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, T &ix, T &iy) |
|
template<typename T > |
bool | intersect (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
bool | intersect (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, point2d< T > &int_point) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, T &ix, T &iy) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, point2d< T > &i_point) |
|
template<typename T > |
bool | intersect (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &fuzzy=T(0.0)) |
|
template<typename T > |
bool | intersect (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &fuzzy=T(0.0)) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &fuzzy=T(0.0)) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const line< T, 2 > &line) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const circle< T > &circle) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const segment< T, 2 > &segment, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const line< T, 3 > &line, const T &fuzzy=T(0.0)) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const box< T, 3 > &box) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const sphere< T > &sphere) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const plane< T, 3 > &plane) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const quadratic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const segment< T, 3 > &segment, const cubic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line1, const line< T, 2 > &line2) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line, const circle< T > &circle) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const line< T, 2 > &line, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const line< T, 3 > &line, const triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | intersect (const line< T, 3 > &line, const plane< T, 3 > &plane) |
|
template<typename T > |
bool | intersect (const line< T, 3 > &line, const sphere< T > &sphere) |
|
template<typename T > |
bool | intersect (const line< T, 3 > &line, const quadratic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const line< T, 3 > &line, const cubic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const triangle< T, 2 > &triangle, const circle< T > &circle) |
|
template<typename T > |
bool | intersect (const triangle< T, 2 > &triangle, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | intersect (const triangle< T, 2 > &triangle, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const triangle< T, 2 > &triangle, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
bool | intersect (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
bool | intersect (const rectangle< T > &rectangle, const circle< T > &circle) |
|
template<typename T > |
bool | intersect (const rectangle< T > &rectangle, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const rectangle< T > &rectangle, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const quadix< T, 2 > &quadix, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const quadix< T, 2 > &quadix, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
bool | intersect (const circle< T > &circle, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const circle< T > &circle, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const box< T, 3 > &box, const sphere< T > &sphere) |
|
template<typename T > |
bool | intersect (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
bool | intersect (const sphere< T > &sphere, const quadratic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const sphere< T > &sphere, const cubic_bezier< T, 3 > &bezier, const std::size_t &steps=1000) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray1, const ray< T, 2 > &ray2) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray1, const ray< T, 3 > &ray2) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const segment< T, 2 > &segment) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray, const segment< T, 3 > &segment) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray, const box< T, 3 > &box) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray, const triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const circle< T > &circle) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray, const sphere< T > &sphere) |
|
template<typename T > |
bool | intersect (const ray< T, 3 > &ray, const plane< T, 3 > &plane) |
|
template<typename T > |
bool | intersect (const ray< T, 2 > &ray, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | intersect (const plane< T, 3 > &plane1, const plane< T, 3 > &plane2) |
|
template<typename T > |
bool | intersect (const plane< T, 3 > &plane, const sphere< T > &sphere) |
|
template<typename T > |
bool | intersect (const plane< T, 3 > &plane, const line< T, 3 > &line) |
|
template<typename T > |
bool | simple_intersect (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | simple_intersect (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
bool | simple_intersect (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
bool | intersect_vertical_horizontal (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
bool | intersect_vertical_vertical (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
bool | intersect_horizontal_horizontal (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
void | intersection_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, T &ix, T &iy) |
|
template<typename T > |
void | intersection_point (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, T &ix, T &iy) |
|
template<typename T > |
point2d< T > | intersection_point (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
point2d< T > | intersection_point (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
void | intersection_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, T &ix, T &iy, T &iz, const T &fuzzy=T(0.0)) |
|
template<typename T > |
void | intersection_point (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, T &ix, T &iy, T &iz, const T &fuzzy=T(0.0)) |
|
template<typename T > |
point3d< T > | intersection_point (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &fuzzy=T(0.0)) |
|
template<typename T > |
point3d< T > | intersection_point (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &fuzzy=T(0.0)) |
|
template<typename T > |
point2d< T > | intersection_point (const segment< T, 2 > &segment, const line< T, 2 > &line) |
|
template<typename T > |
point3d< T > | intersection_point (const segment< T, 3 > &segment, const line< T, 3 > &line, const T &fuzzy=T(0.0)) |
|
template<typename T > |
point3d< T > | intersection_point (const segment< T, 3 > &segment, const plane< T, 3 > &plane) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 2 > &segment, const quadratic_bezier< T, 2 > &bezier, OutputIterator out, const std::size_t &steps=1000) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 2 > &segment, const cubic_bezier< T, 2 > &bezier, OutputIterator out, const std::size_t &steps=1000) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 3 > &segment, const quadratic_bezier< T, 3 > &bezier, OutputIterator out, const std::size_t &steps=1000) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 3 > &segment, const cubic_bezier< T, 3 > &bezier, OutputIterator out, const std::size_t &steps=1000) |
|
template<typename T > |
point2d< T > | intersection_point (const line< T, 2 > &line1, const line< T, 2 > &line2) |
|
template<typename T > |
point3d< T > | intersection_point (const line< T, 3 > &line1, const line< T, 3 > &line2, const T &fuzzy=T(0.0)) |
|
template<typename T > |
void | intersection_point (const circle< T > &circle1, const circle< T > &circle2, point2d< T > &point1, point2d< T > &point2) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 2 > &segment, const triangle< T, 2 > &triangle, OutputIterator out) |
|
template<typename T > |
void | intersection_point (const line< T, 3 > &line, const triangle< T, 3 > &triangle, point3d< T > &ipoint) |
|
template<typename T > |
point3d< T > | intersection_point (const line< T, 3 > &line, const plane< T, 3 > &plane) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &cx, const T &cy, const T &radius, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 2 > &segment, const circle< T > &circle, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const line< T, 2 > &line, const circle< T > &circle, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const segment< T, 3 > &segment, const sphere< T > &sphere, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const line< T, 3 > &line, const sphere< T > &sphere, OutputIterator out) |
|
template<typename T > |
point2d< T > | intersection_point (const ray< T, 2 > &ray1, const ray< T, 2 > &ray2) |
|
template<typename T > |
point3d< T > | intersection_point (const ray< T, 3 > &ray, const triangle< T, 3 > &triangle) |
|
template<typename T > |
point3d< T > | intersection_point (const ray< T, 3 > &ray, const plane< T, 3 > &plane) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const ray< T, 2 > &ray, const circle< T > &circle, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | intersection_point (const ray< T, 3 > &ray, const sphere< T > &sphere, OutputIterator out) |
|
template<typename T > |
void | intersection_point_line_to_line (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, T &Ix, T &Iy, T &Iz, const T &fuzzy=T(0.0)) |
|
template<typename T > |
T | normalize_angle (const T &angle) |
|
template<typename T > |
T | vertical_mirror (const T &angle) |
|
template<typename T > |
T | horizontal_mirror (const T &angle) |
|
template<typename T > |
unsigned int | quadrant (const T &angle) |
|
template<typename T > |
unsigned int | quadrant (const T &x, const T &y) |
|
template<typename T > |
unsigned int | quadrant (const point2d< T > &point) |
|
template<typename T > |
T | vertex_angle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
T | vertex_angle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
T | vertex_angle (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
T | vertex_angle (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
T | oriented_vertex_angle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const int orient=Clockwise) |
|
template<typename T > |
T | oriented_vertex_angle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const int orient=Clockwise) |
|
template<typename T > |
T | cartesian_angle (const T &x, const T &y) |
|
template<typename T > |
T | cartesian_angle (const point2d< T > &point) |
|
template<typename T > |
T | robust_cartesian_angle (const T &x, const T &y) |
|
template<typename T > |
T | robust_cartesian_angle (const point2d< T > &point) |
|
template<typename T > |
T | cartesian_angle (const T &x, const T &y, const T &ox, const T &oy) |
|
template<typename T > |
T | cartesian_angle (const point2d< T > &point, const point2d< T > &origin) |
|
template<typename T > |
T | robust_cartesian_angle (const T &x, const T &y, const T &ox, const T &oy) |
|
template<typename T > |
T | robust_cartesian_angle (const point2d< T > &point, const point2d< T > &origin) |
|
template<typename T > |
bool | parallel (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const line< T, 2 > &line1, const line< T, 2 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | parallel (const line< T, 3 > &line1, const line< T, 3 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const line< T, 2 > &line1, const line< T, 2 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const line< T, 2 > &line, const segment< T, 2 > &segment, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const line< T, 3 > &line1, const line< T, 3 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_parallel (const line< T, 3 > &line, const segment< T, 3 > &segment, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const line< T, 2 > &line1, const line< T, 2 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const line< T, 2 > &line, const segment< T, 2 > &segment, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | perpendicular (const line< T, 3 > &line1, const line< T, 3 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const line< T, 2 > &line1, const line< T, 2 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const line< T, 3 > &line1, const line< T, 3 > &line2, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | robust_perpendicular (const line< T, 2 > &line, const segment< T, 2 > &segment, const T &epsilon=T(Epsilon)) |
|
template<typename T > |
bool | line_to_line_intersect (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | line_to_line_intersect (const line< T, 2 > &line1, const line< T, 2 > &line2) |
|
template<typename T > |
bool | rectangle_to_rectangle_intersect (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | rectangle_to_rectangle_intersect (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
bool | box_to_box_intersect (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
bool | box_to_box_intersect (const box< T, 3 > &box1, const box< T, 3 > &box2) |
|
template<typename T , unsigned int Dimension, typename Simplex , typename Bezier > |
bool | simplex_to_bezier_intersect (const Simplex &simplex, const Bezier &bezier, const std::size_t &steps) |
|
template<typename T , unsigned int Dimension, typename Bezier , typename Iterator > |
bool | simplex_to_bezier_intersect (const Iterator &begin, const Iterator &end, const Bezier &bezier, const std::size_t &steps) |
|
template<typename T > |
bool | rectangle_within_rectangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | rectangle_within_rectangle (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
bool | box_within_box (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
bool | box_within_box (const box< T, 3 > &box1, const box< T, 3 > &box2) |
|
template<typename T > |
bool | circle_within_rectangle (const T &x, const T &y, const T &radius, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | circle_within_rectangle (const circle< T > &circle, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | triangle_within_rectangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &x5, const T &y5) |
|
template<typename T > |
bool | triangle_within_rectangle (const triangle< T, 2 > &triangle, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | segment_within_rectangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | segment_within_rectangle (const segment< T, 2 > &segment, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | quadix_within_rectangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &x5, const T &y5, const T &x6, const T &y6) |
|
template<typename T > |
bool | quadix_within_rectangle (const quadix< T, 2 > &quadix, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | polygon_within_rectangle (const polygon< T, 2 > &polygon, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | sphere_within_box (const T &x, const T &y, const T &z, const T &radius, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
bool | sphere_within_box (const sphere< T > &sphere, const box< T, 3 > &box) |
|
template<typename T > |
bool | triangle_within_box (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &x5, const T &y5, const T &z5) |
|
template<typename T > |
bool | triangle_within_box (const triangle< T, 3 > &triangle, const box< T, 3 > &box) |
|
template<typename T > |
bool | segment_within_box (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
bool | segment_within_box (const segment< T, 3 > &segment, const box< T, 3 > &box) |
|
template<typename T > |
bool | quadix_within_box (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, const T &x5, const T &y5, const T &z5, const T &x6, const T &y6, const T &z6) |
|
template<typename T > |
bool | quadix_within_box (const quadix< T, 3 > &quadix, const box< T, 3 > &box) |
|
template<typename T > |
bool | polygon_within_box (const polygon< T, 3 > &polygon, const box< T, 3 > &box) |
|
template<typename T > |
bool | circle_in_circle (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
bool | is_tangent (const segment< T, 2 > &segment, const circle< T > &circle) |
|
template<typename T > |
bool | point_of_reflection (const T &sx1, const T &sy1, const T &sx2, const T &sy2, const T &p1x, const T &p1y, const T &p2x, const T &p2y, T &rpx, T &rpy) |
|
template<typename T > |
bool | point_of_reflection (const segment< T, 2 > &segment, const point2d< T > &point1, const point2d< T > &point2, point2d< T > &reflection_point) |
|
template<typename T > |
segment< T, 2 > | edge (const triangle< T, 2 > &triangle, const std::size_t &edge_index) |
|
template<typename T > |
segment< T, 3 > | edge (const triangle< T, 3 > &triangle, const std::size_t &edge_index) |
|
template<typename T > |
segment< T, 2 > | edge (const quadix< T, 2 > &quadix, const std::size_t &edge_index) |
|
template<typename T > |
segment< T, 3 > | edge (const quadix< T, 3 > &quadix, const std::size_t &edge_index) |
|
template<typename T > |
segment< T, 2 > | edge (const rectangle< T > &rectangle, const std::size_t &edge) |
|
template<typename T > |
segment< T, 2 > | edge (const polygon< T, 2 > &polygon, const std::size_t &edge) |
|
template<typename T > |
segment< T, 3 > | edge (const polygon< T, 3 > &polygon, const std::size_t &edge) |
|
template<typename T > |
segment< T, 2 > | opposing_edge (const triangle< T, 2 > &triangle, const std::size_t &corner) |
|
template<typename T > |
segment< T, 3 > | opposing_edge (const triangle< T, 3 > &triangle, const std::size_t &corner) |
|
template<typename T > |
segment< T, 2 > | reverse_segment (const segment< T, 2 > &segment) |
|
template<typename T > |
segment< T, 3 > | reverse_segment (const segment< T, 3 > &segment) |
|
template<typename T > |
point2d< T > | rectangle_corner (const rectangle< T > &rectangle, const std::size_t &corner_index) |
|
template<typename T > |
point3d< T > | box_corner (const box< T, 3 > &box, const std::size_t &corner_index) |
|
template<typename T > |
line< T, 2 > | triangle_bisector (const triangle< T, 2 > &triangle, const std::size_t &bisector) |
|
template<typename T > |
line< T, 3 > | triangle_bisector (const triangle< T, 3 > &triangle, const std::size_t &bisector) |
|
template<typename T > |
line< T, 2 > | triangle_external_bisector (const triangle< T, 2 > &triangle, const std::size_t &corner, const std::size_t &opposing_corner) |
|
template<typename T > |
line< T, 3 > | triangle_external_bisector (const triangle< T, 3 > &triangle, const std::size_t &corner, const std::size_t &opposing_corner) |
|
template<typename T > |
line< T, 2 > | triangle_median (const triangle< T, 2 > &triangle, const std::size_t &median) |
|
template<typename T > |
line< T, 3 > | triangle_median (const triangle< T, 3 > &triangle, const std::size_t &median) |
|
template<typename T > |
line< T, 2 > | triangle_symmedian (const triangle< T, 2 > &triangle, const std::size_t &symmedian) |
|
template<typename T > |
line< T, 3 > | triangle_symmedian (const triangle< T, 3 > &triangle, const std::size_t &symmedian) |
|
template<typename T > |
line< T, 2 > | euler_line (const triangle< T, 2 > &triangle) |
|
template<typename T > |
line< T, 3 > | euler_line (const triangle< T, 3 > &triangle) |
|
template<typename T > |
point2d< T > | exmedian_point (const triangle< T, 2 > &triangle, const std::size_t &corner) |
|
template<typename T > |
point3d< T > | exmedian_point (const triangle< T, 3 > &triangle, const std::size_t &corner) |
|
template<typename T > |
point2d< T > | feuerbach_point (const triangle< T, 2 > &triangle) |
|
template<typename T > |
line< T, 2 > | confined_triangle_median (const triangle< T, 2 > &triangle, const point2d< T > &point, const std::size_t &median) |
|
template<typename T > |
line< T, 3 > | confined_triangle_median (const triangle< T, 3 > &triangle, const point3d< T > &point, const std::size_t &median) |
|
template<typename T > |
line< T, 2 > | create_parallel_line_on_point (const line< T, 2 > &line, const point2d< T > &point) |
|
template<typename T > |
line< T, 3 > | create_parallel_line_on_point (const line< T, 3 > &line, const point3d< T > &point) |
|
template<typename T > |
segment< T, 2 > | create_parallel_segment_on_point (const line< T, 2 > &line, const point2d< T > &point) |
|
template<typename T > |
segment< T, 3 > | create_parallel_segment_on_point (const line< T, 3 > &line, const point3d< T > &point) |
|
template<typename T > |
bool | point_in_rectangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | point_in_rectangle (const point2d< T > &point, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | point_in_rectangle (const T &px, const T &py, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | point_in_rectangle (const point2d< T > &point, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | point_in_rectangle (const point2d< T > &point, const point2d< T > &rect_point1, point2d< T > &rect_point2) |
|
template<typename T > |
bool | point_in_rectangle (const point2d< T > &point, const segment< T, 2 > &segment) |
|
template<typename T > |
bool | point_in_box (const T &px, const T &py, const T &pz, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
bool | point_in_box (const point3d< T > &point, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
bool | point_in_box (const T &px, const T &py, const T &pz, const box< T, 3 > &box) |
|
template<typename T > |
bool | point_in_box (const point3d< T > &point, const box< T, 3 > &box) |
|
template<typename T > |
bool | point_in_box (const point3d< T > &point, const point3d< T > &box_point1, const point3d< T > &box_point2) |
|
template<typename T > |
bool | point_in_box (const point3d< T > &point, const segment< T, 3 > &segment) |
|
template<typename T > |
bool | point_in_triangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
bool | point_in_triangle (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | point_in_triangle (const T &px, const T &py, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | point_in_triangle (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | point_in_quadix (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | point_in_quadix (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
bool | point_in_quadix (const T &px, const T &py, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | point_in_quadix (const point2d< T > &point, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | point_in_circle (const T &px, const T &py, const T &cx, const T &cy, const T &radius) |
|
template<typename T > |
bool | point_in_circle (const T &px, const T &py, const circle< T > &circle) |
|
template<typename T > |
bool | point_in_circle (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
bool | point_in_sphere (const T &px, const T &py, const T &pz, const T &cx, const T &cy, const T &cz, const T &radius) |
|
template<typename T > |
bool | point_in_sphere (const T &px, const T &py, const T &pz, const sphere< T > &sphere) |
|
template<typename T > |
bool | point_in_sphere (const point3d< T > &point, const sphere< T > &sphere) |
|
template<typename T > |
bool | point_in_three_point_circle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
bool | point_in_three_point_circle (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | point_in_three_point_circle (const point2d< T > &point, const triangle< T, 2 > triangle) |
|
template<typename T > |
bool | point_in_focus_area (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
bool | point_in_focus_area (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | point_on_segment (const point2d< T > &point, const segment< T, 2 > &segment) |
|
template<typename T > |
bool | point_on_segment (const point3d< T > &point, const segment< T, 3 > &segment) |
|
template<typename T > |
bool | point_on_ray (const T &px, const T &py, const T &ox, const T &oy, const T &dx, const T &dy) |
|
template<typename T > |
bool | point_on_ray (const T &px, const T &py, const T &pz, const T &ox, const T &oy, const T &oz, const T &dx, const T &dy, const T &dz) |
|
template<typename T > |
bool | point_on_ray (const point2d< T > &point, const ray< T, 2 > &ray) |
|
template<typename T > |
bool | point_on_ray (const point3d< T > &point, const ray< T, 3 > &ray) |
|
template<typename T > |
bool | point_on_rectangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | point_on_rectangle (const point2d< T > &point, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | point_on_rectangle (const T &px, const T &py, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | point_on_rectangle (const point2d< T > &point, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | point_on_triangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
bool | point_on_triangle (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
bool | point_on_triangle (const T &px, const T &py, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | point_on_triangle (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | point_on_quadix (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
bool | point_on_quadix (const point2d< T > &point, const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
bool | point_on_quadix (const T &px, const T &py, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | point_on_quadix (const point2d< T > &point, const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | point_on_circle (const T &px, const T &py, const T &cx, const T &cy, const T &radius) |
|
template<typename T > |
bool | point_on_circle (const T &px, const T &py, const circle< T > &circle) |
|
template<typename T > |
bool | point_on_circle (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
bool | point_on_bezier (const point2d< T > &point, const quadratic_bezier< T, 2 > &bezier, const std::size_t &steps=1000, const T &fuzzy=T(Epsilon)) |
|
template<typename T > |
bool | point_on_bezier (const point2d< T > &point, const cubic_bezier< T, 2 > &bezier, const std::size_t &steps=1000, const T &fuzzy=T(Epsilon)) |
|
template<typename T > |
bool | point_on_bezier (const point3d< T > &point, const quadratic_bezier< T, 3 > &bezier, const std::size_t &steps=1000, const T &fuzzy=T(Epsilon)) |
|
template<typename T > |
bool | point_on_bezier (const point3d< T > &point, const cubic_bezier< T, 3 > &bezier, const std::size_t &steps=1000, const T &fuzzy=T(Epsilon)) |
|
template<typename T > |
point2d< T > | isogonal_conjugate (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | isogonal_conjugate (const point3d< T > &point, const triangle< T, 3 > &triangle) |
|
template<typename T > |
point2d< T > | cyclocevian_conjugate (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
point2d< T > | symmedian_point (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | symmedian_point (const triangle< T, 3 > &triangle) |
|
template<typename T > |
void | create_equilateral_triangle (const T &x1, const T &y1, const T &x2, const T &y2, T &x3, T &y3) |
|
template<typename T > |
void | create_equilateral_triangle (const point2d< T > &point1, const point2d< T > &point2, point2d< T > &point3) |
|
template<typename T > |
triangle< T, 2 > | create_equilateral_triangle (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
triangle< T, 2 > | create_equilateral_triangle (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
triangle< T, 2 > | create_equilateral_triangle (const T &cx, const T &cy, const T &side_length) |
|
template<typename T > |
triangle< T, 2 > | create_equilateral_triangle (const point2d< T > ¢er_point, const T &side_length) |
|
template<typename T > |
triangle< T, 2 > | create_isosceles_triangle (const point2d< T > &point1, const point2d< T > &point2, const T &angle) |
|
template<typename T > |
triangle< T, 2 > | create_isosceles_triangle (const segment< T, 2 > &segment, const T &angle) |
|
template<typename T > |
triangle< T, 2 > | create_triangle (const point2d< T > &point1, const point2d< T > &point2, const T &angle1, const T &angle2) |
|
template<typename T > |
triangle< T, 2 > | create_triangle (const segment< T, 2 > &segment, const T &angle1, const T &angle2) |
|
template<typename T > |
triangle< T, 2 > | create_morley_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_cevian_triangle (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
triangle< T, 3 > | create_cevian_triangle (const triangle< T, 3 > &triangle, const point3d< T > &point) |
|
template<typename T > |
triangle< T, 2 > | create_anticevian_triangle (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
triangle< T, 3 > | create_anticevian_triangle (const triangle< T, 3 > &triangle, const point3d< T > &point) |
|
template<typename T > |
triangle< T, 2 > | create_anticomplementary_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_anticomplementary_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_inner_napoleon_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_outer_napoleon_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_inner_vecten_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_outer_vecten_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_medial_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_medial_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_contact_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_contact_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_symmedial_triangle (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
triangle< T, 2 > | create_orthic_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_orthic_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_pedal_triangle (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_pedal_triangle (const point3d< T > &point, const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_antipedal_triangle (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_excentral_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_excentral_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_incentral_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_incentral_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_intouch_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_extouch_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | create_extouch_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_feuerbach_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_circumcevian_triangle (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
triangle< T, 2 > | create_circummedial_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | create_first_brocard_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
void | create_right_triangle (const wykobi::point2d< T > &p1, const wykobi::point2d< T > &p2, wykobi::point2d< T > &c1, wykobi::point2d< T > &c2) |
|
template<typename T > |
void | create_equilateral_quadix (const T &x1, const T &y1, const T &x2, const T &y2, T &x3, T &y3, T &x4, T &y4) |
|
template<typename T > |
void | create_equilateral_quadix (const point2d< T > &point1, const point2d< T > &point2, point2d< T > &point3, point2d< T > &point4) |
|
template<typename T > |
quadix< T, 2 > | create_equilateral_quadix (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
quadix< T, 2 > | create_equilateral_quadix (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
quadix< T, 2 > | create_equilateral_quadix (const segment< T, 2 > &segment) |
|
template<typename T > |
quadix< T, 2 > | create_equilateral_quadix (const T &cx, const T &cy, const T &side_length) |
|
template<typename T > |
quadix< T, 2 > | create_equilateral_quadix (const point2d< T > ¢er_point, const T &side_length) |
|
template<typename T > |
void | torricelli_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, T &px, T &py) |
|
template<typename T > |
point2d< T > | torricelli_point (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
point2d< T > | torricelli_point (const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | trilateration (const T &c0x, const T &c0y, const T &c0r, const T &c1x, const T &c1y, const T &c1r, const T &c2x, const T &c2y, const T &c2r, T &px, T &py) |
|
template<typename T > |
point2d< T > | trilateration (const circle< T > &c0, const circle< T > &c1, const circle< T > &c2) |
|
template<typename T > |
void | incenter (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, T &px, T &py) |
|
template<typename T > |
void | incenter (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, T &px, T &py, T &pz) |
|
template<typename T > |
point2d< T > | incenter (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
point3d< T > | incenter (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
point2d< T > | incenter (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | incenter (const triangle< T, 3 > &triangle) |
|
template<typename T > |
void | circumcenter (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, T &px, T &py) |
|
template<typename T > |
void | circumcenter (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, T &px, T &py, T &pz) |
|
template<typename T > |
point2d< T > | circumcenter (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
point3d< T > | circumcenter (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
point2d< T > | circumcenter (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | circumcenter (const triangle< T, 3 > &triangle) |
|
template<typename T > |
circle< T > | circumcircle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
circle< T > | circumcircle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
circle< T > | circumcircle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
sphere< T > | circumsphere (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
sphere< T > | circumsphere (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
sphere< T > | circumsphere (const triangle< T, 3 > &triangle) |
|
template<typename T > |
circle< T > | inscribed_circle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
circle< T > | inscribed_circle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
circle< T > | inscribed_circle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
sphere< T > | inscribed_sphere (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
sphere< T > | inscribed_sphere (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
sphere< T > | inscribed_sphere (const triangle< T, 3 > &triangle) |
|
template<typename T > |
circle< T > | nine_point_circle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
circle< T > | nine_point_circle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
circle< T > | nine_point_circle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point2d< T > | orthocenter (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | orthocenter (const triangle< T, 3 > &triangle) |
|
template<typename T > |
point2d< T > | excenter (const triangle< T, 2 > &triangle, const std::size_t &corner) |
|
template<typename T > |
point3d< T > | excenter (const triangle< T, 3 > &triangle, const std::size_t &corner) |
|
template<typename T > |
circle< T > | excircle (const triangle< T, 2 > &triangle, const std::size_t &i) |
|
template<typename T > |
circle< T > | mandart_circle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
circle< T > | brocard_circle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
circle< T > | invert_circle_across_circle (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
sphere< T > | invert_sphere_across_sphere (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
void | circle_tangent_points (const circle< T > &circle, const point2d< T > &point, point2d< T > &point1, point2d< T > &point2) |
|
template<typename T > |
void | circle_internal_tangent_lines (const circle< T > &circle0, const circle< T > &circle1, std::vector< line< T, 2 > > &lines) |
|
template<typename T > |
void | circle_internal_tangent_segments (const circle< T > &circle0, const circle< T > &circle1, std::vector< segment< T, 2 > > &segments) |
|
template<typename T > |
void | circle_outer_tangent_lines (const circle< T > &circle0, const circle< T > &circle1, std::vector< line< T, 2 > > &lines) |
|
template<typename T > |
void | circle_outer_tangent_segments (const circle< T > &circle0, const circle< T > &circle1, std::vector< segment< T, 2 > > &segments) |
|
template<typename T > |
line< T, 2 > | tangent_line (const circle< T > &circle, const point2d< T > &point) |
|
template<typename T > |
line< T, 2 > | create_line_from_bisector (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
segment< T, 2 > | create_segment_from_bisector (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
ray< T, 2 > | create_ray_from_bisector (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
line< T, 3 > | create_line_from_bisector (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
segment< T, 3 > | create_segment_from_bisector (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
ray< T, 3 > | create_ray_from_bisector (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
line< T, 2 > | create_line_from_bisector (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
segment< T, 2 > | create_segment_from_bisector (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
ray< T, 2 > | create_ray_from_bisector (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
line< T, 3 > | create_line_from_bisector (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
segment< T, 3 > | create_segment_from_bisector (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
ray< T, 3 > | create_ray_from_bisector (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
line< T, 2 > | create_perpendicular_bisector (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
line< T, 2 > | create_perpendicular_bisector (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
line< T, 2 > | create_perpendicular_bisector (const segment< T, 2 > &segment) |
|
template<typename T > |
line< T, 2 > | create_perpendicular_line_at_end_point (const line< T, 2 > &line) |
|
template<typename T > |
void | closest_point_on_segment_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
void | closest_point_on_segment_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | closest_point_on_line_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
void | closest_point_on_line_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | order_sensitive_closest_point_on_segment_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
void | order_sensitive_closest_point_on_segment_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | order_sensitive_closest_point_on_line_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
void | order_sensitive_closest_point_on_line_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | closest_point_on_ray_from_point (const T &ox, const T &oy, const T &dx, const T &dy, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
void | closest_point_on_ray_from_point (const T &ox, const T &oy, const T &oz, const T &dx, const T &dy, const T &dz, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
point2d< T > | closest_point_on_segment_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
point3d< T > | closest_point_on_segment_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point2d< T > | closest_point_on_segment_from_point (const segment< T, 2 > &segment, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | closest_point_on_segment_from_point (const segment< T, 3 > &segment, const point3d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_line_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
point3d< T > | closest_point_on_line_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point2d< T > | closest_point_on_line_from_point (const line< T, 2 > &line, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | closest_point_on_line_from_point (const line< T, 3 > &line, const point3d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_ray_from_point (const T &ox, const T &oy, const T &dx, const T &dy, const T &px, const T &py) |
|
template<typename T > |
point3d< T > | closest_point_on_ray_from_point (const T &ox, const T &oy, const T &oz, const T &dx, const T &dy, const T &dz, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point2d< T > | closest_point_on_ray_from_point (const ray< T, 2 > &ray, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | closest_point_on_ray_from_point (const ray< T, 3 > &ray, const point3d< T > &point) |
|
template<typename T > |
void | closest_point_on_triangle_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | closest_point_on_triangle_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &px, const T &py) |
|
template<typename T > |
point2d< T > | closest_point_on_triangle_from_point (const triangle< T, 2 > &triangle, const T &px, const T &py) |
|
template<typename T > |
point2d< T > | closest_point_on_triangle_from_point (const triangle< T, 2 > &triangle, const point2d< T > &point) |
|
template<typename T > |
void | closest_point_on_triangle_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
point3d< T > | closest_point_on_triangle_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point3d< T > | closest_point_on_triangle_from_point (const triangle< T, 3 > &triangle, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point3d< T > | closest_point_on_triangle_from_point (const triangle< T, 3 > &triangle, const point3d< T > &point) |
|
template<typename T > |
void | closest_point_on_rectangle_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | closest_point_on_rectangle_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &px, const T &py) |
|
template<typename T > |
point2d< T > | closest_point_on_rectangle_from_point (const rectangle< T > &rectangle, const T &px, const T &py) |
|
template<typename T > |
point2d< T > | closest_point_on_rectangle_from_point (const rectangle< T > &rectangle, const point2d< T > &point) |
|
template<typename T > |
void | closest_point_on_box_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz, T &nx, T &ny, T &nz) |
|
template<typename T > |
point3d< T > | closest_point_on_box_from_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point3d< T > | closest_point_on_box_from_point (const box< T, 3 > &box, const T &px, const T &py, const T &pz) |
|
template<typename T > |
point3d< T > | closest_point_on_box_from_point (const box< T, 3 > &box, const point3d< T > &point) |
|
template<typename T > |
void | closest_point_on_quadix_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &px, const T &py, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | closest_point_on_quadix_from_point (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, const T &px, const T &py) |
|
template<typename T > |
point2d< T > | closest_point_on_quadix_from_point (const quadix< T, 2 > &quadix, const point2d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_circle_from_point (const circle< T > &circle, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | closest_point_on_sphere_from_point (const sphere< T > &sphere, const point3d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_aabbb_from_point (const rectangle< T > &rectangle, const point2d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_circle_from_segment (const circle< T > &circle, const segment< T, 2 > &segment) |
|
template<typename T > |
point3d< T > | closest_point_on_sphere_from_segment (const sphere< T > &sphere, const segment< T, 3 > &segment) |
|
template<typename T > |
point3d< T > | closest_point_on_plane_from_point (const plane< T, 3 > &plane, const point3d< T > &point) |
|
template<typename T > |
point2d< T > | closest_point_on_bezier_from_point (const quadratic_bezier< T, 2 > &bezier, const point2d< T > &point, const std::size_t &steps=1000) |
|
template<typename T > |
point2d< T > | closest_point_on_bezier_from_point (const cubic_bezier< T, 2 > &bezier, const point2d< T > &point, const std::size_t &steps=1000) |
|
template<typename T > |
point3d< T > | closest_point_on_bezier_from_point (const quadratic_bezier< T, 3 > &bezier, const point3d< T > &point, const std::size_t &steps=1000) |
|
template<typename T > |
point3d< T > | closest_point_on_bezier_from_point (const cubic_bezier< T, 3 > &bezier, const point3d< T > &point, const std::size_t &steps=1000) |
|
template<typename T > |
point2d< T > | closest_point_on_circle_from_circle (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
point3d< T > | closest_point_on_sphere_from_sphere (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
point2d< T > | closest_point_on_polygon_from_point (const polygon< T, 2 > &polygon, const point2d< T > &point) |
|
template<typename T > |
T | minimum_distance_from_point_to_segment (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | minimum_distance_from_point_to_segment (const T &px, const T &py, const T &pz, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | minimum_distance_from_point_to_segment (const point2d< T > &point, const segment< T, 2 > &segment) |
|
template<typename T > |
T | minimum_distance_from_point_to_segment (const point3d< T > &point, const segment< T, 3 > &segment) |
|
template<typename T > |
T | minimum_distance_from_point_to_line (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | minimum_distance_from_point_to_line (const T &px, const T &py, const T &pz, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | minimum_distance_from_point_to_line (const point2d< T > &point, const line< T, 2 > &line) |
|
template<typename T > |
T | minimum_distance_from_point_to_line (const point3d< T > &point, const line< T, 3 > &line) |
|
template<typename T > |
T | minimum_distance_from_point_to_triangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
T | minimum_distance_from_point_to_triangle (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | minimum_distance_from_point_to_rectangle (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | minimum_distance_from_point_to_rectangle (const point2d< T > &point, const rectangle< T > &rectangle) |
|
template<typename T > |
void | segment_mid_point (const T &x1, const T &y1, const T &x2, const T &y2, T &midx, T &midy) |
|
template<typename T > |
void | segment_mid_point (const segment< T, 2 > &segment, T &midx, T &midy) |
|
template<typename T > |
point2d< T > | segment_mid_point (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
point2d< T > | segment_mid_point (const segment< T, 2 > &segment) |
|
template<typename T > |
void | segment_mid_point (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, T &midx, T &midy, T &midz) |
|
template<typename T > |
void | segment_mid_point (const segment< T, 3 > &segment, T &midx, T &midy, T &midz) |
|
template<typename T > |
point3d< T > | segment_mid_point (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
point3d< T > | segment_mid_point (const segment< T, 3 > &segment) |
|
template<typename T > |
void | centroid (const T &x1, const T &y1, const T &x2, const T &y2, T &x, T &y) |
|
template<typename T > |
point2d< T > | centroid (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
point2d< T > | centroid (const segment< T, 2 > &segment) |
|
template<typename T > |
void | centroid (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, T &x, T &y) |
|
template<typename T > |
void | centroid (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, T &x, T &y, T &z) |
|
template<typename T > |
void | centroid (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, T &x, T &y) |
|
template<typename T > |
void | centroid (const triangle< T, 2 > &triangle, T &x, T &y) |
|
template<typename T > |
void | centroid (const triangle< T, 3 > &triangle, T &x, T &y, T &z) |
|
template<typename T > |
void | centroid (const quadix< T, 2 > &quadix, T &x, T &y) |
|
template<typename T > |
void | centroid (const rectangle< T > &rectangle, T &x, T &y) |
|
template<typename T > |
void | centroid (const box< T, 3 > &box, T &x, T &y, T &z) |
|
template<typename T > |
void | centroid (const polygon< T, 2 > &polygon, T &x, T &y) |
|
template<typename T > |
point2d< T > | centroid (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
point2d< T > | centroid (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
point2d< T > | centroid (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | centroid (const triangle< T, 3 > &triangle) |
|
template<typename T > |
point2d< T > | centroid (const quadix< T, 2 > &quadix) |
|
template<typename T > |
point2d< T > | centroid (const rectangle< T > &rectangle) |
|
template<typename T > |
point3d< T > | centroid (const box< T, 3 > &box) |
|
template<typename T > |
point2d< T > | centroid (const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | common_center (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
bool | common_center (const sphere< T > &sphere1, const sphere< T > &circle2) |
|
template<typename T > |
bool | point_in_convex_polygon (const T &px, const T &py, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_in_convex_polygon (const point2d< T > &point, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_on_polygon_edge (const T &px, const T &py, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_on_polygon_edge (const point2d< T > &point, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_in_polygon (const T &px, const T &py, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_in_polygon (const point2d< T > &point, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_in_polygon_winding_number (const T &px, const T &py, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | point_in_polygon_winding_number (const point2d< T > &point, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | convex_quadix (const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | convex_quadix (const quadix< T, 3 > &quadix) |
|
template<typename T > |
bool | is_convex_polygon (const polygon< T, 2 > &polygon) |
|
template<typename T > |
polygon< T, 2 > | remove_consecutive_collinear_points (const polygon< T, 2 > &polygon) |
|
template<typename T , typename InputIterator , typename OutputIterator > |
void | remove_consecutive_collinear_points (const InputIterator begin, const InputIterator end, OutputIterator out) |
|
template<typename T > |
bool | convex_vertex (const std::size_t &index, const polygon< T, 2 > &polygon, const int &polygon_orientation=LeftHandSide) |
|
template<typename T > |
bool | collinear_vertex (const std::size_t &index, const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | vertex_is_ear (const std::size_t &index, const polygon< T, 2 > &polygon) |
|
template<typename T > |
triangle< T, 2 > | vertex_triangle (const std::size_t &index, const polygon< T, 2 > polygon) |
|
template<typename T > |
int | polygon_orientation (const polygon< T, 2 > &polygon) |
|
template<typename T > |
bool | is_equilateral_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | is_equilateral_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | is_isosceles_triangle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | is_isosceles_triangle (const triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | is_right_triangle (const wykobi::triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | is_right_triangle (const wykobi::triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | are_perspective_triangles (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
bool | are_perspective_triangles (const triangle< T, 3 > &triangle1, const triangle< T, 3 > &triangle2) |
|
template<typename T > |
line< T, 2 > | perspectrix (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
line< T, 3 > | perspectrix (const triangle< T, 3 > &triangle1, const triangle< T, 3 > &triangle2) |
|
template<typename T > |
void | mirror (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, T &nx, T &ny) |
|
template<typename T > |
void | mirror (const T &px, const T &py, const T &pz, const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, T &nx, T &ny, T &nz) |
|
template<typename T > |
point2d< T > | mirror (const point2d< T > &point, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
segment< T, 2 > | mirror (const segment< T, 2 > &segment, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
line< T, 2 > | mirror (const line< T, 2 > &line, const wykobi::line< T, 2 > &mirror_axis) |
|
template<typename T > |
rectangle< T > | mirror (const rectangle< T > &rectangle, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
triangle< T, 2 > | mirror (const triangle< T, 2 > &triangle, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
quadix< T, 2 > | mirror (const quadix< T, 2 > &quadix, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
circle< T > | mirror (const circle< T > &circle, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
polygon< T, 2 > | mirror (const polygon< T, 2 > &polygon, const line< T, 2 > &mirror_axis) |
|
template<typename T > |
point3d< T > | mirror (const point3d< T > &point, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
segment< T, 3 > | mirror (const segment< T, 3 > &segment, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
line< T, 3 > | mirror (const line< T, 3 > &line, const wykobi::line< T, 3 > &mirror_axis) |
|
template<typename T > |
box< T, 3 > | mirror (const box< T, 3 > &box, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
triangle< T, 3 > | mirror (const triangle< T, 3 > &triangle, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
quadix< T, 3 > | mirror (const quadix< T, 3 > &quadix, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
sphere< T > | mirror (const sphere< T > &sphere, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
polygon< T, 3 > | mirror (const polygon< T, 3 > &polygon, const line< T, 3 > &mirror_axis) |
|
template<typename T > |
point3d< T > | mirror (const point3d< T > &point, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
segment< T, 3 > | mirror (const segment< T, 3 > &segment, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
line< T, 3 > | mirror (const line< T, 3 > &line, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
box< T, 3 > | mirror (const box< T, 3 > &box, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
triangle< T, 3 > | mirror (const triangle< T, 3 > &triangle, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
quadix< T, 3 > | mirror (const quadix< T, 3 > &quadix, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
sphere< T > | mirror (const sphere< T > &sphere, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
polygon< T, 3 > | mirror (const polygon< T, 3 > &polygon, const plane< T, 3 > &mirror_plane) |
|
template<typename T > |
void | nonsymmetric_mirror (const T &px, const T &py, const T &x1, const T &y1, const T &x2, const T &y2, const T &ratio, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | nonsymmetric_mirror (const point2d< T > &point, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 2 > | nonsymmetric_mirror (const segment< T, 2 > &segment, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
rectangle< T > | nonsymmetric_mirror (const rectangle< T > &rectangle, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
triangle< T, 2 > | nonsymmetric_mirror (const triangle< T, 2 > &triangle, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
quadix< T, 2 > | nonsymmetric_mirror (const quadix< T, 2 > &quadix, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
circle< T > | nonsymmetric_mirror (const circle< T > &circle, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
polygon< T, 2 > | nonsymmetric_mirror (const polygon< T, 2 > &polygon, const T &ratio, const line< T, 2 > &line) |
|
template<typename T > |
point3d< T > | nonsymmetric_mirror (const point3d< T > &point, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
segment< T, 3 > | nonsymmetric_mirror (const segment< T, 3 > &segment, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
box< T, 3 > | nonsymmetric_mirror (const box< T, 3 > &box, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
triangle< T, 3 > | nonsymmetric_mirror (const triangle< T, 3 > &triangle, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
quadix< T, 3 > | nonsymmetric_mirror (const quadix< T, 3 > &quadix, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
circle< T > | nonsymmetric_mirror (const sphere< T > &sphere, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
polygon< T, 3 > | nonsymmetric_mirror (const polygon< T, 3 > &polygon, const T &ratio, const plane< T, 3 > &plane) |
|
template<typename T > |
point2d< T > | invert_point (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
point3d< T > | invert_point (const point3d< T > &point, const sphere< T > &sphere) |
|
template<typename T > |
point2d< T > | antipodal_point (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
point3d< T > | antipodal_point (const point3d< T > &point, const sphere< T > &sphere) |
|
template<typename T > |
T | distance (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | distance (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | distance (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
T | distance (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
T | distance (const curve_point< T, 2 > &point1, const curve_point< T, 2 > &point2) |
|
template<typename T > |
T | distance (const curve_point< T, 3 > &point1, const curve_point< T, 3 > &point2) |
|
template<typename T > |
T | distance (const point2d< T > &point, const segment< T, 2 > &segment) |
|
template<typename T > |
T | distance (const point3d< T > &point, const segment< T, 3 > &segment) |
|
template<typename T > |
T | distance (const point2d< T > &point, const rectangle< T > &rectangle) |
|
template<typename T > |
T | distance (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | distance (const point2d< T > &point, const quadix< T, 2 > &quadix) |
|
template<typename T > |
T | distance (const point2d< T > &point, const ray< T, 2 > &ray) |
|
template<typename T > |
T | distance (const point3d< T > &point, const ray< T, 3 > &ray) |
|
template<typename T > |
T | distance (const point3d< T > &point, const plane< T, 3 > &plane) |
|
template<typename T > |
T | distance (const line< T, 2 > &line1, const line< T, 2 > &line2) |
|
template<typename T > |
T | distance (const line< T, 3 > &line1, const line< T, 3 > &line2) |
|
template<typename T > |
T | distance (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
T | distance (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2) |
|
template<typename T > |
T | distance (const segment< T, 2 > &segment) |
|
template<typename T > |
T | distance (const segment< T, 3 > &segment) |
|
template<typename T > |
T | distance (const segment< T, 2 > &segment, const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | distance (const segment< T, 3 > &segment, const triangle< T, 3 > &triangle) |
|
template<typename T > |
T | distance (const segment< T, 2 > &segment, const rectangle< T > &rectangle) |
|
template<typename T > |
T | distance (const segment< T, 2 > &segment, const circle< T > &circle) |
|
template<typename T > |
T | distance (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
T | distance (const triangle< T, 2 > &triangle, const rectangle< T > &rectangle) |
|
template<typename T > |
T | distance (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
T | distance (const triangle< T, 2 > &triangle, const circle< T > &circle) |
|
template<typename T > |
T | distance (const rectangle< T > &rectangle, const circle< T > &circle) |
|
template<typename T > |
T | distance (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
T | distance (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
T | distance (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
T | lay_distance (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | lay_distance (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | lay_distance (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
T | lay_distance (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
T | lay_distance (const point2d< T > &point, const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | lay_distance (const point2d< T > &point, const quadix< T, 2 > &triangle) |
|
template<typename T > |
T | lay_distance (const point2d< T > &point, const ray< T, 2 > &ray) |
|
template<typename T > |
T | lay_distance (const point3d< T > &point, const ray< T, 3 > &ray) |
|
template<typename T > |
T | lay_distance (const point3d< T > &point, const plane< T, 3 > &plane) |
|
template<typename T > |
T | lay_distance (const segment< T, 2 > &segment1, const segment< T, 2 > &segment2) |
|
template<typename T > |
T | lay_distance (const segment< T, 3 > &segment1, const segment< T, 3 > &segment2) |
|
template<typename T > |
T | lay_distance (const line< T, 3 > &line1, const line< T, 3 > &line2) |
|
template<typename T > |
T | lay_distance (const segment< T, 2 > &segment) |
|
template<typename T > |
T | lay_distance (const segment< T, 3 > &segment) |
|
template<typename T > |
T | lay_distance (const segment< T, 2 > &segment, const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | lay_distance (const segment< T, 3 > &segment, const triangle< T, 3 > &triangle) |
|
template<typename T > |
T | manhattan_distance (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | manhattan_distance (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | manhattan_distance (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
T | manhattan_distance (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
T | manhattan_distance (const point2d< T > &point, const ray< T, 2 > &ray) |
|
template<typename T > |
T | manhattan_distance (const point3d< T > &point, const ray< T, 3 > &ray) |
|
template<typename T > |
T | manhattan_distance (const segment< T, 2 > &segment) |
|
template<typename T > |
T | manhattan_distance (const segment< T, 3 > &segment) |
|
template<typename T > |
T | manhattan_distance (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
T | chebyshev_distance (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | chebyshev_distance (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | chebyshev_distance (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
T | chebyshev_distance (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
T | chebyshev_distance (const segment< T, 2 > &segment) |
|
template<typename T > |
T | chebyshev_distance (const segment< T, 3 > &segment) |
|
template<typename T > |
T | chebyshev_distance (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
T | inverse_chebyshev_distance (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
T | inverse_chebyshev_distance (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
T | inverse_chebyshev_distance (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
T | inverse_chebyshev_distance (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
T | inverse_chebyshev_distance (const segment< T, 2 > &segment) |
|
template<typename T > |
T | inverse_chebyshev_distance (const segment< T, 3 > &segment) |
|
template<typename T > |
T | inverse_chebyshev_distance (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
point2d< T > | minkowski_sum (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const quadix< T, 2 > &quadix1, const quadix< T, 2 > &quadix2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const circle< T > &triangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const triangle< T, 2 > &triangle, const rectangle< T > &rectangle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const triangle< T, 2 > &triangle, const quadix< T, 2 > &quadix) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const triangle< T, 2 > &triangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const quadix< T, 2 > &quadix, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const quadix< T, 2 > &quadix, const rectangle< T > &rectangle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const rectangle< T > &rectangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_sum (const polygon< T, 2 > &polygon1, const polygon< T, 2 > &polygon2) |
|
template<typename T > |
point2d< T > | minkowski_difference (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const triangle< T, 2 > &triangle1, const triangle< T, 2 > &triangle2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const quadix< T, 2 > &quadix1, const quadix< T, 2 > &quadix2) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const circle< T > &triangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const triangle< T, 2 > &triangle, const rectangle< T > &rectangle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const triangle< T, 2 > &triangle, const quadix< T, 2 > &quadix) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const triangle< T, 2 > &triangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const quadix< T, 2 > &quadix, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const quadix< T, 2 > &quadix, const rectangle< T > &rectangle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const rectangle< T > &rectangle, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | minkowski_difference (const polygon< T, 2 > &polygon1, const polygon< T, 2 > &polygon2) |
|
template<typename T > |
T | distance_segment_to_segment (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
T | distance_segment_to_segment (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
T | lay_distance_segment_to_segment (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
T | lay_distance_segment_to_segment (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
T | distance_line_to_line (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
T | distance_line_to_line (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
T | lay_distance_line_to_line (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
T | lay_distance_line_to_line (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
T | lay_distance_from_point_to_circle_center (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
T | lay_distance_from_point_to_sphere_center (const point3d< T > &point, const sphere< T > &sphere) |
|
template<typename T > |
T | distance_from_point_to_circle_center (const point2d< T > &point, const circle< T > &circle) |
|
template<typename T > |
T | distance_from_point_to_sphere_center (const point3d< T > &point, const sphere< T > &sphere) |
|
template<typename T > |
T | span_length (const rectangle< T > &rectangle) |
|
template<typename T > |
T | span_length (const box< T, 3 > &box) |
|
template<typename T > |
void | project_point_t (const T &srcx, const T &srcy, const T &destx, const T &desty, const T &t, T &nx, T &ny) |
|
template<typename T > |
void | project_point_t (const T &srcx, const T &srcy, const T &srcz, const T &destx, const T &desty, const T &destz, const T &t, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | project_point (const T &srcx, const T &srcy, const T &destx, const T &desty, const T &dist, T &nx, T &ny) |
|
template<typename T > |
void | project_point (const T &srcx, const T &srcy, const T &srcz, const T &destx, const T &desty, const T &destz, const T &dist, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | project_point (const T &px, const T &py, const T &angle, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point0 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point45 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point90 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point135 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point180 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point225 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point270 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
void | project_point315 (const T &px, const T &py, const T &distance, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | project_point_t (const point2d< T > &source_point, const point2d< T > &destination_point, const T &t) |
|
template<typename T > |
point3d< T > | project_point_t (const point3d< T > &source_point, const point3d< T > &destination_point, const T &t) |
|
template<typename T > |
point2d< T > | project_point (const point2d< T > &source_point, const point2d< T > &destination_point, const T &distance) |
|
template<typename T > |
point3d< T > | project_point (const point3d< T > &source_point, const point3d< T > &destination_point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point (const point2d< T > &point, const T &angle, const T &distance) |
|
template<typename T > |
point2d< T > | project_point0 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point45 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point90 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point135 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point180 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point225 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point270 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_point315 (const point2d< T > &point, const T &distance) |
|
template<typename T > |
point2d< T > | project_object (const point2d< T > &point, const T &angle, const T &distance) |
|
template<typename T > |
segment< T, 2 > | project_object (const segment< T, 2 > &segment, const T &angle, const T &distance) |
|
template<typename T > |
triangle< T, 2 > | project_object (const triangle< T, 2 > &triangle, const T &angle, const T &distance) |
|
template<typename T > |
quadix< T, 2 > | project_object (const quadix< T, 2 > &quadix, const T &angle, const T &distance) |
|
template<typename T > |
circle< T > | project_object (const circle< T > &circle, const T &angle, const T &distance) |
|
template<typename T > |
polygon< T, 2 > | project_object (const polygon< T, 2 > &polygon, const T &angle, const T &distance) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const point2d< T > &point, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const triangle< T, 2 > &triangle, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const rectangle< T > &rectangle, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const quadix< T, 2 > &quadix, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const circle< T > &circle, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 2 > | project_onto_axis (const polygon< T, 2 > &polygon, const line< T, 2 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const point3d< T > &point, const line< T, 3 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const triangle< T, 3 > &triangle, const line< T, 3 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const box< T, 3 > &box, const line< T, 3 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const quadix< T, 3 > &quadix, const line< T, 3 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const sphere< T > &sphere, const line< T, 3 > &axis) |
|
template<typename T > |
segment< T, 3 > | project_onto_axis (const polygon< T, 3 > &polygon, const line< T, 3 > &axis) |
|
template<typename T > |
void | calculate_bezier_coefficients (const quadratic_bezier< T, 2 > &bezier, T &ax, T &bx, T &ay, T &by) |
|
template<typename T > |
void | calculate_bezier_coefficients (const quadratic_bezier< T, 3 > &bezier, T &ax, T &bx, T &ay, T &by, T &az, T &bz) |
|
template<typename T > |
void | calculate_bezier_coefficients (const cubic_bezier< T, 2 > &bezier, T &ax, T &bx, T &cx, T &ay, T &by, T &cy) |
|
template<typename T > |
void | calculate_bezier_coefficients (const cubic_bezier< T, 3 > &bezier, T &ax, T &bx, T &cx, T &ay, T &by, T &cy, T &az, T &bz, T &cz) |
|
template<typename T > |
void | calculate_bezier_coefficients (const quadratic_bezier< T, 2 > &bezier, bezier_coefficients< T, 2, eQuadraticBezier > &coeffs) |
|
template<typename T > |
void | calculate_bezier_coefficients (const quadratic_bezier< T, 3 > &bezier, bezier_coefficients< T, 3, eQuadraticBezier > &coeffs) |
|
template<typename T > |
void | calculate_bezier_coefficients (const cubic_bezier< T, 2 > &bezier, bezier_coefficients< T, 2, eCubicBezier > &coeffs) |
|
template<typename T > |
void | calculate_bezier_coefficients (const cubic_bezier< T, 3 > &bezier, bezier_coefficients< T, 3, eCubicBezier > &coeffs) |
|
template<typename T > |
point2d< T > | create_point_on_bezier (const point2d< T > &start_point, const T &ax, const T &bx, const T &ay, const T &by, const T &t) |
|
template<typename T > |
point3d< T > | create_point_on_bezier (const point3d< T > &start_point, const T &ax, const T &bx, const T &ay, const T &by, const T &az, const T &bz, const T &t) |
|
template<typename T > |
point2d< T > | create_point_on_bezier (const point2d< T > &start_point, const T &ax, const T &bx, const T &cx, const T &ay, const T &by, const T &cy, const T &t) |
|
template<typename T > |
point3d< T > | create_point_on_bezier (const point3d< T > &start_point, const T &ax, const T &bx, const T &cx, const T &ay, const T &by, const T &cy, const T &az, const T &bz, const T &cz, const T &t) |
|
template<typename T > |
point2d< T > | create_point_on_bezier (const point2d< T > &start_point, const bezier_coefficients< T, 2, eQuadraticBezier > &coeffs, const T &t) |
|
template<typename T > |
point3d< T > | create_point_on_bezier (const point3d< T > &start_point, const bezier_coefficients< T, 3, eQuadraticBezier > &coeffs, const T &t) |
|
template<typename T > |
point2d< T > | create_point_on_bezier (const point2d< T > &start_point, const bezier_coefficients< T, 2, eCubicBezier > &coeffs, const T &t) |
|
template<typename T > |
point3d< T > | create_point_on_bezier (const point3d< T > &start_point, const bezier_coefficients< T, 3, eCubicBezier > &coeffs, const T &t) |
|
template<typename T , typename OutputIterator > |
void | generate_bezier (const quadratic_bezier< T, 2 > &bezier, OutputIterator out, const std::size_t &point_count=1000) |
|
template<typename T , typename OutputIterator > |
void | generate_bezier (const quadratic_bezier< T, 3 > &bezier, OutputIterator out, const std::size_t &point_count=1000) |
|
template<typename T , typename OutputIterator > |
void | generate_bezier (const cubic_bezier< T, 2 > &bezier, OutputIterator out, const std::size_t &point_count=1000) |
|
template<typename T , typename OutputIterator > |
void | generate_bezier (const cubic_bezier< T, 3 > &bezier, OutputIterator out, const std::size_t &point_count=1000) |
|
template<typename T > |
T | bezier_curve_length (const quadratic_bezier< T, 2 > &bezier, const std::size_t &point_count) |
|
template<typename T > |
T | bezier_curve_length (const quadratic_bezier< T, 3 > &bezier, const std::size_t &point_count) |
|
template<typename T > |
T | bezier_curve_length (const cubic_bezier< T, 2 > &bezier, const std::size_t &point_count) |
|
template<typename T > |
T | bezier_curve_length (const cubic_bezier< T, 3 > &bezier, const std::size_t &point_count) |
|
template<typename T > |
triangle< T, 2 > | bezier_convex_hull (const quadratic_bezier< T, 2 > &bezier) |
|
template<typename T > |
quadix< T, 2 > | bezier_convex_hull (const cubic_bezier< T, 2 > &bezier) |
|
template<typename T > |
segment< T, 2 > | center_at_location (const segment< T, 2 > &segment, const T &x, const T &y) |
|
template<typename T > |
segment< T, 3 > | center_at_location (const segment< T, 3 > &segment, const T &x, const T &y, const T &z) |
|
template<typename T > |
triangle< T, 2 > | center_at_location (const triangle< T, 2 > &triangle, const T &x, const T &y) |
|
template<typename T > |
rectangle< T > | center_at_location (const rectangle< T > &rectangle, const T &x, const T &y) |
|
template<typename T > |
box< T, 3 > | center_at_location (const box< T, 3 > &box, const T &x, const T &y, const T &z) |
|
template<typename T > |
quadix< T, 2 > | center_at_location (const quadix< T, 2 > &quadix, const T &x, const T &y) |
|
template<typename T > |
circle< T > | center_at_location (const circle< T > &circle, const T &x, const T &y) |
|
template<typename T > |
polygon< T, 2 > | center_at_location (const polygon< T, 2 > &polygon, const T &x, const T &y) |
|
template<typename T > |
segment< T, 2 > | center_at_location (const segment< T, 2 > &segment, const point2d< T > ¢er_point) |
|
template<typename T > |
segment< T, 3 > | center_at_location (const segment< T, 3 > &segment, const point3d< T > ¢er_point) |
|
template<typename T > |
triangle< T, 2 > | center_at_location (const triangle< T, 2 > &triangle, const point2d< T > ¢er_point) |
|
template<typename T > |
rectangle< T > | center_at_location (const rectangle< T > &rectangle, const point2d< T > ¢er_point) |
|
template<typename T > |
box< T, 3 > | center_at_location (const box< T, 3 > &box, const point3d< T > ¢er_point) |
|
template<typename T > |
quadix< T, 2 > | center_at_location (const quadix< T, 2 > &quadix, const point2d< T > ¢er_point) |
|
template<typename T > |
circle< T > | center_at_location (const circle< T > &circle, const point2d< T > ¢er_point) |
|
template<typename T > |
polygon< T, 2 > | center_at_location (const polygon< T, 2 > &polygon, const point2d< T > ¢er_point) |
|
template<typename T > |
void | shorten_segment (T &x1, T &y1, T &x2, T &y2, const T &amount) |
|
template<typename T > |
void | shorten_segment (T &x1, T &y1, T &z1, T &x2, T &y2, T &z2, const T &amount) |
|
template<typename T > |
segment< T, 2 > | shorten_segment (const segment< T, 2 > &segment, const T &amount) |
|
template<typename T > |
segment< T, 3 > | shorten_segment (const segment< T, 3 > &segment, const T &amount) |
|
template<typename T > |
void | lengthen_segment (T &x1, T &y1, T &x2, T &y2, const T &amount) |
|
template<typename T > |
void | lengthen_segment (T &x1, T &y1, T &z1, T &x2, T &y2, T &z2, const T &amount) |
|
template<typename T > |
segment< T, 2 > | lengthen_segment (const segment< T, 2 > &segment, const T &amount) |
|
template<typename T > |
segment< T, 3 > | lengthen_segment (const segment< T, 3 > &segment, const T &amount) |
|
template<typename T > |
int | out_code (const point2d< T > &point, const rectangle< T > &rectangle) |
|
template<typename T > |
bool | clip (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4, T &cx1, T &cy1, T &cx2, T &cy2) |
|
template<typename T > |
bool | clip (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4, T &cx1, T &cy1, T &cz1, T &cx2, T &cy2, T &cz2) |
|
template<typename T > |
bool | clip (const segment< T, 2 > &src_segment, const rectangle< T > &rectangle, segment< T, 2 > &csegment) |
|
template<typename T > |
bool | clip (const segment< T, 2 > &src_segment, const triangle< T, 2 > &triangle, segment< T, 2 > &csegment) |
|
template<typename T > |
bool | clip (const segment< T, 2 > &src_segment, const quadix< T, 2 > &quadix, segment< T, 2 > &csegment) |
|
template<typename T > |
bool | clip (const segment< T, 2 > &src_segment, const circle< T > &circle, segment< T, 2 > &csegment) |
|
template<typename T > |
bool | clip (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2, rectangle< T > &crectangle) |
|
template<typename T > |
bool | clip (const box< T, 3 > &box1, const box< T, 3 > &box2, box< T, 3 > &cbox) |
|
template<typename T > |
T | area (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
T | area (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
T | area (const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | area (const triangle< T, 3 > &triangle) |
|
template<typename T > |
T | area (const quadix< T, 2 > &quadix) |
|
template<typename T > |
T | area (const quadix< T, 3 > &quadix) |
|
template<typename T > |
T | area (const rectangle< T > &rectangle) |
|
template<typename T > |
T | area (const circle< T > &circle) |
|
template<typename T > |
T | area (const polygon< T, 2 > &polygon) |
|
template<typename T > |
T | perimeter (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
T | perimeter (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
T | perimeter (const triangle< T, 2 > &triangle) |
|
template<typename T > |
T | perimeter (const triangle< T, 3 > &triangle) |
|
template<typename T > |
T | perimeter (const quadix< T, 2 > &quadix) |
|
template<typename T > |
T | perimeter (const quadix< T, 3 > &quadix) |
|
template<typename T > |
T | perimeter (const rectangle< T > &rectangle) |
|
template<typename T > |
T | perimeter (const circle< T > &circle) |
|
template<typename T > |
T | perimeter (const polygon< T, 2 > &polygon) |
|
template<typename T > |
void | rotate (const T &rotation_angle, const T &x, const T &y, T &nx, T &ny) |
|
template<typename T > |
void | rotate (const T &rotation_angle, const T &x, const T &y, const T &ox, const T &oy, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | rotate (const T &rotation_angle, const point2d< T > &point) |
|
template<typename T > |
point2d< T > | rotate (const T &rotation_angle, const point2d< T > &point, const point2d< T > &opoint) |
|
template<typename T > |
segment< T, 2 > | rotate (const T &rotation_angle, const segment< T, 2 > &segment) |
|
template<typename T > |
segment< T, 2 > | rotate (const T &rotation_angle, const segment< T, 2 > &segment, const point2d< T > &opoint) |
|
template<typename T > |
triangle< T, 2 > | rotate (const T &rotation_angle, const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | rotate (const T &rotation_angle, const triangle< T, 2 > &triangle, const point2d< T > &opoint) |
|
template<typename T > |
quadix< T, 2 > | rotate (const T &rotation_angle, const quadix< T, 2 > &quadix) |
|
template<typename T > |
quadix< T, 2 > | rotate (const T &rotation_angle, const quadix< T, 2 > &quadix, const point2d< T > &opoint) |
|
template<typename T > |
polygon< T, 2 > | rotate (const T &rotation_angle, const polygon< T, 2 > &polygon) |
|
template<typename T > |
polygon< T, 2 > | rotate (const T &rotation_angle, const polygon< T, 2 > &polygon, const point2d< T > &opoint) |
|
template<typename T > |
void | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const T &x, const T &y, T &nx, T &ny) |
|
template<typename T > |
void | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const T &x, const T &y, const T &ox, const T &oy, T &nx, T &ny) |
|
template<typename T > |
point2d< T > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const point2d< T > &point) |
|
template<typename T > |
point2d< T > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const point2d< T > &point, const point2d< T > &opoint) |
|
template<typename T > |
segment< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const segment< T, 2 > &segment) |
|
template<typename T > |
segment< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const segment< T, 2 > &segment, const point2d< T > &opoint) |
|
template<typename T > |
triangle< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const triangle< T, 2 > &triangle) |
|
template<typename T > |
triangle< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const triangle< T, 2 > &triangle, const point2d< T > &opoint) |
|
template<typename T > |
quadix< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const quadix< T, 2 > &quadix) |
|
template<typename T > |
quadix< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const quadix< T, 2 > &quadix, const point2d< T > &opoint) |
|
template<typename T > |
polygon< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const polygon< T, 2 > &polygon) |
|
template<typename T > |
polygon< T, 2 > | fast_rotate (const trig_luts< T > &lut, const int rotation_angle, const polygon< T, 2 > &polygon, const point2d< T > &opoint) |
|
template<typename T > |
void | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const T &x, const T &y, const T &z, T &nx, T &ny, T &nz) |
|
template<typename T > |
void | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const T &x, const T &y, const T &z, const T &ox, const T &oy, const T &oz, T &nx, T &ny, T &nz) |
|
template<typename T > |
point3d< T > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const point3d< T > &point) |
|
template<typename T > |
point3d< T > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const point3d< T > &point, const point3d< T > &opoint) |
|
template<typename T > |
segment< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const segment< T, 3 > &segment) |
|
template<typename T > |
segment< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const segment< T, 3 > &segment, const point3d< T > &opoint) |
|
template<typename T > |
triangle< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const triangle< T, 3 > &triangle) |
|
template<typename T > |
triangle< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const triangle< T, 3 > &triangle, const point3d< T > &opoint) |
|
template<typename T > |
quadix< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const quadix< T, 3 > &quadix) |
|
template<typename T > |
quadix< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const quadix< T, 3 > &quadix, const point3d< T > &opoint) |
|
template<typename T > |
polygon< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const polygon< T, 3 > &polygon) |
|
template<typename T > |
polygon< T, 3 > | fast_rotate (const trig_luts< T > &lut, const int rx, const int ry, const int rz, const polygon< T, 3 > &polygon, const point3d< T > &opoint) |
|
template<typename T > |
point2d< T > | translate (const T &dx, const T &dy, const point2d< T > &point) |
|
template<typename T > |
line< T, 2 > | translate (const T &dx, const T &dy, const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 2 > | translate (const T &dx, const T &dy, const segment< T, 2 > &segment) |
|
template<typename T > |
triangle< T, 2 > | translate (const T &dx, const T &dy, const triangle< T, 2 > &triangle) |
|
template<typename T > |
quadix< T, 2 > | translate (const T &dx, const T &dy, const quadix< T, 2 > &quadix) |
|
template<typename T > |
rectangle< T > | translate (const T &dx, const T &dy, const rectangle< T > &rectangle) |
|
template<typename T > |
circle< T > | translate (const T &dx, const T &dy, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | translate (const T &dx, const T &dy, const polygon< T, 2 > &polygon) |
|
template<typename T > |
point2d< T > | translate (const T &delta, const point2d< T > &point) |
|
template<typename T > |
line< T, 2 > | translate (const T &delta, const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 2 > | translate (const T &delta, const segment< T, 2 > &segment) |
|
template<typename T > |
triangle< T, 2 > | translate (const T &delta, const triangle< T, 2 > &triangle) |
|
template<typename T > |
quadix< T, 2 > | translate (const T &delta, const quadix< T, 2 > &quadix) |
|
template<typename T > |
rectangle< T > | translate (const T &delta, const rectangle< T > &rectangle) |
|
template<typename T > |
circle< T > | translate (const T &delta, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | translate (const T &delta, const polygon< T, 2 > &polygon) |
|
template<typename T > |
point2d< T > | translate (const vector2d< T > &v, const point2d< T > &point) |
|
template<typename T > |
line< T, 2 > | translate (const vector2d< T > &v, const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 2 > | translate (const vector2d< T > &v, const segment< T, 2 > &segment) |
|
template<typename T > |
triangle< T, 2 > | translate (const vector2d< T > &v, const triangle< T, 2 > &triangle) |
|
template<typename T > |
quadix< T, 2 > | translate (const vector2d< T > &v, const quadix< T, 2 > &quadix) |
|
template<typename T > |
rectangle< T > | translate (const vector2d< T > &v, const rectangle< T > &rectangle) |
|
template<typename T > |
circle< T > | translate (const vector2d< T > &v, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | translate (const vector2d< T > &v, const polygon< T, 2 > &polygon) |
|
template<typename T > |
point3d< T > | translate (const T &dx, const T &dy, const T &dz, const point3d< T > &point) |
|
template<typename T > |
line< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const line< T, 3 > &line) |
|
template<typename T > |
segment< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const segment< T, 3 > &segment) |
|
template<typename T > |
triangle< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const triangle< T, 3 > &triangle) |
|
template<typename T > |
quadix< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const quadix< T, 3 > &quadix) |
|
template<typename T > |
box< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const box< T, 3 > &box) |
|
template<typename T > |
sphere< T > | translate (const T &dx, const T &dy, const T &dz, const sphere< T > &sphere) |
|
template<typename T > |
polygon< T, 3 > | translate (const T &dx, const T &dy, const T &dz, const polygon< T, 3 > &polygon) |
|
template<typename T > |
point3d< T > | translate (const T &delta, const point3d< T > &point) |
|
template<typename T > |
line< T, 3 > | translate (const T &delta, const line< T, 3 > &line) |
|
template<typename T > |
segment< T, 3 > | translate (const T &delta, const segment< T, 3 > &segment) |
|
template<typename T > |
triangle< T, 3 > | translate (const T &delta, const triangle< T, 3 > &triangle) |
|
template<typename T > |
quadix< T, 3 > | translate (const T &delta, const quadix< T, 3 > &quadix) |
|
template<typename T > |
box< T, 3 > | translate (const T &delta, const box< T, 3 > &box) |
|
template<typename T > |
sphere< T > | translate (const T &delta, const sphere< T > &sphere) |
|
template<typename T > |
polygon< T, 3 > | translate (const T &delta, const polygon< T, 3 > &polygon) |
|
template<typename T > |
point3d< T > | translate (const vector3d< T > &v, const point3d< T > &point) |
|
template<typename T > |
line< T, 3 > | translate (const vector3d< T > &v, const line< T, 3 > &line) |
|
template<typename T > |
segment< T, 3 > | translate (const vector3d< T > &v, const segment< T, 3 > &segment) |
|
template<typename T > |
triangle< T, 3 > | translate (const vector3d< T > &v, const triangle< T, 3 > &triangle) |
|
template<typename T > |
quadix< T, 3 > | translate (const vector3d< T > &v, const quadix< T, 3 > &quadix) |
|
template<typename T > |
box< T, 3 > | translate (const vector3d< T > &v, const box< T, 3 > &box) |
|
template<typename T > |
sphere< T > | translate (const vector3d< T > &v, const sphere< T > &sphere) |
|
template<typename T > |
polygon< T, 3 > | translate (const vector3d< T > &v, const polygon< T, 3 > &polygon) |
|
template<typename T > |
point2d< T > | scale (const T &dx, const T &dy, const point2d< T > &point) |
|
template<typename T > |
line< T, 2 > | scale (const T &dx, const T &dy, const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 2 > | scale (const T &dx, const T &dy, const segment< T, 2 > &segment) |
|
template<typename T > |
triangle< T, 2 > | scale (const T &dx, const T &dy, const triangle< T, 2 > &triangle) |
|
template<typename T > |
quadix< T, 2 > | scale (const T &dx, const T &dy, const quadix< T, 2 > &quadix) |
|
template<typename T > |
rectangle< T > | scale (const T &dx, const T &dy, const rectangle< T > &rectangle) |
|
template<typename T > |
circle< T > | scale (const T &dr, const circle< T > &circle) |
|
template<typename T > |
polygon< T, 2 > | scale (const T &dx, const T &dy, const polygon< T, 2 > &polygon) |
|
template<typename T > |
point3d< T > | scale (const T &dx, const T &dy, const T &dz, const point3d< T > &point) |
|
template<typename T > |
line< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const line< T, 3 > &line) |
|
template<typename T > |
segment< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const segment< T, 3 > &segment) |
|
template<typename T > |
triangle< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const triangle< T, 3 > &triangle) |
|
template<typename T > |
quadix< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const quadix< T, 3 > &quadix) |
|
template<typename T > |
box< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const box< T, 3 > &box) |
|
template<typename T > |
sphere< T > | scale (const T &dr, const sphere< T > &sphere) |
|
template<typename T > |
polygon< T, 3 > | scale (const T &dx, const T &dy, const T &dz, const polygon< T, 3 > &polygon) |
|
template<typename T > |
rectangle< T > | aabb (const segment< T, 2 > &segment) |
|
template<typename T > |
rectangle< T > | aabb (const triangle< T, 2 > &triangle) |
|
template<typename T > |
rectangle< T > | aabb (const rectangle< T > &rectangle) |
|
template<typename T > |
rectangle< T > | aabb (const quadix< T, 2 > &quadix) |
|
template<typename T > |
rectangle< T > | aabb (const circle< T > &circle) |
|
template<typename T > |
rectangle< T > | aabb (const polygon< T, 2 > &polygon) |
|
template<typename T > |
void | aabb (const segment< T, 2 > &segment, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
void | aabb (const triangle< T, 2 > &triangle, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
void | aabb (const rectangle< T > &rectangle, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
void | aabb (const quadix< T, 2 > &quadix, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
void | aabb (const circle< T > &circle, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
void | aabb (const polygon< T, 2 > &polygon, T &x1, T &y1, T &x2, T &y2) |
|
template<typename T > |
box< T, 3 > | aabb (const segment< T, 3 > &segment) |
|
template<typename T > |
box< T, 3 > | aabb (const triangle< T, 3 > &triangle) |
|
template<typename T > |
box< T, 3 > | aabb (const box< T, 3 > &rectangle) |
|
template<typename T > |
box< T, 3 > | aabb (const quadix< T, 3 > &quadix) |
|
template<typename T > |
box< T, 3 > | aabb (const sphere< T > &sphere) |
|
template<typename T > |
box< T, 3 > | aabb (const polygon< T, 3 > &polygon) |
|
template<typename T > |
void | aabb (const segment< T, 3 > &segment, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
void | aabb (const triangle< T, 3 > &triangle, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
void | aabb (const box< T, 3 > &box, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
void | aabb (const quadix< T, 3 > &quadix, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
void | aabb (const sphere< T > &sphere, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
void | aabb (const polygon< T, 3 > &polygon, T &x1, T &y1, T &z1, T &x2, T &y2, T &z2) |
|
template<typename T > |
rectangle< T > | update_rectangle (const rectangle< T > &rectangle, point2d< T > &point) |
|
template<typename T > |
box< T, 3 > | update_box (const box< T, 3 > &box, point3d< T > &point) |
|
template<typename T > |
circle< T > | update_circle (const circle< T > &circle, point2d< T > &point) |
|
template<typename T > |
sphere< T > | update_sphere (const sphere< T > &sphere, point3d< T > &point) |
|
template<typename T > |
point2d< T > | generate_point_on_segment (const segment< T, 2 > &segment, const T &t) |
|
template<typename T > |
point3d< T > | generate_point_on_segment (const segment< T, 3 > &segment, const T &t) |
|
template<typename T > |
point2d< T > | generate_point_on_ray (const ray< T, 2 > &ray, const T &t) |
|
template<typename T > |
point3d< T > | generate_point_on_ray (const ray< T, 3 > &ray, const T &t) |
|
template<typename T > |
T | generate_random_value (const T &range) |
|
template<typename T > |
point2d< T > | generate_random_point (const T &dx, const T &dy) |
|
template<typename T > |
point3d< T > | generate_random_point (const T &dx, const T &dy, const T &dz) |
|
template<typename T > |
point2d< T > | generate_random_point (const segment< T, 2 > &segment) |
|
template<typename T > |
point3d< T > | generate_random_point (const segment< T, 3 > &segment) |
|
template<typename T > |
point2d< T > | generate_random_point (const triangle< T, 2 > &triangle) |
|
template<typename T > |
point3d< T > | generate_random_point (const triangle< T, 3 > &triangle) |
|
template<typename T > |
point2d< T > | generate_random_point (const quadix< T, 2 > &quadix) |
|
template<typename T > |
point3d< T > | generate_random_point (const quadix< T, 3 > &quadix) |
|
template<typename T > |
point2d< T > | generate_random_point (const rectangle< T > &rectangle) |
|
template<typename T > |
point3d< T > | generate_random_point (const box< T, 3 > &box) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const T &x1, const T &y1, const T &x2, const T &y2, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const rectangle< T > &rectangle, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const box< T, 3 > &box, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const segment< T, 2 > &segment, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const segment< T, 3 > &segment, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const triangle< T, 2 > &triangle, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const triangle< T, 3 > &triangle, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const quadix< T, 2 > &quadix, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const quadix< T, 3 > &quadix, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , typename OutputIterator > |
void | generate_random_points (const circle< T > &circle, const std::size_t &point_count, OutputIterator out) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &x2, const T &y2, segment< T, 2 > &segment) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &x2, const T &y2, rectangle< T > &rectangle) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &x2, const T &y2, triangle< T, 2 > &triangle) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &x2, const T &y2, quadix< T, 2 > &quadix) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &x2, const T &y2, circle< T > &circle) |
|
template<typename T > |
void | generate_random_object (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, box< T, 3 > &box) |
|
template<typename T > |
triangle< T, 2 > | right_shift (const triangle< T, 2 > &triangle, const std::size_t &shift) |
|
template<typename T > |
triangle< T, 3 > | right_shift (const triangle< T, 3 > &triangle, const std::size_t &shift) |
|
template<typename T > |
quadix< T, 2 > | right_shift (const quadix< T, 2 > &quadix, const std::size_t &shift) |
|
template<typename T > |
quadix< T, 3 > | right_shift (const quadix< T, 3 > &quadix, const std::size_t &shift) |
|
template<typename T > |
T | vector_norm (const vector2d< T > &v) |
|
template<typename T > |
T | vector_norm (const vector3d< T > &v) |
|
template<typename T > |
vector2d< T > | normalize (const vector2d< T > &v) |
|
template<typename T > |
vector3d< T > | normalize (const vector3d< T > &v) |
|
template<typename T > |
vector2d< T > | perpendicular (const vector2d< T > &v) |
|
template<typename T > |
vector3d< T > | perpendicular (const vector3d< T > &v) |
|
template<typename T > |
vector2d< T > | operator+ (const vector2d< T > &v1, const vector2d< T > &v2) |
|
template<typename T > |
vector3d< T > | operator+ (const vector3d< T > &v1, const vector3d< T > &v2) |
|
template<typename T > |
vector2d< T > | operator- (const vector2d< T > &v1, const vector2d< T > &v2) |
|
template<typename T > |
vector3d< T > | operator- (const vector3d< T > &v1, const vector3d< T > &v2) |
|
template<typename T > |
T | operator* (const vector2d< T > &v1, const vector2d< T > &v2) |
|
template<typename T > |
vector3d< T > | operator* (const vector3d< T > &v1, const vector3d< T > &v2) |
|
template<typename T > |
T | dot_product (const vector2d< T > &v1, const vector2d< T > &v2) |
|
template<typename T > |
T | dot_product (const vector3d< T > &v1, const vector3d< T > &v2) |
|
template<typename T > |
T | perpendicular_product (const vector2d< T > &v1, const vector2d< T > &v2) |
|
template<typename T > |
T | triple_product (const vector3d< T > &v1, const vector3d< T > &v2, const vector3d< T > &v3) |
|
template<typename T > |
vector2d< T > | operator* (const vector2d< T > &v1, const T &scale) |
|
template<typename T > |
vector3d< T > | operator* (const vector3d< T > &v1, const T &scale) |
|
template<typename T > |
vector2d< T > | operator* (const T &scale, const vector2d< T > &v1) |
|
template<typename T > |
vector3d< T > | operator* (const T &scale, const vector3d< T > &v1) |
|
template<typename T > |
vector2d< T > | operator/ (const vector2d< T > &v1, const T &scale) |
|
template<typename T > |
vector3d< T > | operator/ (const vector3d< T > &v1, const T &scale) |
|
template<typename T > |
point2d< T > | operator* (const point2d< T > &point, const T &scale) |
|
template<typename T > |
point3d< T > | operator* (const point3d< T > &point, const T &scale) |
|
template<typename T > |
point2d< T > | operator* (const T &scale, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | operator* (const T &scale, const point3d< T > &point) |
|
template<typename T > |
point2d< T > | operator+ (const point2d< T > &point, const vector2d< T > &v) |
|
template<typename T > |
point2d< T > | operator+ (const vector2d< T > &v, const point2d< T > &point) |
|
template<typename T > |
point3d< T > | operator+ (const point3d< T > &point, const vector3d< T > &v) |
|
template<typename T > |
point3d< T > | operator+ (const vector3d< T > &v, const point3d< T > &point) |
|
template<typename T > |
vector2d< T > | operator- (const point2d< T > &p1, const point2d< T > &p2) |
|
template<typename T > |
vector3d< T > | operator- (const point3d< T > &p1, const point3d< T > &p2) |
|
template<typename T > |
point2d< T > | operator+ (const point2d< T > &p1, const point2d< T > &p2) |
|
template<typename T > |
point3d< T > | operator+ (const point3d< T > &p1, const point3d< T > &p2) |
|
template<typename T > |
bool | is_equal (const T &val1, const T &val2, const T &epsilon) |
|
template<typename T > |
bool | is_equal (const point2d< T > &point1, const point2d< T > &point2, const T &epsilon) |
|
template<typename T > |
bool | is_equal (const point3d< T > &point1, const point3d< T > &point2, const T &epsilon) |
|
template<typename T > |
bool | is_equal (const T &val1, const T &val2) |
|
template<typename T > |
bool | is_equal (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
bool | is_equal (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
bool | is_equal (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
bool | is_equal (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
bool | is_equal (const box< T, 3 > &box1, const box< T, 3 > &box2) |
|
template<typename T > |
bool | is_equal (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
bool | not_equal (const T &val1, const T &val2, const T &epsilon) |
|
template<typename T > |
bool | not_equal (const point2d< T > &point1, const point2d< T > &point2, const T &epsilon) |
|
template<typename T > |
bool | not_equal (const point3d< T > &point1, const point3d< T > &point2, const T &epsilon) |
|
template<typename T > |
bool | not_equal (const T &val1, const T &val2) |
|
template<typename T > |
bool | not_equal (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
bool | not_equal (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
bool | not_equal (const rectangle< T > &rectangle1, const rectangle< T > &rectangle2) |
|
template<typename T > |
bool | not_equal (const circle< T > &circle1, const circle< T > &circle2) |
|
template<typename T > |
bool | not_equal (const box< T, 3 > &box1, const box< T, 3 > &box2) |
|
template<typename T > |
bool | not_equal (const sphere< T > &sphere1, const sphere< T > &sphere2) |
|
template<typename T > |
bool | less_than_or_equal (const T &val1, const T &val2, const T &epsilon) |
|
template<typename T > |
bool | less_than_or_equal (const T &val1, const T &val2) |
|
template<typename T > |
bool | greater_than_or_equal (const T &val1, const T &val2, const T &epsilon) |
|
template<typename T > |
bool | greater_than_or_equal (const T &val1, const T &val2) |
|
template<typename T > |
bool | operator< (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
bool | operator< (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
bool | operator> (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
bool | operator> (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
bool | operator== (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
bool | operator== (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
bool | is_degenerate (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
bool | is_degenerate (const segment< T, 2 > &segment) |
|
template<typename T > |
bool | is_degenerate (const line< T, 2 > &line) |
|
template<typename T > |
bool | is_degenerate (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
bool | is_degenerate (const segment< T, 3 > &segment) |
|
template<typename T > |
bool | is_degenerate (const line< T, 3 > &line) |
|
template<typename T > |
bool | is_degenerate (const triangle< T, 2 > &triangle) |
|
template<typename T > |
bool | is_degenerate (const triangle< T, 3 > &triangle) |
|
template<typename T > |
bool | is_degenerate (const quadix< T, 2 > &quadix) |
|
template<typename T > |
bool | is_degenerate (const quadix< T, 3 > &quadix) |
|
template<typename T > |
bool | is_degenerate (const rectangle< T > &rectangle) |
|
template<typename T > |
bool | is_degenerate (const circle< T > &circle) |
|
template<typename T > |
bool | is_degenerate (const sphere< T > &sphere) |
|
template<typename T > |
bool | is_degenerate (const circular_arc< T > &arc) |
|
template<typename T > |
point2d< T > | degenerate_point2d () |
|
template<typename T > |
point3d< T > | degenerate_point3d () |
|
template<typename T > |
vector2d< T > | degenerate_vector2d () |
|
template<typename T > |
vector3d< T > | degenerate_vector3d () |
|
template<typename T > |
ray< T, 2 > | degenerate_ray2d () |
|
template<typename T > |
ray< T, 3 > | degenerate_ray3d () |
|
template<typename T > |
line< T, 2 > | degenerate_line2d () |
|
template<typename T > |
line< T, 3 > | degenerate_line3d () |
|
template<typename T > |
segment< T, 2 > | degenerate_segment2d () |
|
template<typename T > |
segment< T, 3 > | degenerate_segment3d () |
|
template<typename T > |
triangle< T, 2 > | degenerate_triangle2d () |
|
template<typename T > |
triangle< T, 3 > | degenerate_triangle3d () |
|
template<typename T > |
quadix< T, 2 > | degenerate_quadix2d () |
|
template<typename T > |
quadix< T, 3 > | degenerate_quadix3d () |
|
template<typename T > |
rectangle< T > | degenerate_rectangle () |
|
template<typename T > |
circle< T > | degenerate_circle () |
|
template<typename T > |
sphere< T > | degenerate_sphere () |
|
template<typename T > |
point2d< T > | positive_infinite_point2d () |
|
template<typename T > |
point2d< T > | negative_infinite_point2d () |
|
template<typename T > |
point3d< T > | positive_infinite_point3d () |
|
template<typename T > |
point3d< T > | negative_infinite_point3d () |
|
template<typename T > |
void | swap (point2d< T > &point1, point2d< T > &point2) |
|
template<typename T > |
void | swap (point3d< T > &point1, point3d< T > &point2) |
|
template<typename T > |
point2d< T > | make_point (const T &x, const T &y) |
|
template<typename T > |
point3d< T > | make_point (const T &x, const T &y, const T &z) |
|
template<typename T > |
point2d< T > | make_point (const point3d< T > point) |
|
template<typename T > |
point3d< T > | make_point (const point2d< T > point, const T &z=T(0.0)) |
|
template<typename T > |
point2d< T > | make_point (const circle< T > &circle) |
|
template<typename T > |
point3d< T > | make_point (const sphere< T > &sphere) |
|
template<typename T > |
vector2d< T > | make_vector (const T &x, const T &y) |
|
template<typename T > |
vector3d< T > | make_vector (const T &x, const T &y, const T &z) |
|
template<typename T > |
vector2d< T > | make_vector (const vector3d< T > v) |
|
template<typename T > |
vector3d< T > | make_vector (const vector2d< T > v, const T &z=T(0.0)) |
|
template<typename T > |
vector2d< T > | make_vector (const point2d< T > point) |
|
template<typename T > |
vector3d< T > | make_vector (const point3d< T > point) |
|
template<typename T > |
ray< T, 2 > | make_ray (const T &ox, const T &oy, const T &dir_x, const T &dir_y) |
|
template<typename T > |
ray< T, 3 > | make_ray (const T &ox, const T &oy, const T &oz, const T &dir_x, const T &dir_y, const T &dir_z) |
|
template<typename T > |
ray< T, 2 > | make_ray (const point2d< T > &origin, const vector2d< T > &direction) |
|
template<typename T > |
ray< T, 3 > | make_ray (const point3d< T > &origin, const vector3d< T > &direction) |
|
template<typename T > |
ray< T, 2 > | make_ray (const point2d< T > &origin, const T &bearing) |
|
template<typename T > |
curve_point< T, 2 > | make_curve_point (const T &x, const T &y, const T &t) |
|
template<typename T > |
curve_point< T, 3 > | make_curve_point (const T &x, const T &y, const T &z, const T &t) |
|
template<typename T > |
curve_point< T, 2 > | make_curve_point (const point2d< T > &point, const T &t) |
|
template<typename T > |
curve_point< T, 3 > | make_curve_point (const point3d< T > &point, const T &t) |
|
template<typename T > |
segment< T, 2 > | make_segment (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
segment< T, 3 > | make_segment (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
segment< T, 2 > | make_segment (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
segment< T, 3 > | make_segment (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
segment< T, 2 > | make_segment (const line< T, 2 > &line) |
|
template<typename T > |
segment< T, 3 > | make_segment (const line< T, 3 > &line) |
|
template<typename T > |
line< T, 2 > | make_line (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
line< T, 3 > | make_line (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
line< T, 2 > | make_line (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
line< T, 3 > | make_line (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
line< T, 2 > | make_line (const segment< T, 2 > &segment) |
|
template<typename T > |
line< T, 3 > | make_line (const segment< T, 3 > &segment) |
|
template<typename T > |
line< T, 2 > | make_line (const ray< T, 2 > &ray) |
|
template<typename T > |
line< T, 3 > | make_line (const ray< T, 3 > &ray) |
|
template<typename T > |
rectangle< T > | make_rectangle (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
rectangle< T > | make_rectangle (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
box< T, 3 > | make_box (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2) |
|
template<typename T > |
box< T, 3 > | make_box (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
triangle< T, 2 > | make_triangle (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3) |
|
template<typename T > |
triangle< T, 3 > | make_triangle (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
triangle< T, 2 > | make_triangle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
triangle< T, 3 > | make_triangle (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
quadix< T, 2 > | make_quadix (const T &x1, const T &y1, const T &x2, const T &y2, const T &x3, const T &y3, const T &x4, const T &y4) |
|
template<typename T > |
quadix< T, 3 > | make_quadix (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3, const T &x4, const T &y4, const T &z4) |
|
template<typename T > |
quadix< T, 2 > | make_quadix (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3, const point2d< T > &point4) |
|
template<typename T > |
quadix< T, 3 > | make_quadix (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3, const point3d< T > &point4) |
|
template<typename T > |
quadix< T, 2 > | make_quadix (const T &x1, const T &y1, const T &x2, const T &y2) |
|
template<typename T > |
quadix< T, 2 > | make_quadix (const rectangle< T > &rectangle) |
|
template<typename T > |
circle< T > | make_circle (const T &x, const T &y, const T &radius) |
|
template<typename T > |
circle< T > | make_circle (const point2d< T > &point, const T &radius) |
|
template<typename T > |
circle< T > | make_circle (const point2d< T > &point1, const point2d< T > &point2) |
|
template<typename T > |
circle< T > | make_circle (const point2d< T > &point1, const point2d< T > &point2, const point2d< T > &point3) |
|
template<typename T > |
circle< T > | make_circle (const triangle< T, 2 > &triangle) |
|
template<typename T > |
sphere< T > | make_sphere (const T &x, const T &y, const T &z, const T &radius) |
|
template<typename T > |
sphere< T > | make_sphere (const point3d< T > &point, const T &radius) |
|
template<typename T > |
sphere< T > | make_sphere (const point3d< T > &point1, const point3d< T > &point2) |
|
template<typename T > |
plane< T, 3 > | make_plane (const T &x1, const T &y1, const T &z1, const T &x2, const T &y2, const T &z2, const T &x3, const T &y3, const T &z3) |
|
template<typename T > |
plane< T, 3 > | make_plane (const T &px, const T &py, const T &pz, const T &nx, const T &ny, const T &nz) |
|
template<typename T > |
plane< T, 3 > | make_plane (const point3d< T > &point1, const point3d< T > &point2, const point3d< T > &point3) |
|
template<typename T > |
plane< T, 3 > | make_plane (const point3d< T > &point, const vector3d< T > &normal) |
|
template<typename T > |
plane< T, 3 > | make_plane (const triangle< T, 3 > &triangle) |
|
template<typename T , std::size_t D, typename InputIterator > |
polygon< T, D > | make_polygon (const InputIterator begin, const InputIterator end) |
|
template<typename T > |
polygon< T, 2 > | make_polygon (const std::vector< point2d< T > > &point_list) |
|
template<typename T > |
polygon< T, 3 > | make_polygon (const std::vector< point3d< T > > &point_list) |
|
template<typename T > |
polygon< T, 2 > | make_polygon (const triangle< T, 2 > &triangle) |
|
template<typename T > |
polygon< T, 2 > | make_polygon (const quadix< T, 2 > &quadix) |
|
template<typename T > |
polygon< T, 2 > | make_polygon (const rectangle< T > &rectangle) |
|
template<typename T > |
polygon< T, 2 > | make_polygon (const circle< T > &circle, const unsigned int point_count=360) |
|
template<typename T > |
T | sqr (const T &val) |
|
template<typename T > |
T | sqrt (const T &val) |
|
template<typename T > |
T | abs (const T &value) |
|
template<typename T > |
T | max (const T &value1, const T &value2) |
|
template<typename T > |
T | min (const T &value1, const T &value2) |
|
template<typename T > |
T | max (const T &value1, const T &value2, const T &value3) |
|
template<typename T > |
T | min (const T &value1, const T &value2, const T &value3) |
|
template<typename T > |
T | infinity () |
|
template<typename T > |
T | sin (const T &value) |
|
template<typename T > |
T | cos (const T &value) |
|
template<typename T > |
T | tan (const T &value) |
|
template<typename T > |
T | asin (const T &value) |
|
template<typename T > |
T | acos (const T &value) |
|
template<typename T > |
T | atan (const T &value) |
|
template<typename T > |
T | approx_sin (T angle) |
|
template<typename T > |
T | approx_cos (T angle) |
|
template<typename T > |
T | approx_tan (T angle) |
|
template<typename T > |
T | clamp (const T &value, const T &low, const T &high) |
|
template<typename T > |
T | det (const matrix< T, 1, 1 > &matrix) |
|
template<typename T > |
T | det (const matrix< T, 2, 2 > &matrix) |
|
template<typename T > |
T | det (const matrix< T, 3, 3 > &matrix) |
|
template<typename T > |
T | det (const matrix< T, 4, 4 > &matrix) |
|
template<typename T > |
void | transpose (matrix< T, 1, 1 > &matrix) |
|
template<typename T > |
void | transpose (matrix< T, 2, 2 > &matrix) |
|
template<typename T > |
void | transpose (matrix< T, 3, 3 > &matrix) |
|
template<typename T > |
void | transpose (matrix< T, 4, 4 > &matrix) |
|
template<typename T > |
void | inverse (matrix< T, 2, 2 > &out_matrix, const matrix< T, 2, 2 > &in_matrix) |
|
template<typename T > |
void | inverse (matrix< T, 3, 3 > &out_matrix, const matrix< T, 3, 3 > &in_matrix) |
|
template<typename T > |
void | inverse (matrix< T, 4, 4 > &out_matrix, const matrix< T, 4, 4 > &in_matrix) |
|
template<typename T , std::size_t N> |
void | inverse (matrix< T, N, N > &out_matrix, const matrix< T, N, N > &in_matrix) |
|
template<typename T > |
void | eigen_values (const matrix< T, 2, 2 > &matrix, T &eigen_value1, T &eigen_value2) |
|
template<typename T > |
void | eigenvector (const matrix< T, 2, 2 > &matrix, vector2d< T > &eigenvector1, vector2d< T > &eigenvector2) |
|
template<typename T , std::size_t D> |
bool | parallel (const line< T, D > &line1, const line< T, D > &line2) |
|
template<typename T , std::size_t D> |
bool | parallel (const segment< T, D > &segment1, const segment< T, D > &segment2) |
|
template<typename T , std::size_t D> |
bool | perpendicular (const line< T, D > &line1, const line< T, D > &line2) |
|
template<typename T , std::size_t D> |
bool | perpendicular (const segment< T, D > &segment1, const segment< T, D > &segment2) |
|
template<typename T , std::size_t D> |
bool | collinear (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const pointnd< T, D > &point3) |
|
template<typename T , std::size_t D> |
bool | robust_collinear (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const pointnd< T, D > &point3) |
|
template<typename T , std::size_t D> |
bool | is_point_collinear (const segment< T, D > &segment, const pointnd< T, D > &point, const bool robust=false) |
|
template<typename T , std::size_t D> |
bool | intersect (const segment< T, D > &segment1, const segment< T, D > &segment2, const T &fuzzy=T(0.0)) |
|
template<typename T , std::size_t D> |
bool | intersect (const line< T, D > &line1, const line< T, D > &line2, const T &fuzzy=T(0.0)) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | intersection_point (const segment< T, D > &segment1, const segment< T, D > &segment2, const T &fuzzy=T(0.0)) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | intersection_point (const line< T, D > &line1, const line< T, D > &line2, const T &fuzzy=T(0.0)) |
|
template<typename T , std::size_t D> |
T | distance (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
T | distance (const pointnd< T, D > &point, const segment< T, D > &segment) |
|
template<typename T , std::size_t D> |
T | distance (const pointnd< T, D > &point, const line< T, D > &line) |
|
template<typename T , std::size_t D> |
T | distance (const segment< T, D > &segment1, const segment< T, D > &segment2) |
|
template<typename T , std::size_t D> |
T | distance (const line< T, D > &line1, const line< T, D > &line2) |
|
template<typename T , std::size_t D> |
T | lay_distance (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
T | lay_distance (const pointnd< T, D > &point, const segment< T, D > &segment) |
|
template<typename T , std::size_t D> |
T | lay_distance (const pointnd< T, D > &point, const line< T, D > &line) |
|
template<typename T , std::size_t D> |
T | lay_distance (const segment< T, D > &segment1, const segment< T, D > &segment2) |
|
template<typename T , std::size_t D> |
T | lay_distance (const line< T, D > &line1, const line< T, D > &line2) |
|
template<typename T , std::size_t D> |
T | manhattan_distance (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
T | chebyshev_distance (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
T | inverse_chebyshev_distance (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
bool | point_in_box (const pointnd< T, D > &point, const box< T, D > &box) |
|
template<typename T , std::size_t D> |
bool | point_in_sphere (const pointnd< T, D > &point, const hypersphere< T, D > &hypersphere) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | closest_point_on_segment_from_point (const segment< T, D > &segment, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | closest_point_on_line_from_point (const line< T, D > &segment, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | closest_point_on_sphere_from_point (const hypersphere< T, D > &sphere, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | closest_point_on_plane_from_point (const plane< T, D > &plane, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | closest_point_on_box_from_point (const box< T, D > &box, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | project_point_t (const pointnd< T, D > &source_point, const pointnd< T, D > &destination_point, const T &t) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | project_point (const pointnd< T, D > &source_point, const pointnd< T, D > &destination_point, const T &distance) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | mirror (const pointnd< T, D > &point, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | mirror (const segment< T, D > &segment, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
line< T, D > | mirror (const line< T, D > &line, const wykobi::line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
box< T, D > | mirror (const box< T, D > &box, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
triangle< T, D > | mirror (const triangle< T, D > &triangle, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
quadix< T, D > | mirror (const quadix< T, D > &quadix, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
hypersphere< T, D > | mirror (const hypersphere< T, D > &sphere, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
polygon< T, D > | mirror (const polygon< T, D > &polygon, const line< T, D > &mirror_axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const pointnd< T, D > &point, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const triangle< T, D > &triangle, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const box< T, D > &box, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const quadix< T, D > &quadix, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const hypersphere< T, D > &sphere, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
segment< T, D > | project_onto_axis (const polygon< T, D > &polygon, const line< T, D > &axis) |
|
template<typename T , std::size_t D> |
T | perimeter (const triangle< T, D > &triangle) |
|
template<typename T , std::size_t D> |
T | perimeter (const quadix< T, D > &quadix) |
|
template<typename T , std::size_t D> |
T | perimeter (const polygon< T, D > &polygon) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | generate_random_point (const segment< T, D > &segment) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | generate_random_point (const triangle< T, D > &triangle) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | generate_random_point (const quadix< T, D > &quadix) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | generate_random_point (const box< T, D > &box) |
|
template<typename T , std::size_t D, typename OutputIterator > |
void | generate_random_points (const box< T, D > &box, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , std::size_t D, typename OutputIterator > |
void | generate_random_points (const segment< T, D > &segment, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , std::size_t D, typename OutputIterator > |
void | generate_random_points (const triangle< T, D > &triangle, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , std::size_t D, typename OutputIterator > |
void | generate_random_points (const quadix< T, D > &quadix, const std::size_t &point_count, OutputIterator out) |
|
template<typename T , std::size_t D> |
T | vector_norm (const vectornd< T, D > &v) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | normalize (const vectornd< T, D > &v) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator+ (const vectornd< T, D > &v1, const vectornd< T, D > &v2) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator- (const vectornd< T, D > &v1, const vectornd< T, D > &v2) |
|
template<typename T , std::size_t D> |
T | dot_product (const vectornd< T, D > &v1, const vectornd< T, D > &v2) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator* (const vectornd< T, D > &v1, const T &scale) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator* (const T &scale, const vectornd< T, D > &v1) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator* (const pointnd< T, D > &point, const T &scale) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator* (const T &scale, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator/ (const vectornd< T, D > &v1, const T &scale) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator/ (const pointnd< T, D > &point, const T &scale) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator+ (const pointnd< T, D > &point, const vectornd< T, D > &v) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator+ (const vectornd< T, D > &v, const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | operator- (const pointnd< T, D > &p1, const pointnd< T, D > &p2) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | operator+ (const pointnd< T, D > &p1, const pointnd< T, D > &p2) |
|
template<typename T > |
T | operator* (const vectornd< T, 2 > &v1, const vectornd< T, 2 > &v2) |
|
template<typename T > |
vectornd< T, 3 > | operator* (const vectornd< T, 3 > &v1, const vectornd< T, 3 > &v2) |
|
template<typename T , std::size_t D> |
bool | operator< (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
bool | operator> (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
bool | operator== (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
bool | is_equal (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const T &epsilon) |
|
template<typename T , std::size_t D> |
bool | is_equal (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
bool | not_equal (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const T &epsilon) |
|
template<typename T , std::size_t D> |
bool | not_equal (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
pointnd< T, D > | degenerate_pointnd () |
|
template<typename T , std::size_t D> |
vectornd< T, D > | degenerate_vectornd () |
|
template<typename T , std::size_t D> |
ray< T, D > | degenerate_raynd () |
|
template<typename T , std::size_t D> |
line< T, D > | degenerate_linend () |
|
template<typename T , std::size_t D> |
segment< T, D > | degenerate_segmentnd () |
|
template<typename T , std::size_t D> |
triangle< T, D > | degenerate_trianglend () |
|
template<typename T , std::size_t D> |
quadix< T, D > | degenerate_quadixnd () |
|
template<typename T , std::size_t D> |
box< T, D > | degenerate_box () |
|
template<typename T , std::size_t D> |
hypersphere< T, D > | degenerate_hypersphere () |
|
template<typename T , std::size_t D> |
pointnd< T, D > | positive_infinite_pointnd () |
|
template<typename T , std::size_t D> |
pointnd< T, D > | negative_infinite_pointnd () |
|
template<typename T , std::size_t D> |
void | swap (pointnd< T, D > &point1, pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
vectornd< T, D > | make_vector (const pointnd< T, D > &point) |
|
template<typename T , std::size_t D> |
ray< T, D > | make_ray (const pointnd< T, D > &origin, const vectornd< T, D > &direction) |
|
template<typename T , std::size_t D> |
segment< T, D > | make_segment (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
line< T, D > | make_line (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
box< T, D > | make_box (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
triangle< T, D > | make_triangle (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const pointnd< T, D > &point3) |
|
template<typename T , std::size_t D> |
quadix< T, D > | make_quadix (const pointnd< T, D > &point1, const pointnd< T, D > &point2, const pointnd< T, D > &point3, const pointnd< T, D > &point4) |
|
template<typename T , std::size_t D> |
hypersphere< T, D > | make_sphere (const pointnd< T, D > &point, const T &radius) |
|
template<typename T , std::size_t D> |
hypersphere< T, D > | make_sphere (const pointnd< T, D > &point1, const pointnd< T, D > &point2) |
|
template<typename T , std::size_t D> |
polygon< T, D > | make_polygon (const std::vector< pointnd< T, D > > &point_list) |
|
template<typename T , std::size_t D> |
polygon< T, D > | make_polygon (const triangle< T, D > &triangle) |
|
template<typename T , std::size_t D> |
polygon< T, D > | make_polygon (const quadix< T, D > &quadix) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const point2d< Type > &point) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const point3d< Type > &point) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const vector2d< Type > &v) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const vector3d< Type > &v) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const ray< Type, 2 > &ray) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const ray< Type, 3 > &ray) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const pointnd< Type, Dimension > &point) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const segment< Type, Dimension > &segment) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const line< Type, Dimension > &line) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const triangle< Type, Dimension > &triangle) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const rectangle< Type > &rectangle) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const box< Type, Dimension > &box) |
|
template<typename Type , std::size_t Dimension> |
std::ostream & | operator<< (std::ostream &os, const quadix< Type, Dimension > &quadix) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const circle< Type > &circle) |
|
template<typename Type > |
std::ostream & | operator<< (std::ostream &os, const sphere< Type > &sphere) |
|
template<typename Type , std::size_t M, std::size_t N> |
std::ostream & | operator<< (std::ostream &os, const matrix< Type, M, N > &matrix) |
|