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