LibrePCB Developers Documentation
ClipperHelpers Class Referencefinal

The ClipperHelpers class. More...

#include <clipperhelpers.h>

+ Collaboration diagram for ClipperHelpers:

Public Member Functions

 ClipperHelpers ()=delete
 
 ~ClipperHelpers ()=delete
 

Static Public Member Functions

static bool allPointsInside (const ClipperLib::Path &points, const ClipperLib::Path &path)
 
static bool anyPointsInside (const ClipperLib::Path &points, const ClipperLib::Path &path)
 
static bool anyPointsInside (const ClipperLib::Paths &points, const ClipperLib::Path &path)
 
static void unite (ClipperLib::Paths &paths, ClipperLib::PolyFillType fillType)
 
static void unite (ClipperLib::Paths &subject, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType)
 
static std::unique_ptr< ClipperLib::PolyTree > uniteToTree (const ClipperLib::Paths &paths, ClipperLib::PolyFillType fillType)
 
static std::unique_ptr< ClipperLib::PolyTree > uniteToTree (const ClipperLib::Paths &paths, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType)
 
static void intersect (ClipperLib::Paths &subject, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType)
 
static std::unique_ptr< ClipperLib::PolyTree > intersectToTree (const ClipperLib::Paths &subject, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType, bool closed=true)
 
static std::unique_ptr< ClipperLib::PolyTree > intersectToTree (const QList< ClipperLib::Paths > &paths)
 
static void subtract (ClipperLib::Paths &subject, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType)
 
static std::unique_ptr< ClipperLib::PolyTree > subtractToTree (const ClipperLib::Paths &subject, const ClipperLib::Paths &clip, ClipperLib::PolyFillType subjectFillType, ClipperLib::PolyFillType clipFillType, bool closed=true)
 
static void offset (ClipperLib::Paths &paths, const Length &offset, const PositiveLength &maxArcTolerance, ClipperLib::JoinType joinType=ClipperLib::jtRound)
 
static std::unique_ptr< ClipperLib::PolyTree > offsetToTree (const ClipperLib::Paths &paths, const Length &offset, const PositiveLength &maxArcTolerance)
 
static ClipperLib::Paths treeToPaths (const ClipperLib::PolyTree &tree)
 
static ClipperLib::Paths flattenTree (const ClipperLib::PolyNode &node)
 
static QVector< Pathconvert (const ClipperLib::Paths &paths) noexcept
 
static Path convert (const ClipperLib::Path &path) noexcept
 
static Point convert (const ClipperLib::IntPoint &point) noexcept
 
static ClipperLib::Paths convert (const QVector< Path > &paths, const PositiveLength &maxArcTolerance) noexcept
 
static ClipperLib::Path convert (const Path &path, const PositiveLength &maxArcTolerance) noexcept
 
static ClipperLib::IntPoint convert (const Point &point) noexcept
 

Static Private Member Functions

static ClipperLib::Path convertHolesToCutIns (const ClipperLib::Path &outline, const ClipperLib::Paths &holes)
 
static ClipperLib::Paths prepareHoles (const ClipperLib::Paths &holes) noexcept
 
static ClipperLib::Path rotateCutInHole (const ClipperLib::Path &hole) noexcept
 
static void addCutInToPath (ClipperLib::Path &outline, const ClipperLib::Path &hole)
 
static int insertConnectionPointToPath (ClipperLib::Path &path, const ClipperLib::IntPoint &p)
 
static bool calcIntersectionPos (const ClipperLib::IntPoint &p1, const ClipperLib::IntPoint &p2, const ClipperLib::cInt &x, ClipperLib::cInt &y) noexcept
 

Detailed Description

The ClipperHelpers class.

Constructor & Destructor Documentation

◆ ClipperHelpers()

ClipperHelpers ( )
delete

◆ ~ClipperHelpers()

~ClipperHelpers ( )
delete

Member Function Documentation

◆ allPointsInside()

bool allPointsInside ( const ClipperLib::Path &  points,
const ClipperLib::Path &  path 
)
static
+ Here is the caller graph for this function:

◆ anyPointsInside() [1/2]

bool anyPointsInside ( const ClipperLib::Path &  points,
const ClipperLib::Path &  path 
)
static
+ Here is the caller graph for this function:

◆ anyPointsInside() [2/2]

bool anyPointsInside ( const ClipperLib::Paths &  points,
const ClipperLib::Path &  path 
)
static

