Class for triangulating a polygon.
More...
#include <Triangulate.hpp>
|
| static bool | processPoints (const std::vector< rw::math::Vector2D<>> &points, std::vector< int > &result) |
| | Triangulates the polygon described by points. More...
|
| |
| static bool | processPoints (const std::vector< rw::math::Vector3D< double >> &contour, std::vector< int > &result, double colinearCriteria=1e-5, double precision=1e-5) |
| | Triangulates the polygon described by points. More...
|
| |
| static bool | processPolygon (Polygon<>::Ptr polygon, std::vector< int > &result, double colinearCriteria=1e-5, double precision=1e-5) |
| | Triangules the polygon polygon. More...
|
| |
|
static double | calcArea (const std::vector< rw::math::Vector2D<>> &contour) |
| | Computes area of the polygon defined by contour.
|
| |
|
static bool | insideTriangle2D (float Ax, float Ay, float Bx, float By, float Cx, float Cy, float Px, float Py) |
| | Checks if the point (Px,Py) is inside the triangle (Ax,Ay), (Bx,By), (Cx,Cy)
|
| |
Class for triangulating a polygon.
◆ processPoints() [1/2]
| static bool processPoints |
( |
const std::vector< rw::math::Vector2D<>> & |
points, |
|
|
std::vector< int > & |
result |
|
) |
| |
|
static |
Triangulates the polygon described by points.
The polygon need to be simple (no edges crossing and no holes). Both convex and concave polygons are supported
- Parameters
-
| points | [in] Points of the polygon. These needs to be in the right order, as no sorting is done in the function. |
| result | [out] Indices of the vertices defining the triangles. The corners of the n'th triangle is the points with indices result[3*n], result[3*n+1] and result[3*n+2] |
◆ processPoints() [2/2]
| static bool processPoints |
( |
const std::vector< rw::math::Vector3D< double >> & |
contour, |
|
|
std::vector< int > & |
result, |
|
|
double |
colinearCriteria = 1e-5, |
|
|
double |
precision = 1e-5 |
|
) |
| |
|
static |
Triangulates the polygon described by points.
The polygon need to be simple (no edges crossing and no holes). Both convex and concave polygons are supported
- Parameters
-
| contour | [in] Points of the polygon. These needs to be in the right order, as no sorting is done in the function. |
| result | [out] Indices of the vertices defining the triangles. The corners of the n'th triangle is the points with indices result[3*n], result[3*n+1] and result[3*n+2] |
| colinearCriteria | [in] Criteria for when two edges are considered to be colinear |
| precision | [in] Criteria for when two points are considered to be coinciding |
◆ processPolygon()
| static bool processPolygon |
( |
Polygon<>::Ptr |
polygon, |
|
|
std::vector< int > & |
result, |
|
|
double |
colinearCriteria = 1e-5, |
|
|
double |
precision = 1e-5 |
|
) |
| |
|
static |
Triangules the polygon polygon.
The polygon need to be simple (no edges crossing and no holes). Both convex and concave polygons are supported
- Parameters
-
| polygon | [in] The polygon to triangulate |
| result | [out] Indices of the vertices defining the triangles. The corners of the n'th triangle is the points with indices result[3*n], result[3*n+1] and result[3*n+2] |
| colinearCriteria | [in] Criteria for when two edges are considered to be colinear |
| precision | [in] Criteria for when two points are considered to be coinciding |
The documentation for this class was generated from the following file: