|
| ODPolygon () |
|
| ODPolygon (const TypeSet< Geom::Point2D< T > > &plg) |
|
void | add (const Geom::Point2D< T > &vtx) |
|
bool | anticlockwise () const |
|
double | area () const |
|
bool | clockwise () const |
|
void | convexHull () |
|
const TypeSet< Geom::Point2D< T > > & | data () const |
|
double | distTo (const Geom::Point2D< T > &refpt, int *segmentidxptr=0, double *fractionptr=0) const |
|
void | erase () |
|
void | getData (bool of_x, TypeSet< T > &) const |
|
Interval< T > | getRange (bool of_x) const |
|
Geom::Point2D< T > | getUdf () const |
|
const Geom::Point2D< T > & | getVertex (int idx) const |
|
void | insert (int idx, const Geom::Point2D< T > &vtx) |
|
bool | isClosed () const |
|
bool | isEmpty () const |
|
bool | isInside (const Geom::Point2D< T > &, bool inclborder, T eps) const |
|
int | isInside (const ODPolygon &testpoly, T eps=0) const |
|
bool | isSelfIntersecting () const |
|
bool | isUTurn (int idx) const |
|
void | keepBendPoints (float eps) |
|
double | maxDistToBorderEstimate (double maxrelerr=0.001) const |
|
const Geom::Point2D< T > & | nextVertex (int idx) const |
|
bool | operator== (const ODPolygon< T > &) const |
|
bool | operator> (const ODPolygon< T > &plg) const |
|
const Geom::Point2D< T > & | prevVertex (int idx) const |
|
void | remove (int idx) |
|
void | removeZeroLengths () |
|
void | reverse () |
|
bool | segmentMeetsBorder (const Geom::Point2D< T > &pt1, const Geom::Point2D< T > &pt2, T eps) const |
|
void | setClosed (bool yn) |
|
void | setEmpty () |
|
void | setUdf (Geom::Point2D< T > pt) |
|
int | size () const |
|
bool | validIdx (int idx) const |
|
bool | windowOverlaps (const Interval< T > &xrange, const Interval< T > &yrange, T eps) const |
|
|
static double | distToSegment (const Geom::Point2D< T > &p1, const Geom::Point2D< T > &p2, const Geom::Point2D< T > &refpt, double *fractionptr=0) |
|
static bool | doCoincide (const Geom::Point2D< T > &point1, const Geom::Point2D< T > &point2, T eps=mDefEps) |
|
static int | doSegmentsMeet (const Geom::Point2D< T > &p1, const Geom::Point2D< T > &p2, const Geom::Point2D< T > &q1, const Geom::Point2D< T > &q2, T eps) |
|
static bool | isEdgeCrossing (const Geom::Point2D< T > &raydir, const Geom::Point2D< T > &raysrc, const Geom::Point2D< T > &vtx1, const Geom::Point2D< T > &vtx2) |
|
static bool | isOnHalfLine (const Geom::Point2D< T > &point, const Geom::Point2D< T > &dirvec, const Geom::Point2D< T > &endvec, T eps) |
|
static bool | isOnLine (const Geom::Point2D< T > &point, const Geom::Point2D< T > &dirvec, const Geom::Point2D< T > &posvec, T eps) |
|
static bool | isOnSegment (const Geom::Point2D< T > &pt, const Geom::Point2D< T > &pt0, const Geom::Point2D< T > &pt1, T eps) |
|
static bool | isRightOfLine (const Geom::Point2D< T > &point, const Geom::Point2D< T > &dirvec, const Geom::Point2D< T > &posvec) |
|
static double | sgnDistToLine (const Geom::Point2D< T > &point, const Geom::Point2D< T > &dirvec, const Geom::Point2D< T > &posvec) |
|
template<class T>
class ODPolygon< T >
(Closed) sequence of connected 2-D coordinates.
<>