Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
ClipperLib::Clipper Class Reference

#include <clipper.hpp>

Inheritance diagram for ClipperLib::Clipper:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void Clear ()
 Clipper ()
bool Execute (ClipType clipType, Polygons &solution, PolyFillType subjFillType=pftEvenOdd, PolyFillType clipFillType=pftEvenOdd)
bool Execute (ClipType clipType, ExPolygons &solution, PolyFillType subjFillType=pftEvenOdd, PolyFillType clipFillType=pftEvenOdd)
bool ReverseSolution ()
void ReverseSolution (bool value)
 ~Clipper ()

Protected Member Functions

virtual bool ExecuteInternal (bool fixHoleLinkages)
void Reset ()

Private Member Functions

void AddEdgeToSEL (TEdge *edge)
void AddHorzJoin (TEdge *e, int idx)
void AddIntersectNode (TEdge *e1, TEdge *e2, const IntPoint &pt)
void AddJoin (TEdge *e1, TEdge *e2, int e1OutIdx=-1, int e2OutIdx=-1)
void AddLocalMaxPoly (TEdge *e1, TEdge *e2, const IntPoint &pt)
void AddLocalMinPoly (TEdge *e1, TEdge *e2, const IntPoint &pt)
void AddOutPt (TEdge *e, const IntPoint &pt)
void AppendPolygon (TEdge *e1, TEdge *e2)
void BuildIntersectList (const long64 botY, const long64 topY)
void BuildResult (Polygons &polys)
void BuildResultEx (ExPolygons &polys)
void CheckHoleLinkages1 (OutRec *outRec1, OutRec *outRec2)
void CheckHoleLinkages2 (OutRec *outRec1, OutRec *outRec2)
void ClearHorzJoins ()
void ClearJoins ()
void CopyAELToSEL ()
OutRecCreateOutRec ()
void DeleteFromAEL (TEdge *e)
void DeleteFromSEL (TEdge *e)
void DisposeAllPolyPts ()
void DisposeBottomPt (OutRec &outRec)
void DisposeIntersectNodes ()
void DisposeOutRec (PolyOutList::size_type index)
void DisposeScanbeamList ()
void DoBothEdges (TEdge *edge1, TEdge *edge2, const IntPoint &pt)
void DoEdge1 (TEdge *edge1, TEdge *edge2, const IntPoint &pt)
void DoEdge2 (TEdge *edge1, TEdge *edge2, const IntPoint &pt)
void DoMaxima (TEdge *e, long64 topY)
void FixHoleLinkage (OutRec *outRec)
bool FixupIntersections ()
void FixupOutPolygon (OutRec &outRec)
void InsertEdgeIntoAEL (TEdge *edge)
void InsertLocalMinimaIntoAEL (const long64 botY)
void InsertScanbeam (const long64 Y)
void IntersectEdges (TEdge *e1, TEdge *e2, const IntPoint &pt, IntersectProtects protects)
bool IsContributing (const TEdge &edge) const
bool IsEvenOddAltFillType (const TEdge &edge) const
bool IsEvenOddFillType (const TEdge &edge) const
bool IsHole (TEdge *e)
bool IsTopHorz (const long64 XPos)
void JoinCommonEdges (bool fixHoleLinkages)
long64 PopScanbeam ()
void ProcessEdgesAtTopOfScanbeam (const long64 topY)
void ProcessHorizontal (TEdge *horzEdge)
void ProcessHorizontals ()
bool ProcessIntersections (const long64 botY, const long64 topY)
void ProcessIntersectList ()
void SetHoleState (TEdge *e, OutRec *OutRec)
void SetWindingCount (TEdge &edge)
void SwapPositionsInAEL (TEdge *edge1, TEdge *edge2)
void SwapPositionsInSEL (TEdge *edge1, TEdge *edge2)
void UpdateEdgeIntoAEL (TEdge *&e)

Private Attributes

TEdgem_ActiveEdges
PolyFillType m_ClipFillType
ClipType m_ClipType
bool m_ExecuteLocked
HorzJoinList m_HorizJoins
IntersectNodem_IntersectNodes
JoinList m_Joins
PolyOutList m_PolyOuts
bool m_ReverseOutput
Scanbeamm_Scanbeam
TEdgem_SortedEdges
PolyFillType m_SubjFillType

Detailed Description

Definition at line 202 of file clipper.hpp.


Constructor & Destructor Documentation

Definition at line 1137 of file clipper.cpp.

