|
| Polygon () |
|
| ~Polygon () |
|
bool | operator== (const Polygon &p) const |
|
bool | operator!= (const Polygon &p) const |
|
void | append (const VectorType &p) |
|
void | append (int i, const VectorType &p) |
|
void | appendRing (const Ring &ring) |
|
void | appendRing (const std::vector< VectorType > &pts) |
|
template<typename Iter > |
void | appendRing (const Iter &begin, const Iter &end) |
|
void | deleteRing (int i) |
|
bool | empty () const |
|
int | numRings () const |
|
int | numNodes (int ring) const |
|
void | calcBBox () |
|
double | minX () const |
|
double | minY () const |
|
double | maxX () const |
|
double | maxY () const |
|
int | totalSize () const |
|
void | reverse () |
|
double | totalArea () const |
|
const Ring & | ring (int i) const |
|
Ring & | ring (int i) |
|
VectorType & | getNode (int i, int j) |
|
const VectorType & | getNode (int i, int j) const |
|
void | setNode (int i, int j, const VectorType &n) |
|
void | clear () |
|
bool | pointInside (const VectorType &p) const |
|
Ring | calcConvHull () const |
|
void | sortRings () |
|
void | scale (double sx, double sy, double sz=1.0) |
|
bool | calcIntersect (const Polygon &p, std::vector< Polygon > &result, int precision=6) |
| Boolean Operators.
|
|
bool | calcUnion (const Polygon &p, std::vector< Polygon > &result, int precision=6) |
|
bool | calcDiff (const Polygon &p, std::vector< Polygon > &result, int precision=6) |
|
bool | calcXor (const Polygon &p, std::vector< Polygon > &result, int precision=6) |
|
bool | triangulate (std::vector< VectorType > &vtxarr, std::vector< unsigned int > &idxarr) const |
|
bool | writeGnuplot2d (const char *filename) |
| Write textfile for plotting in gnuplot. Useful for debugging.
|
|
void | cleanupPoly (std::vector< Polygon > &outputPolygons, int precision) |
|
bool | write (std::ostream &os) const |
|
bool | read (std::istream &is) |
|
template<class VectorType>
class STK::Polygon< VectorType >
Polygon - Short description. Detailed description.