Classes | |
| class | Adaptive2d |
| struct | AdaptiveOutput |
| class | BoundBox |
| class | ClearedArea |
| class | EngagePoint |
| class | Interpolation |
| class | PerfCounter |
Typedefs | |
| typedef std::vector< DPoint > | DPath |
| typedef std::vector< DPath > | DPaths |
| typedef std::pair< double, double > | DPoint |
| typedef std::pair< int, DPath > | TPath |
| typedef std::vector< TPath > | TPaths |
Enumerations | |
| enum | MotionType { mtCutting = 0 , mtLinkClear = 1 , mtLinkNotClear = 2 , mtLinkClearAtPrevPass = 3 } |
| enum | OperationType { otClearingInside = 0 , otClearingOutside = 1 , otProfilingInside = 2 , otProfilingOutside = 3 } |
Functions | |
| double | Angle3Points (const DoublePoint &p1, const DoublePoint &p2, const DoublePoint &p3) |
| void | appendDirectChildPaths (Paths &outPaths, const Path &path, const Paths &paths) |
| void | AverageDirection (const vector< DoublePoint > &unityVectors, DoublePoint &output) |
| double | averageDV (const vector< double > &vec) |
| bool | Circle2CircleIntersect (const IntPoint &c1, const IntPoint &c2, double radius, pair< DoublePoint, DoublePoint > &intersections) |
| void | CleanPath (const Path &inp, Path &outpt, double tolerance) |
| IntPoint | Compute2DPolygonCentroid (const Path &vertices) |
| void | ConnectPaths (Paths input, Paths &output) |
| void | DeduplicatePaths (const Paths &inputs, Paths &outputs) |
| DoublePoint | DirectionV (const IntPoint &pt1, const IntPoint &pt2) |
| double | DistancePointToLineSegSquared (const IntPoint &p1, const IntPoint &p2, const IntPoint &pt, IntPoint &closestPoint, double &ptParameter, bool clamp=true) |
| double | DistancePointToPathsSqrd (const Paths &paths, const IntPoint &pt, IntPoint &closestPointOnPath, size_t &clpPathIndex, size_t &clpSegmentIndex, double &clpParameter) |
| double | DistanceSqrd (const IntPoint &pt1, const IntPoint &pt2) |
| DoublePoint | GetPathDirectionV (const Path &pth, size_t pointIndex) |
| int | getPathNestingLevel (const Path &path, const Paths &paths) |
| bool | HasAnyPath (const Paths &paths) |
| bool | IntersectionPoint (const IntPoint &s1p1, const IntPoint &s1p2, const IntPoint &s2p1, const IntPoint &s2p2, IntPoint &intersection) |
| bool | IntersectionPoint (const Paths &paths, const IntPoint &p1, const IntPoint &p2, IntPoint &intersection) |
| bool | IsPointWithinCutRegion (const Paths &toolBoundPaths, const IntPoint &point) |
| bool | Line2CircleIntersect (const IntPoint &c, double radius, const IntPoint &p1, const IntPoint &p2, vector< DoublePoint > &result, bool clamp=true) |
| void | NormalizeV (DoublePoint &pt) |
| std::ostream & | operator<< (std::ostream &s, const BoundBox &p) |
| double | PathLength (const Path &path) |
| double | PointSideOfLine (const IntPoint &p1, const IntPoint &p2, const IntPoint &pt) |
| bool | PopPathWithClosestPoint (Paths &paths, IntPoint p1, Path &result) |
| DoublePoint | rotate (const DoublePoint &in, double rad) |
| void | ScaleDownPaths (Paths &paths, long scaleFactor) |
| void | ScaleUpPaths (Paths &paths, long scaleFactor) |
| bool | SetSegmentLength (const IntPoint &pt1, IntPoint &pt2, double new_length) |
| void | SmoothPaths (Paths &paths, double stepSize, long pointCount, long iterations) |
Variables | |
| PerfCounter | Perf_AppendToolPath ("AppendToolPath") |
| PerfCounter | Perf_CalcCutAreaCirc ("CalcCutArea") |
| PerfCounter | Perf_CalcCutAreaClip ("CalcCutAreaClip") |
| PerfCounter | Perf_DistanceToBoundary ("DistanceToBoundary") |
| PerfCounter | Perf_ExpandCleared ("ExpandCleared") |
| PerfCounter | Perf_IsAllowedToCutTrough ("IsAllowedToCutTrough") |
| PerfCounter | Perf_IsClearPath ("IsClearPath") |
| PerfCounter | Perf_NextEngagePoint ("NextEngagePoint") |
| PerfCounter | Perf_PointIterations ("PointIterations") |
| PerfCounter | Perf_ProcessPolyNode ("ProcessPolyNode") |
| typedef std::vector<DPoint> AdaptivePath::DPath |
| typedef std::vector<DPath> AdaptivePath::DPaths |
| typedef std::pair<double, double> AdaptivePath::DPoint |
| typedef std::pair<int, DPath> AdaptivePath::TPath |
| typedef std::vector<TPath> AdaptivePath::TPaths |
| double AdaptivePath::Angle3Points | ( | const DoublePoint & | p1, |
| const DoublePoint & | p2, | ||
| const DoublePoint & | p3 | ||
| ) |
References ClipperLib::DoublePoint::X, and ClipperLib::DoublePoint::Y.
| void AdaptivePath::appendDirectChildPaths | ( | Paths & | outPaths, |
| const Path & | path, | ||
| const Paths & | paths | ||
| ) |
References getPathNestingLevel(), and ClipperLib::PointInPolygon().
Referenced by AdaptivePath::Adaptive2d::Execute().
| void AdaptivePath::AverageDirection | ( | const vector< DoublePoint > & | unityVectors, |
| DoublePoint & | output | ||
| ) |
References ClipperLib::DoublePoint::X, and ClipperLib::DoublePoint::Y.
| double AdaptivePath::averageDV | ( | const vector< double > & | vec | ) |
References draftgeoutils.general::vec().
| bool AdaptivePath::Circle2CircleIntersect | ( | const IntPoint & | c1, |
| const IntPoint & | c2, | ||
| double | radius, | ||
| pair< DoublePoint, DoublePoint > & | intersections | ||
| ) |
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
References ClipperLib::CleanPolygon(), DistancePointToPathsSqrd(), DistanceSqrd(), and draftutils.utils::tolerance().
Referenced by AdaptivePath::Adaptive2d::Execute(), and SmoothPaths().
References ClipperLib::DoublePoint::X, and ClipperLib::DoublePoint::Y.
References DistanceSqrd(), and ClipperLib::ReversePath().
Referenced by AdaptivePath::Adaptive2d::Execute().
References DistanceSqrd().
Referenced by AdaptivePath::Adaptive2d::Execute().
| DoublePoint AdaptivePath::DirectionV | ( | const IntPoint & | pt1, |
| const IntPoint & | pt2 | ||
| ) |
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
Referenced by GetPathDirectionV().
| double AdaptivePath::DistancePointToLineSegSquared | ( | const IntPoint & | p1, |
| const IntPoint & | p2, | ||
| const IntPoint & | pt, | ||
| IntPoint & | closestPoint, | ||
| double & | ptParameter, | ||
| bool | clamp = true |
||
| ) |
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
Referenced by DistancePointToPathsSqrd().
| double AdaptivePath::DistancePointToPathsSqrd | ( | const Paths & | paths, |
| const IntPoint & | pt, | ||
| IntPoint & | closestPointOnPath, | ||
| size_t & | clpPathIndex, | ||
| size_t & | clpSegmentIndex, | ||
| double & | clpParameter | ||
| ) |
References DistancePointToLineSegSquared().
Referenced by CleanPath().
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
Referenced by CleanPath(), ConnectPaths(), DeduplicatePaths(), AdaptivePath::EngagePoint::getCurrentDir(), AdaptivePath::EngagePoint::getCurrentPoint(), AdaptivePath::EngagePoint::moveToClosestPoint(), PathLength(), PopPathWithClosestPoint(), and SmoothPaths().
| DoublePoint AdaptivePath::GetPathDirectionV | ( | const Path & | pth, |
| size_t | pointIndex | ||
| ) |
References DirectionV().
References ClipperLib::PointInPolygon().
Referenced by appendDirectChildPaths(), and AdaptivePath::Adaptive2d::Execute().
| bool AdaptivePath::IntersectionPoint | ( | const IntPoint & | s1p1, |
| const IntPoint & | s1p2, | ||
| const IntPoint & | s2p1, | ||
| const IntPoint & | s2p2, | ||
| IntPoint & | intersection | ||
| ) |
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
References ClipperLib::PointInPolygon().
| void AdaptivePath::NormalizeV | ( | DoublePoint & | pt | ) |
References ClipperLib::DoublePoint::X, and ClipperLib::DoublePoint::Y.
| std::ostream & AdaptivePath::operator<< | ( | std::ostream & | s, |
| const BoundBox & | p | ||
| ) |
| double AdaptivePath::PathLength | ( | const Path & | path | ) |
References DistanceSqrd().
| double AdaptivePath::PointSideOfLine | ( | const IntPoint & | p1, |
| const IntPoint & | p2, | ||
| const IntPoint & | pt | ||
| ) |
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
References DraftVecUtils::dist(), and DistanceSqrd().
Referenced by AdaptivePath::EngagePoint::moveToClosestPoint().
| DoublePoint AdaptivePath::rotate | ( | const DoublePoint & | in, |
| double | rad | ||
| ) |
| void AdaptivePath::ScaleDownPaths | ( | Paths & | paths, |
| long | scaleFactor | ||
| ) |
Referenced by SmoothPaths().
| void AdaptivePath::ScaleUpPaths | ( | Paths & | paths, |
| long | scaleFactor | ||
| ) |
Referenced by SmoothPaths().
References ClipperLib::IntPoint::X, and ClipperLib::IntPoint::Y.
| void AdaptivePath::SmoothPaths | ( | Paths & | paths, |
| double | stepSize, | ||
| long | pointCount, | ||
| long | iterations | ||
| ) |
| PerfCounter AdaptivePath::Perf_AppendToolPath("AppendToolPath") | ( | "AppendToolPath" | ) |
| PerfCounter AdaptivePath::Perf_CalcCutAreaCirc("CalcCutArea") | ( | "CalcCutArea" | ) |
| PerfCounter AdaptivePath::Perf_CalcCutAreaClip("CalcCutAreaClip") | ( | "CalcCutAreaClip" | ) |
| PerfCounter AdaptivePath::Perf_DistanceToBoundary("DistanceToBoundary") | ( | "DistanceToBoundary" | ) |
| PerfCounter AdaptivePath::Perf_ExpandCleared("ExpandCleared") | ( | "ExpandCleared" | ) |
Referenced by AdaptivePath::ClearedArea::ExpandCleared().
| PerfCounter AdaptivePath::Perf_IsAllowedToCutTrough("IsAllowedToCutTrough") | ( | "IsAllowedToCutTrough" | ) |
| PerfCounter AdaptivePath::Perf_IsClearPath("IsClearPath") | ( | "IsClearPath" | ) |
| PerfCounter AdaptivePath::Perf_NextEngagePoint("NextEngagePoint") | ( | "NextEngagePoint" | ) |
Referenced by AdaptivePath::EngagePoint::nextEngagePoint().
| PerfCounter AdaptivePath::Perf_PointIterations("PointIterations") | ( | "PointIterations" | ) |
| PerfCounter AdaptivePath::Perf_ProcessPolyNode("ProcessPolyNode") | ( | "ProcessPolyNode" | ) |