Definition at line 1149 of file clipper.cpp.


Member Function Documentation

void ClipperLib::Clipper::AddEdgeToSEL ( TEdge edge) [private]

Definition at line 1591 of file clipper.cpp.

void ClipperLib::Clipper::AddHorzJoin ( TEdge e,
int  idx 
) [private]

Definition at line 1653 of file clipper.cpp.

void ClipperLib::Clipper::AddIntersectNode ( TEdge e1,
TEdge e2,
const IntPoint pt 
) [private]

Definition at line 2559 of file clipper.cpp.

void ClipperLib::Clipper::AddJoin ( TEdge e1,
TEdge e2,
int  e1OutIdx = -1,
int  e2OutIdx = -1 
) [private]

Definition at line 1628 of file clipper.cpp.

void ClipperLib::Clipper::AddLocalMaxPoly ( TEdge e1,
TEdge e2,
const IntPoint pt 
) [private]

Definition at line 1576 of file clipper.cpp.

void ClipperLib::Clipper::AddLocalMinPoly ( TEdge e1,
TEdge e2,
const IntPoint pt 
) [private]

Definition at line 1543 of file clipper.cpp.

void ClipperLib::Clipper::AddOutPt ( TEdge e,
const IntPoint pt 
) [private]

Definition at line 2099 of file clipper.cpp.

void ClipperLib::Clipper::AppendPolygon ( TEdge e1,
TEdge e2 
) [private]

Definition at line 1967 of file clipper.cpp.

void ClipperLib::Clipper::BuildIntersectList ( const long64  botY,
const long64  topY 
) [private]

Definition at line 2487 of file clipper.cpp.

void ClipperLib::Clipper::BuildResult ( Polygons polys) [private]

Definition at line 2756 of file clipper.cpp.

void ClipperLib::Clipper::BuildResultEx ( ExPolygons polys) [private]

Definition at line 2780 of file clipper.cpp.

void ClipperLib::Clipper::CheckHoleLinkages1 ( OutRec outRec1,
OutRec outRec2 
) [private]

Definition at line 2932 of file clipper.cpp.

void ClipperLib::Clipper::CheckHoleLinkages2 ( OutRec outRec1,
OutRec outRec2 
) [private]

Definition at line 2946 of file clipper.cpp.

void ClipperLib::Clipper::Clear ( void  ) [virtual]

Reimplemented from ClipperLib::ClipperBase.

Definition at line 1156 of file clipper.cpp.

Definition at line 1662 of file clipper.cpp.

void ClipperLib::Clipper::ClearJoins ( ) [private]

Definition at line 1645 of file clipper.cpp.

Definition at line 1611 of file clipper.cpp.

Definition at line 2071 of file clipper.cpp.

void ClipperLib::Clipper::DeleteFromAEL ( TEdge e) [private]

Definition at line 1747 of file clipper.cpp.

void ClipperLib::Clipper::DeleteFromSEL ( TEdge e) [private]

Definition at line 1760 of file clipper.cpp.

Definition at line 1372 of file clipper.cpp.

void ClipperLib::Clipper::DisposeBottomPt ( OutRec outRec) [private]

Definition at line 2086 of file clipper.cpp.

Definition at line 2476 of file clipper.cpp.

void ClipperLib::Clipper::DisposeOutRec ( PolyOutList::size_type  index) [private]

Definition at line 1379 of file clipper.cpp.

Definition at line 1164 of file clipper.cpp.

void ClipperLib::Clipper::DoBothEdges ( TEdge edge1,
TEdge edge2,
const IntPoint pt 
) [private]

Definition at line 2923 of file clipper.cpp.

void ClipperLib::Clipper::DoEdge1 ( TEdge edge1,
TEdge edge2,
const IntPoint pt 
) [private]

Definition at line 2907 of file clipper.cpp.

void ClipperLib::Clipper::DoEdge2 ( TEdge edge1,
TEdge edge2,
const IntPoint pt 
) [private]

Definition at line 2915 of file clipper.cpp.

void ClipperLib::Clipper::DoMaxima ( TEdge e,
long64  topY 
) [private]

Definition at line 2599 of file clipper.cpp.

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
Polygons solution,
PolyFillType  subjFillType = pftEvenOdd,
PolyFillType  clipFillType = pftEvenOdd 
)

Definition at line 1191 of file clipper.cpp.

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
ExPolygons solution,
PolyFillType  subjFillType = pftEvenOdd,
PolyFillType  clipFillType = pftEvenOdd 
)

