#include <clipper.hpp>

Inheritance diagram for ClipperLib::Clipper:
Inheritance graph

Public Member Functions

 Clipper (int initOptions=0)
 
bool Execute (ClipType clipType, Paths &solution, PolyFillType fillType=pftEvenOdd)
 
bool Execute (ClipType clipType, Paths &solution, PolyFillType subjFillType, PolyFillType clipFillType)
 
bool Execute (ClipType clipType, PolyTree &polytree, PolyFillType fillType=pftEvenOdd)
 
bool Execute (ClipType clipType, PolyTree &polytree, PolyFillType subjFillType, PolyFillType clipFillType)
 
bool ReverseSolution ()
 
void ReverseSolution (bool value)
 
bool StrictlySimple ()
 
void StrictlySimple (bool value)
 
void ZFillFunction (ZFillCallback zFillFunc)
 
virtual bool AddPath (const Path &pg, PolyType PolyTyp, bool Closed)
 
bool AddPaths (const Paths &ppg, PolyType PolyTyp, bool Closed)
 
virtual void Clear ()
 
IntRect GetBounds ()
 
bool PreserveCollinear ()
 
void PreserveCollinear (bool value)
 

Protected Types

typedef std::vector< LocalMinimum > MinimaList
 
typedef std::priority_queue< cIntScanbeamList
 

Protected Member Functions

virtual bool ExecuteInternal ()
 
void DisposeLocalMinimaList ()
 
TEdge * AddBoundsToLML (TEdge *e, bool IsClosed)
 
virtual void Reset ()
 
TEdge * ProcessBound (TEdge *E, bool IsClockwise)
 
void InsertScanbeam (const cInt Y)
 
bool PopScanbeam (cInt &Y)
 
bool LocalMinimaPending ()
 
bool PopLocalMinima (cInt Y, const LocalMinimum *&locMin)
 
OutRec * CreateOutRec ()
 
void DisposeAllOutRecs ()
 
void DisposeOutRec (PolyOutList::size_type index)
 
void SwapPositionsInAEL (TEdge *edge1, TEdge *edge2)
 
void DeleteFromAEL (TEdge *e)
 
void UpdateEdgeIntoAEL (TEdge *&e)
 

Protected Attributes

MinimaList::iterator m_CurrentLM
 
MinimaList m_MinimaList
 
bool m_UseFullRange
 
EdgeList m_edges
 
bool m_PreserveCollinear
 
bool m_HasOpenPaths
 
PolyOutList m_PolyOuts
 
TEdge * m_ActiveEdges
 
ScanbeamList m_Scanbeam
 

Member Typedef Documentation

◆ MinimaList

typedef std::vector<LocalMinimum> ClipperLib::ClipperBase::MinimaList
protectedinherited

◆ ScanbeamList

typedef std::priority_queue<cInt> ClipperLib::ClipperBase::ScanbeamList
protectedinherited

Constructor & Destructor Documentation

◆ Clipper()

ClipperLib::Clipper::Clipper ( int  initOptions = 0)

Member Function Documentation

◆ AddBoundsToLML()

TEdge * ClipperLib::ClipperBase::AddBoundsToLML ( TEdge *  e,
bool  IsClosed 
)
protectedinherited

◆ AddPath()

virtual bool ClipperLib::ClipperBase::AddPath ( const Path pg,
PolyType  PolyTyp,
bool  Closed 
)
virtualinherited

◆ AddPaths()

bool ClipperLib::ClipperBase::AddPaths ( const Paths ppg,
PolyType  PolyTyp,
bool  Closed 
)
inherited

◆ Clear()

virtual void ClipperLib::ClipperBase::Clear ( )
virtualinherited

◆ CreateOutRec()

OutRec * ClipperLib::ClipperBase::CreateOutRec ( )
protectedinherited

◆ DeleteFromAEL()

void ClipperLib::ClipperBase::DeleteFromAEL ( TEdge *  e)
protectedinherited

◆ DisposeAllOutRecs()

void ClipperLib::ClipperBase::DisposeAllOutRecs ( )
protectedinherited

◆ DisposeLocalMinimaList()

