Classes | |
| class | Clipper |
| class | ClipperBase |
| class | clipperException |
| struct | DoublePoint |
| struct | ExPolygon |
| struct | HorzJoinRec |
| class | Int128 |
| struct | IntersectNode |
| struct | IntPoint |
| struct | IntRect |
| struct | JoinRec |
| struct | LocalMinima |
| struct | OutPt |
| struct | OutRec |
| class | PolyOffsetBuilder |
| struct | Scanbeam |
| struct | TEdge |
Typedefs | |
| typedef std::vector< TEdge * > | EdgeList |
| typedef std::vector< ExPolygon > | ExPolygons |
| typedef std::vector < HorzJoinRec * > | HorzJoinList |
| typedef std::vector< JoinRec * > | JoinList |
| typedef signed long long | long64 |
| typedef std::vector< IntPoint > | Polygon |
| typedef std::vector< Polygon > | Polygons |
| typedef std::vector< OutRec * > | PolyOutList |
| typedef unsigned long long | ulong64 |
Enumerations | |
| enum | ClipType { ctIntersection, ctUnion, ctDifference, ctXor } |
| enum | Direction { dRightToLeft, dLeftToRight } |
| enum | EdgeSide { esNeither = 0, esLeft = 1, esRight = 2, esBoth = 3 } |
| enum | IntersectProtects { ipNone = 0, ipLeft = 1, ipRight = 2, ipBoth = 3 } |
| enum | JoinType { jtSquare, jtRound, jtMiter } |
| enum | PolyFillType { pftEvenOdd, pftNonZero, pftPositive, pftNegative } |
| enum | PolyType { ptSubject, ptClip } |
Functions | |
| long64 | Abs (long64 val) |
| double | Area (const Polygon &poly) |
| double | Area (const OutRec &outRec, bool UseFullInt64Range) |
| Polygon | BuildArc (const IntPoint &pt, const double a1, const double a2, const double r) |
| void | DisposeOutPts (OutPt *&pp) |
| bool | E2InsertsBeforeE1 (TEdge &e1, TEdge &e2) |
| OutRec * | FindAppendLinkEnd (OutRec *outRec) |
| bool | FindSegment (OutPt *&pp, IntPoint &pt1, IntPoint &pt2) |
| bool | FirstIsBottomPt (const OutPt *btmPt1, const OutPt *btmPt2) |
| bool | FullRangeNeeded (const Polygon &pts) |
| OutPt * | GetBottomPt (OutPt *pp) |
| double | GetDx (const IntPoint pt1, const IntPoint pt2) |
| OutRec * | GetLowermostRec (OutRec *outRec1, OutRec *outRec2) |
| TEdge * | GetMaximaPair (TEdge *e) |
| TEdge * | GetNextInAEL (TEdge *e, Direction dir) |
| bool | GetOverlapSegment (IntPoint pt1a, IntPoint pt1b, IntPoint pt2a, IntPoint pt2b, IntPoint &pt1, IntPoint &pt2) |
| DoublePoint | GetUnitNormal (const IntPoint &pt1, const IntPoint &pt2) |
| void | InitEdge (TEdge *e, TEdge *eNext, TEdge *ePrev, const IntPoint &pt, PolyType polyType) |
| OutPt * | InsertPolyPtBetween (OutPt *p1, OutPt *p2, const IntPoint pt) |
| bool | IntersectPoint (TEdge &edge1, TEdge &edge2, IntPoint &ip, bool UseFullInt64Range) |
| bool | IsIntermediate (TEdge *e, const long64 Y) |
| bool | IsMaxima (TEdge *e, const long64 Y) |
| bool | IsMinima (TEdge *e) |
| void | OffsetPolygons (const Polygons &in_polys, Polygons &out_polys, double delta, JoinType jointype=jtSquare, double MiterLimit=2) |
| std::ostream & | operator<< (std::ostream &s, Polygon &p) |
| std::ostream & | operator<< (std::ostream &s, Polygons &p) |
| std::ostream & | operator<< (std::ostream &s, IntPoint &p) |
| bool | Orientation (const Polygon &poly) |
| bool | Orientation (OutRec *outRec, bool UseFullInt64Range) |
| bool | Param1RightOfParam2 (OutRec *outRec1, OutRec *outRec2) |
| bool | PointInPolygon (const IntPoint &pt, OutPt *pp, bool UseFullInt64Range) |
| bool | PointIsVertex (const IntPoint &pt, OutPt *pp) |
| bool | PointsEqual (const IntPoint &pt1, const IntPoint &pt2) |
| bool | PolySort (OutRec *or1, OutRec *or2) |
| bool | ProcessParam1BeforeParam2 (IntersectNode &node1, IntersectNode &node2) |
| bool | Pt3IsBetweenPt1AndPt2 (const IntPoint pt1, const IntPoint pt2, const IntPoint pt3) |
| void | ReversePolygon (Polygon &p) |
| void | ReversePolygons (Polygons &p) |
| void | ReversePolyPtLinks (OutPt &pp) |
| long64 | Round (double val) |
| void | SetDx (TEdge &e) |
| void | SimplifyPolygon (const Polygon &in_poly, Polygons &out_polys, PolyFillType fillType=pftEvenOdd) |
| void | SimplifyPolygons (const Polygons &in_polys, Polygons &out_polys, PolyFillType fillType=pftEvenOdd) |
| void | SimplifyPolygons (Polygons &polys, PolyFillType fillType=pftEvenOdd) |
| bool | SlopesEqual (TEdge &e1, TEdge &e2, bool UseFullInt64Range) |
| bool | SlopesEqual (const IntPoint pt1, const IntPoint pt2, const IntPoint pt3, bool UseFullInt64Range) |
| bool | SlopesEqual (const IntPoint pt1, const IntPoint pt2, const IntPoint pt3, const IntPoint pt4, bool UseFullInt64Range) |
| void | SwapIntersectNodes (IntersectNode &int1, IntersectNode &int2) |
| void | SwapPoints (IntPoint &pt1, IntPoint &pt2) |
| void | SwapPolyIndexes (TEdge &edge1, TEdge &edge2) |
| void | SwapSides (TEdge &edge1, TEdge &edge2) |
| void | SwapX (TEdge &e) |
| long64 | TopX (TEdge &edge, const long64 currentY) |
| long64 | TopX (const IntPoint pt1, const IntPoint pt2, const long64 currentY) |
Variables | |
| static long64 const | hiRange = 0x3FFFFFFFFFFFFFFFLL |
| static long64 const | loRange = 0x3FFFFFFF |
| static double const | pi = 3.141592653589793238 |
| typedef std::vector< TEdge* > ClipperLib::EdgeList |
Definition at line 174 of file clipper.hpp.
| typedef std::vector< ExPolygon > ClipperLib::ExPolygons |
Definition at line 75 of file clipper.hpp.
| typedef std::vector< HorzJoinRec* > ClipperLib::HorzJoinList |
Definition at line 176 of file clipper.hpp.
| typedef std::vector< JoinRec* > ClipperLib::JoinList |
Definition at line 175 of file clipper.hpp.
| typedef signed long long ClipperLib::long64 |
Definition at line 53 of file clipper.hpp.
| typedef std::vector< IntPoint > ClipperLib::Polygon |
Definition at line 65 of file clipper.hpp.
| typedef std::vector< Polygon > ClipperLib::Polygons |
Definition at line 66 of file clipper.hpp.
| typedef std::vector< OutRec* > ClipperLib::PolyOutList |
Definition at line 173 of file clipper.hpp.
| typedef unsigned long long ClipperLib::ulong64 |
Definition at line 54 of file clipper.hpp.
| enum ClipperLib::ClipType |
Definition at line 45 of file clipper.hpp.
Definition at line 55 of file clipper.cpp.
| enum ClipperLib::EdgeSide |
Definition at line 91 of file clipper.hpp.
Definition at line 92 of file clipper.hpp.
| enum ClipperLib::JoinType |
Definition at line 77 of file clipper.hpp.
Definition at line 51 of file clipper.hpp.
| enum ClipperLib::PolyType |
Definition at line 46 of file clipper.hpp.
| long64 ClipperLib::Abs | ( | long64 | val | ) | [inline] |
Definition at line 62 of file clipper.cpp.
| double ClipperLib::Area | ( | const Polygon & | poly | ) |
Definition at line 409 of file clipper.cpp.
| double ClipperLib::Area | ( | const OutRec & | outRec, |
| bool | UseFullInt64Range | ||
| ) |
Definition at line 434 of file clipper.cpp.
| Polygon ClipperLib::BuildArc | ( | const IntPoint & | pt, |
| const double | a1, | ||
| const double | a2, | ||
| const double | r | ||
| ) |
Definition at line 3148 of file clipper.cpp.
| void ClipperLib::DisposeOutPts | ( | OutPt *& | pp | ) |
Definition at line 649 of file clipper.cpp.
| bool ClipperLib::E2InsertsBeforeE1 | ( | TEdge & | e1, |
| TEdge & | e2 | ||
| ) |
Definition at line 2875 of file clipper.cpp.
| OutRec* ClipperLib::FindAppendLinkEnd | ( | OutRec * | outRec | ) |
Definition at line 1250 of file clipper.cpp.
| bool ClipperLib::FindSegment | ( | OutPt *& | pp, |
| IntPoint & | pt1, | ||
| IntPoint & | pt2 | ||
| ) |
Definition at line 790 of file clipper.cpp.
| bool ClipperLib::FirstIsBottomPt | ( | const OutPt * | btmPt1, |
| const OutPt * | btmPt2 | ||
| ) |
Definition at line 733 of file clipper.cpp.
| bool ClipperLib::FullRangeNeeded | ( | const Polygon & | pts | ) |
Definition at line 313 of file clipper.cpp.
| OutPt* ClipperLib::GetBottomPt | ( | OutPt * | pp | ) |
Definition at line 752 of file clipper.cpp.
| double ClipperLib::GetDx | ( | const IntPoint | pt1, |
| const IntPoint | pt2 | ||
| ) |
Definition at line 533 of file clipper.cpp.
| OutRec* ClipperLib::GetLowermostRec | ( | OutRec * | outRec1, |
| OutRec * | outRec2 | ||
| ) |
Definition at line 1940 of file clipper.cpp.
| TEdge* ClipperLib::GetMaximaPair | ( | TEdge * | e | ) |
Definition at line 2227 of file clipper.cpp.
| TEdge* ClipperLib::GetNextInAEL | ( | TEdge * | e, |
| Direction | dir | ||
| ) |
Definition at line 2327 of file clipper.cpp.
| bool ClipperLib::GetOverlapSegment | ( | IntPoint | pt1a, |
| IntPoint | pt1b, | ||
| IntPoint | pt2a, | ||
| IntPoint | pt2b, | ||
| IntPoint & | pt1, | ||
| IntPoint & | pt2 | ||
| ) |
Definition at line 711 of file clipper.cpp.
| DoublePoint ClipperLib::GetUnitNormal | ( | const IntPoint & | pt1, |
| const IntPoint & | pt2 | ||
| ) |
Definition at line 3167 of file clipper.cpp.
| void ClipperLib::InitEdge | ( | TEdge * | e, |
| TEdge * | eNext, | ||
| TEdge * | ePrev, | ||
| const IntPoint & | pt, | ||
| PolyType | polyType | ||
| ) |
Definition at line 662 of file clipper.cpp.
| OutPt* ClipperLib::InsertPolyPtBetween | ( | OutPt * | p1, |
| OutPt * | p2, | ||
| const IntPoint | pt | ||
| ) |
Definition at line 818 of file clipper.cpp.
| bool ClipperLib::IntersectPoint | ( | TEdge & | edge1, |
| TEdge & | edge2, | ||
| IntPoint & | ip, | ||
| bool | UseFullInt64Range | ||
| ) |
Definition at line 591 of file clipper.cpp.
| bool ClipperLib::IsIntermediate | ( | TEdge * | e, |
| const long64 | Y | ||
| ) |
Definition at line 2221 of file clipper.cpp.
| bool ClipperLib::IsMaxima | ( | TEdge * | e, |
| const long64 | Y | ||
| ) |
Definition at line 2215 of file clipper.cpp.
| bool ClipperLib::IsMinima | ( | TEdge * | e | ) |
Definition at line 2209 of file clipper.cpp.
| void ClipperLib::OffsetPolygons | ( | const Polygons & | in_polys, |
| Polygons & | out_polys, | ||
| double | delta, | ||
| JoinType | jointype = jtSquare, |
||
| double | MiterLimit = 2 |
||
| ) |
Definition at line 3387 of file clipper.cpp.
| std::ostream & ClipperLib::operator<< | ( | std::ostream & | s, |
| Polygon & | p | ||
| ) |
Definition at line 3428 of file clipper.cpp.
| std::ostream & ClipperLib::operator<< | ( | std::ostream & | s, |
| Polygons & | p | ||
| ) |
Definition at line 3437 of file clipper.cpp.
| std::ostream& ClipperLib::operator<< | ( | std::ostream & | s, |
| IntPoint & | p | ||
| ) |
Definition at line 3421 of file clipper.cpp.
| bool ClipperLib::Orientation | ( | const Polygon & | poly | ) |
Definition at line 327 of file clipper.cpp.
| bool ClipperLib::Orientation | ( | OutRec * | outRec, |
| bool | UseFullInt64Range | ||
| ) |
Definition at line 371 of file clipper.cpp.
| bool ClipperLib::Param1RightOfParam2 | ( | OutRec * | outRec1, |
| OutRec * | outRec2 | ||
| ) |
Definition at line 1956 of file clipper.cpp.
| bool ClipperLib::PointInPolygon | ( | const IntPoint & | pt, |
| OutPt * | pp, | ||
| bool | UseFullInt64Range | ||
| ) |
Definition at line 471 of file clipper.cpp.
| bool ClipperLib::PointIsVertex | ( | const IntPoint & | pt, |
| OutPt * | pp | ||
| ) |
Definition at line 458 of file clipper.cpp.
| bool ClipperLib::PointsEqual | ( | const IntPoint & | pt1, |
| const IntPoint & | pt2 | ||
| ) | [inline] |
Definition at line 365 of file clipper.cpp.
| bool ClipperLib::PolySort | ( | OutRec * | or1, |
| OutRec * | or2 | ||
| ) |
Definition at line 1223 of file clipper.cpp.
| bool ClipperLib::ProcessParam1BeforeParam2 | ( | IntersectNode & | node1, |
| IntersectNode & | node2 | ||
| ) |
Definition at line 2538 of file clipper.cpp.
| bool ClipperLib::Pt3IsBetweenPt1AndPt2 | ( | const IntPoint | pt1, |
| const IntPoint | pt2, | ||
| const IntPoint | pt3 | ||
| ) |
Definition at line 809 of file clipper.cpp.
| void ClipperLib::ReversePolygon | ( | Polygon & | p | ) |
Definition at line 3124 of file clipper.cpp.
| void ClipperLib::ReversePolygons | ( | Polygons & | p | ) |
Definition at line 3130 of file clipper.cpp.
| void ClipperLib::ReversePolyPtLinks | ( | OutPt & | pp | ) |
Definition at line 636 of file clipper.cpp.
| long64 ClipperLib::Round | ( | double | val | ) | [inline] |
Definition at line 563 of file clipper.cpp.
| void ClipperLib::SetDx | ( | TEdge & | e | ) |
Definition at line 540 of file clipper.cpp.
| void ClipperLib::SimplifyPolygon | ( | const Polygon & | in_poly, |
| Polygons & | out_polys, | ||
| PolyFillType | fillType = pftEvenOdd |
||
| ) |
Definition at line 3399 of file clipper.cpp.
| void ClipperLib::SimplifyPolygons | ( | const Polygons & | in_polys, |
| Polygons & | out_polys, | ||
| PolyFillType | fillType = pftEvenOdd |
||
| ) |
Definition at line 3407 of file clipper.cpp.
| void ClipperLib::SimplifyPolygons | ( | Polygons & | polys, |
| PolyFillType | fillType = pftEvenOdd |
||
| ) |
Definition at line 3415 of file clipper.cpp.
| bool ClipperLib::SlopesEqual | ( | TEdge & | e1, |
| TEdge & | e2, | ||
| bool | UseFullInt64Range | ||
| ) |
Definition at line 503 of file clipper.cpp.
| bool ClipperLib::SlopesEqual | ( | const IntPoint | pt1, |
| const IntPoint | pt2, | ||
| const IntPoint | pt3, | ||
| bool | UseFullInt64Range | ||
| ) |
Definition at line 513 of file clipper.cpp.
| bool ClipperLib::SlopesEqual | ( | const IntPoint | pt1, |
| const IntPoint | pt2, | ||
| const IntPoint | pt3, | ||
| const IntPoint | pt4, | ||
| bool | UseFullInt64Range | ||
| ) |
Definition at line 523 of file clipper.cpp.
| void ClipperLib::SwapIntersectNodes | ( | IntersectNode & | int1, |
| IntersectNode & | int2 | ||
| ) |
Definition at line 2816 of file clipper.cpp.
| void ClipperLib::SwapPoints | ( | IntPoint & | pt1, |
| IntPoint & | pt2 | ||
| ) |
Definition at line 703 of file clipper.cpp.
| void ClipperLib::SwapPolyIndexes | ( | TEdge & | edge1, |
| TEdge & | edge2 | ||
| ) |
Definition at line 555 of file clipper.cpp.
| void ClipperLib::SwapSides | ( | TEdge & | edge1, |
| TEdge & | edge2 | ||
| ) |
Definition at line 547 of file clipper.cpp.
| void ClipperLib::SwapX | ( | TEdge & | e | ) | [inline] |
Definition at line 692 of file clipper.cpp.
| long64 ClipperLib::TopX | ( | TEdge & | edge, |
| const long64 | currentY | ||
| ) |
Definition at line 570 of file clipper.cpp.
| long64 ClipperLib::TopX | ( | const IntPoint | pt1, |
| const IntPoint | pt2, | ||
| const long64 | currentY | ||
| ) |
Definition at line 577 of file clipper.cpp.
long64 const ClipperLib::hiRange = 0x3FFFFFFFFFFFFFFFLL [static] |
Definition at line 53 of file clipper.cpp.
long64 const ClipperLib::loRange = 0x3FFFFFFF [static] |
Definition at line 52 of file clipper.cpp.
double const ClipperLib::pi = 3.141592653589793238 [static] |
Definition at line 54 of file clipper.cpp.