◆ unite() [1/2]

void unite ( ClipperLib::Paths &  paths,
ClipperLib::PolyFillType  fillType 
)
static
+ Here is the caller graph for this function:

◆ unite() [2/2]

void unite ( ClipperLib::Paths &  subject,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType 
)
static

◆ uniteToTree() [1/2]

std::unique_ptr< ClipperLib::PolyTree > uniteToTree ( const ClipperLib::Paths &  paths,
ClipperLib::PolyFillType  fillType 
)
static
+ Here is the caller graph for this function:

◆ uniteToTree() [2/2]

std::unique_ptr< ClipperLib::PolyTree > uniteToTree ( const ClipperLib::Paths &  paths,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType 
)
static

◆ intersect()

void intersect ( ClipperLib::Paths &  subject,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType 
)
static
+ Here is the caller graph for this function:

◆ intersectToTree() [1/2]

std::unique_ptr< ClipperLib::PolyTree > intersectToTree ( const ClipperLib::Paths &  subject,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType,
bool  closed = true 
)
static
+ Here is the caller graph for this function:

◆ intersectToTree() [2/2]

std::unique_ptr< ClipperLib::PolyTree > intersectToTree ( const QList< ClipperLib::Paths > &  paths)
static

◆ subtract()

void subtract ( ClipperLib::Paths &  subject,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType 
)
static
+ Here is the caller graph for this function:

◆ subtractToTree()

std::unique_ptr< ClipperLib::PolyTree > subtractToTree ( const ClipperLib::Paths &  subject,
const ClipperLib::Paths &  clip,
ClipperLib::PolyFillType  subjectFillType,
ClipperLib::PolyFillType  clipFillType,
bool  closed = true 
)
static
+ Here is the caller graph for this function:

◆ offset()

void offset ( ClipperLib::Paths &  paths,
const Length offset,
const PositiveLength maxArcTolerance,
ClipperLib::JoinType  joinType = ClipperLib::jtRound 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ offsetToTree()

std::unique_ptr< ClipperLib::PolyTree > offsetToTree ( const ClipperLib::Paths &  paths,
const Length offset,
const PositiveLength maxArcTolerance 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ treeToPaths()

ClipperLib::Paths treeToPaths ( const ClipperLib::PolyTree &  tree)
static
+ Here is the caller graph for this function:

◆ flattenTree()

ClipperLib::Paths flattenTree ( const ClipperLib::PolyNode &  node)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ convert() [1/6]

QVector< Path > convert ( const ClipperLib::Paths &  paths)
staticnoexcept
+ Here is the caller graph for this function:

◆ convert() [2/6]

Path convert ( const ClipperLib::Path &  path)
staticnoexcept
+ Here is the call graph for this function:

◆ convert() [3/6]

Point convert ( const ClipperLib::IntPoint &  point)
staticnoexcept

◆ convert() [4/6]

ClipperLib::Paths convert ( const QVector< Path > &  paths,
const PositiveLength maxArcTolerance 
)
staticnoexcept

◆ convert() [5/6]

ClipperLib::Path convert ( const Path path,
const PositiveLength maxArcTolerance 
)
staticnoexcept
+ Here is the call graph for this function:

◆ convert() [6/6]

ClipperLib::IntPoint convert ( const Point point)
staticnoexcept

◆ convertHolesToCutIns()

ClipperLib::Path convertHolesToCutIns ( const ClipperLib::Path &  outline,
const ClipperLib::Paths &  holes 
)
staticprivate
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ prepareHoles()

ClipperLib::Paths prepareHoles ( const ClipperLib::Paths &  holes)
staticprivatenoexcept
+ Here is the caller graph for this function:

◆ rotateCutInHole()

ClipperLib::Path rotateCutInHole ( const ClipperLib::Path &  hole)
staticprivatenoexcept

◆ addCutInToPath()

void addCutInToPath ( ClipperLib::Path &  outline,
const ClipperLib::Path &  hole 
)
staticprivate
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertConnectionPointToPath()

int insertConnectionPointToPath ( ClipperLib::Path &  path,
const ClipperLib::IntPoint &  p 
)
staticprivate
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ calcIntersectionPos()

bool calcIntersectionPos ( const ClipperLib::IntPoint &  p1,
const ClipperLib::IntPoint &  p2,
const ClipperLib::cInt &  x,
ClipperLib::cInt &  y 
)
staticprivatenoexcept
+ Here is the caller graph for this function:

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