Definition at line 1207 of file clipper.cpp.

bool ClipperLib::Clipper::ExecuteInternal ( bool  fixHoleLinkages) [protected, virtual]

Definition at line 1282 of file clipper.cpp.

void ClipperLib::Clipper::FixHoleLinkage ( OutRec outRec) [private]

Definition at line 1257 of file clipper.cpp.

Definition at line 2832 of file clipper.cpp.

void ClipperLib::Clipper::FixupOutPolygon ( OutRec outRec) [private]

Definition at line 2711 of file clipper.cpp.

void ClipperLib::Clipper::InsertEdgeIntoAEL ( TEdge edge) [private]

Definition at line 2881 of file clipper.cpp.

void ClipperLib::Clipper::InsertLocalMinimaIntoAEL ( const long64  botY) [private]

Definition at line 1670 of file clipper.cpp.

void ClipperLib::Clipper::InsertScanbeam ( const long64  Y) [private]

Definition at line 1335 of file clipper.cpp.

void ClipperLib::Clipper::IntersectEdges ( TEdge e1,
TEdge e2,
const IntPoint pt,
IntersectProtects  protects 
) [private]

Definition at line 1773 of file clipper.cpp.

bool ClipperLib::Clipper::IsContributing ( const TEdge edge) const [private]

Definition at line 1464 of file clipper.cpp.

bool ClipperLib::Clipper::IsEvenOddAltFillType ( const TEdge edge) const [private]

Definition at line 1456 of file clipper.cpp.

bool ClipperLib::Clipper::IsEvenOddFillType ( const TEdge edge) const [private]

Definition at line 1448 of file clipper.cpp.

bool ClipperLib::Clipper::IsTopHorz ( const long64  XPos) [private]

Definition at line 2196 of file clipper.cpp.

void ClipperLib::Clipper::JoinCommonEdges ( bool  fixHoleLinkages) [private]

Definition at line 2956 of file clipper.cpp.

Definition at line 1362 of file clipper.cpp.

Definition at line 2623 of file clipper.cpp.

void ClipperLib::Clipper::ProcessHorizontal ( TEdge horzEdge) [private]

Definition at line 2333 of file clipper.cpp.

Definition at line 2184 of file clipper.cpp.

bool ClipperLib::Clipper::ProcessIntersections ( const long64  botY,
const long64  topY 
) [private]

Definition at line 2458 of file clipper.cpp.

Definition at line 2583 of file clipper.cpp.

void ClipperLib::Clipper::Reset ( ) [protected, virtual]

Reimplemented from ClipperLib::ClipperBase.

Definition at line 1174 of file clipper.cpp.

Definition at line 216 of file clipper.hpp.

void ClipperLib::Clipper::ReverseSolution ( bool  value) [inline]

Definition at line 217 of file clipper.hpp.

void ClipperLib::Clipper::SetHoleState ( TEdge e,
OutRec OutRec 
) [private]

Definition at line 1922 of file clipper.cpp.

void ClipperLib::Clipper::SetWindingCount ( TEdge edge) [private]

Definition at line 1388 of file clipper.cpp.

void ClipperLib::Clipper::SwapPositionsInAEL ( TEdge edge1,
TEdge edge2 
) [private]

Definition at line 2235 of file clipper.cpp.

void ClipperLib::Clipper::SwapPositionsInSEL ( TEdge edge1,
TEdge edge2 
) [private]

Definition at line 2281 of file clipper.cpp.

Definition at line 2437 of file clipper.cpp.


Member Data Documentation

Definition at line 227 of file clipper.hpp.

Definition at line 231 of file clipper.hpp.

Definition at line 225 of file clipper.hpp.

Definition at line 230 of file clipper.hpp.

Definition at line 224 of file clipper.hpp.

Definition at line 229 of file clipper.hpp.

Definition at line 223 of file clipper.hpp.

Definition at line 222 of file clipper.hpp.

Definition at line 233 of file clipper.hpp.

Definition at line 226 of file clipper.hpp.

Definition at line 228 of file clipper.hpp.

Definition at line 232 of file clipper.hpp.


The documentation for this class was generated from the following files:


srs_env_model_percp
Author(s): Rostislav Hulik (ihulik@fit.vutbr.cz), Tomas Hodan, Michal Spanel (spanel@fit.vutbr.cz)
autogenerated on Mon Oct 6 2014 08:07:23