Skip to content

RPolylineProxy

Class in Math Module
Header: #include <src/core/math/RPolylineProxy.h>

Proxy for advanced polyline functionality.

May be implemented by a plugin.

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

virtual RPolylineProxy::~RPolylineProxy()

virtual inline

virtual bool RPolylineProxy::contains(const RPolyline &polyline, const RVector &point, bool borderIsInside, double tolerance)=0 = 0

pure virtual

virtual double RPolylineProxy::getArea(const RPolyline &polyline, double segmentLength)=0 = 0

pure virtual

virtual double RPolylineProxy::getBaseAngle(const RPolyline &polyline)=0 = 0

pure virtual

virtual double RPolylineProxy::getHeight(const RPolyline &polyline)=0 = 0

pure virtual

virtual QList< QPair< RPolyline, RPolyline > > RPolylineProxy::getLeftRightOutline(const RPolyline &polyline)=0 = 0

pure virtual

virtual RVector RPolylineProxy::getPointInside(const RPolyline &polyline)=0 = 0

pure virtual

virtual RPolyline RPolylineProxy::getPolygon(const RPolyline &polyline, double segmentLength)=0 = 0

pure virtual

virtual RPolyline RPolylineProxy::getPolygonHull(const RPolyline &polyline, double angle, double tolerance, bool inner=false)=0 = 0

pure virtual

virtual int RPolylineProxy::getSegmentAtDist(const RPolyline &polyline, double dist)=0 = 0

pure virtual

virtual RS::Ending RPolylineProxy::getTrimEnd(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint)=0 = 0

pure virtual

virtual double RPolylineProxy::getWidth(const RPolyline &polyline)=0 = 0

pure virtual

virtual RVector RPolylineProxy::insertVertexAtDistance(RPolyline &polyline, double dist)=0 = 0

pure virtual

virtual bool RPolylineProxy::insertVerticesAtSelfIntersections(RPolyline &polyline)=0 = 0

pure 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 = 0

pure virtual

virtual bool RPolylineProxy::relocateStartPoint(RPolyline &polyline, const RVector &p)=0 = 0

pure virtual

virtual bool RPolylineProxy::relocateStartPoint(RPolyline &polyline, double dist)=0 = 0

pure virtual

virtual QList< RPolyline > RPolylineProxy::renderThickPolyline(const RPolyline &polyline)=0 = 0

pure virtual

virtual RPolyline RPolylineProxy::roundAllCorners(const RPolyline &polyline, double radius, bool inverted=false)=0 = 0

pure virtual

virtual bool RPolylineProxy::setHeight(RPolyline &polyline, double v)=0 = 0

pure virtual

virtual bool RPolylineProxy::setWidth(RPolyline &polyline, double v)=0 = 0

pure virtual

virtual bool RPolylineProxy::simplify(RPolyline &polyline, double tolerance)=0 = 0

pure virtual

virtual QList< RPolyline > RPolylineProxy::splitAtDiscontinuities(const RPolyline &polyline, double tolerance)=0 = 0

pure virtual

virtual QList< RPolyline > RPolylineProxy::splitAtSegmentTypeChange(const RPolyline &polyline)=0 = 0

pure virtual

virtual bool RPolylineProxy::trimEndPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0

pure virtual

virtual bool RPolylineProxy::trimEndPoint(RPolyline &polyline, double trimDist)=0 = 0

pure virtual

virtual bool RPolylineProxy::trimStartPoint(RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0 = 0

pure virtual

virtual bool RPolylineProxy::trimStartPoint(RPolyline &polyline, double trimDist)=0 = 0

pure virtual

virtual QList< RVector > RPolylineProxy::verifyTangency(const RPolyline &polyline, double toleranceMin=RS::AngleTolerance, double toleranceMax=M_PI_4)=0 = 0

pure virtual