RPolylineProxy
Class in Math Module
Header: #include <src/core/math/RPolylineProxy.h>
Description
Section titled “Description”Proxy for advanced polyline functionality.
May be implemented by a plugin.
Public Functions
Section titled “Public Functions”| virtual | ~RPolylineProxy() |
| virtual bool | contains(const RPolyline &polyline, const RVector &point, bool borderIsInside, double tolerance)=0 = 0 |
| virtual double | getArea(const RPolyline &polyline, double segmentLength)=0 = 0 |
| virtual double | getBaseAngle(const RPolyline &polyline)=0 = 0 |
| virtual double | getHeight(const RPolyline &polyline)=0 = 0 |
| virtual QList< QPair< RPolyline, RPolyline > > | getLeftRightOutline(const RPolyline &polyline)=0 = 0 |
| virtual RVector | getPointInside(const RPolyline &polyline)=0 = 0 |
| virtual RPolyline | getPolygon(const RPolyline &polyline, double segmentLength)=0 = 0 |
| virtual RPolyline | getPolygonHull(const RPolyline &polyline, double angle, double tolerance, bool inner=false)=0 = 0 |
| virtual int | getSegmentAtDist(const RPolyline &polyline, double dist)=0 = 0 |
| virtual RS::Ending | getTrimEnd(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint)=0 = 0 |
| virtual double | getWidth(const RPolyline &polyline)=0 = 0 |
| virtual RVector | insertVertexAtDistance(RPolyline &polyline, double dist)=0 = 0 |
| virtual bool | insertVerticesAtSelfIntersections(RPolyline &polyline)=0 = 0 |
| virtual QList< RPolyline > | morph(const RPolyline &polyline, const RPolyline &target, int steps, RS::Easing easing=RS::Linear, bool zLinear=true, double customFactor=RNANDOUBLE)=0 = 0 |
| virtual bool | relocateStartPoint(RPolyline &polyline, const RVector &p)=0 = 0 |
| virtual bool | relocateStartPoint(RPolyline &polyline, double dist)=0 = 0 |
| virtual QList< RPolyline > | renderThickPolyline(const RPolyline &polyline)=0 = 0 |
| virtual RPolyline | roundAllCorners(const RPolyline &polyline, double radius, bool inverted=false)=0 = 0 |
| virtual bool | setHeight(RPolyline &polyline, double v)=0 = 0 |
| virtual bool | setWidth(RPolyline &polyline, double v)=0 = 0 |
| virtual bool | simplify(RPolyline &polyline, double tolerance)=0 = 0 |
| virtual QList< RPolyline > | splitAtDiscontinuities(const RPolyline &polyline, double tolerance)=0 = 0 |
| virtual QList< RPolyline > | splitAtSegmentTypeChange(const RPolyline &polyline)=0 = 0 |
| virtual bool | trimEndPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0 |
| virtual bool | trimEndPoint(RPolyline &polyline, double trimDist)=0 = 0 |
| virtual bool | trimStartPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0 |
| virtual bool | trimStartPoint(RPolyline &polyline, double trimDist)=0 = 0 |
| virtual QList< RVector > | verifyTangency(const RPolyline &polyline, double toleranceMin=RS::AngleTolerance, double toleranceMax=M_PI_4)=0 = 0 |
Member Documentation
Section titled “Member Documentation”~RPolylineProxy
Section titled “~RPolylineProxy”virtual RPolylineProxy::~RPolylineProxy()virtual inline
contains
Section titled “contains”virtual bool RPolylineProxy::contains(const RPolyline &polyline, const RVector &point, bool borderIsInside, double tolerance)=0 = 0pure virtual
getArea
Section titled “getArea”virtual double RPolylineProxy::getArea(const RPolyline &polyline, double segmentLength)=0 = 0pure virtual
getBaseAngle
Section titled “getBaseAngle”virtual double RPolylineProxy::getBaseAngle(const RPolyline &polyline)=0 = 0pure virtual
getHeight
Section titled “getHeight”virtual double RPolylineProxy::getHeight(const RPolyline &polyline)=0 = 0pure virtual
getLeftRightOutline
Section titled “getLeftRightOutline”virtual QList< QPair< RPolyline, RPolyline > > RPolylineProxy::getLeftRightOutline(const RPolyline &polyline)=0 = 0pure virtual
getPointInside
Section titled “getPointInside”virtual RVector RPolylineProxy::getPointInside(const RPolyline &polyline)=0 = 0pure virtual
getPolygon
Section titled “getPolygon”virtual RPolyline RPolylineProxy::getPolygon(const RPolyline &polyline, double segmentLength)=0 = 0pure virtual
getPolygonHull
Section titled “getPolygonHull”virtual RPolyline RPolylineProxy::getPolygonHull(const RPolyline &polyline, double angle, double tolerance, bool inner=false)=0 = 0pure virtual
getSegmentAtDist
Section titled “getSegmentAtDist”virtual int RPolylineProxy::getSegmentAtDist(const RPolyline &polyline, double dist)=0 = 0pure virtual
getTrimEnd
Section titled “getTrimEnd”virtual RS::Ending RPolylineProxy::getTrimEnd(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint)=0 = 0pure virtual
getWidth
Section titled “getWidth”virtual double RPolylineProxy::getWidth(const RPolyline &polyline)=0 = 0pure virtual
insertVertexAtDistance
Section titled “insertVertexAtDistance”virtual RVector RPolylineProxy::insertVertexAtDistance(RPolyline &polyline, double dist)=0 = 0pure virtual
insertVerticesAtSelfIntersections
Section titled “insertVerticesAtSelfIntersections”virtual bool RPolylineProxy::insertVerticesAtSelfIntersections(RPolyline &polyline)=0 = 0pure virtual
virtual QList< RPolyline > RPolylineProxy::morph(const RPolyline &polyline, const RPolyline &target, int steps, RS::Easing easing=RS::Linear, bool zLinear=true, double customFactor=RNANDOUBLE)=0 = 0pure virtual
relocateStartPoint
Section titled “relocateStartPoint”virtual bool RPolylineProxy::relocateStartPoint(RPolyline &polyline, const RVector &p)=0 = 0pure virtual
relocateStartPoint
Section titled “relocateStartPoint”virtual bool RPolylineProxy::relocateStartPoint(RPolyline &polyline, double dist)=0 = 0pure virtual
renderThickPolyline
Section titled “renderThickPolyline”virtual QList< RPolyline > RPolylineProxy::renderThickPolyline(const RPolyline &polyline)=0 = 0pure virtual
roundAllCorners
Section titled “roundAllCorners”virtual RPolyline RPolylineProxy::roundAllCorners(const RPolyline &polyline, double radius, bool inverted=false)=0 = 0pure virtual
setHeight
Section titled “setHeight”virtual bool RPolylineProxy::setHeight(RPolyline &polyline, double v)=0 = 0pure virtual
setWidth
Section titled “setWidth”virtual bool RPolylineProxy::setWidth(RPolyline &polyline, double v)=0 = 0pure virtual
simplify
Section titled “simplify”virtual bool RPolylineProxy::simplify(RPolyline &polyline, double tolerance)=0 = 0pure virtual
splitAtDiscontinuities
Section titled “splitAtDiscontinuities”virtual QList< RPolyline > RPolylineProxy::splitAtDiscontinuities(const RPolyline &polyline, double tolerance)=0 = 0pure virtual
splitAtSegmentTypeChange
Section titled “splitAtSegmentTypeChange”virtual QList< RPolyline > RPolylineProxy::splitAtSegmentTypeChange(const RPolyline &polyline)=0 = 0pure virtual
trimEndPoint
Section titled “trimEndPoint”virtual bool RPolylineProxy::trimEndPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0pure virtual
trimEndPoint
Section titled “trimEndPoint”virtual bool RPolylineProxy::trimEndPoint(RPolyline &polyline, double trimDist)=0 = 0pure virtual
trimStartPoint
Section titled “trimStartPoint”virtual bool RPolylineProxy::trimStartPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0pure virtual
trimStartPoint
Section titled “trimStartPoint”virtual bool RPolylineProxy::trimStartPoint(RPolyline &polyline, double trimDist)=0 = 0pure virtual
verifyTangency
Section titled “verifyTangency”virtual QList< RVector > RPolylineProxy::verifyTangency(const RPolyline &polyline, double toleranceMin=RS::AngleTolerance, double toleranceMax=M_PI_4)=0 = 0pure virtual