void ClipperLib::ClipperBase::DisposeLocalMinimaList ( )
protectedinherited

◆ DisposeOutRec()

void ClipperLib::ClipperBase::DisposeOutRec ( PolyOutList::size_type  index)
protectedinherited

◆ Execute() [1/4]

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
Paths solution,
PolyFillType  fillType = pftEvenOdd 
)

◆ Execute() [2/4]

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
Paths solution,
PolyFillType  subjFillType,
PolyFillType  clipFillType 
)

◆ Execute() [3/4]

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
PolyTree polytree,
PolyFillType  fillType = pftEvenOdd 
)

◆ Execute() [4/4]

bool ClipperLib::Clipper::Execute ( ClipType  clipType,
PolyTree polytree,
PolyFillType  subjFillType,
PolyFillType  clipFillType 
)

◆ ExecuteInternal()

virtual bool ClipperLib::Clipper::ExecuteInternal ( )
protectedvirtual

◆ GetBounds()

IntRect ClipperLib::ClipperBase::GetBounds ( )
inherited

◆ InsertScanbeam()

void ClipperLib::ClipperBase::InsertScanbeam ( const cInt  Y)
protectedinherited

◆ LocalMinimaPending()

bool ClipperLib::ClipperBase::LocalMinimaPending ( )
protectedinherited

◆ PopLocalMinima()

bool ClipperLib::ClipperBase::PopLocalMinima ( cInt  Y,
const LocalMinimum *&  locMin 
)
protectedinherited

◆ PopScanbeam()

bool ClipperLib::ClipperBase::PopScanbeam ( cInt Y)
protectedinherited

◆ PreserveCollinear() [1/2]

bool ClipperLib::ClipperBase::PreserveCollinear ( )
inlineinherited

◆ PreserveCollinear() [2/2]

void ClipperLib::ClipperBase::PreserveCollinear ( bool  value)
inlineinherited

◆ ProcessBound()

TEdge * ClipperLib::ClipperBase::ProcessBound ( TEdge *  E,
bool  IsClockwise 
)
protectedinherited

◆ Reset()

virtual void ClipperLib::ClipperBase::Reset ( )
protectedvirtualinherited

◆ ReverseSolution() [1/2]

bool ClipperLib::Clipper::ReverseSolution ( )
inline

◆ ReverseSolution() [2/2]

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

◆ StrictlySimple() [1/2]

bool ClipperLib::Clipper::StrictlySimple ( )
inline

◆ StrictlySimple() [2/2]

void ClipperLib::Clipper::StrictlySimple ( bool  value)
inline

◆ SwapPositionsInAEL()

void ClipperLib::ClipperBase::SwapPositionsInAEL ( TEdge *  edge1,
TEdge *  edge2 
)
protectedinherited

◆ UpdateEdgeIntoAEL()

void ClipperLib::ClipperBase::UpdateEdgeIntoAEL ( TEdge *&  e)
protectedinherited

◆ ZFillFunction()

void ClipperLib::Clipper::ZFillFunction ( ZFillCallback  zFillFunc)

Member Data Documentation

◆ m_ActiveEdges

TEdge* ClipperLib::ClipperBase::m_ActiveEdges
protectedinherited

◆ m_CurrentLM

MinimaList::iterator ClipperLib::ClipperBase::m_CurrentLM
protectedinherited

◆ m_edges

EdgeList ClipperLib::ClipperBase::m_edges
protectedinherited

◆ m_HasOpenPaths

bool ClipperLib::ClipperBase::m_HasOpenPaths
protectedinherited

◆ m_MinimaList

MinimaList ClipperLib::ClipperBase::m_MinimaList
protectedinherited

◆ m_PolyOuts

PolyOutList ClipperLib::ClipperBase::m_PolyOuts
protectedinherited

◆ m_PreserveCollinear

bool ClipperLib::ClipperBase::m_PreserveCollinear
protectedinherited

◆ m_Scanbeam

ScanbeamList ClipperLib::ClipperBase::m_Scanbeam
protectedinherited

◆ m_UseFullRange

bool ClipperLib::ClipperBase::m_UseFullRange
protectedinherited

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