QCAD
Open Source 2D CAD
RPolylineProxy Class Referenceabstract

Proxy for advanced polyline functionality. More...

#include <RPolylineProxy.h>

Public Member Functions

virtual double getArea (const RPolyline &polyline, double segmentLength)=0
 
virtual double getBaseAngle (const RPolyline &polyline)=0
 
virtual double getHeight (const RPolyline &polyline)=0
 
virtual RVector getPointInside (const RPolyline &polyline)=0
 
virtual RPolyline getPolygonHull (const RPolyline &polyline, double angle, double tolerance, bool inner=false)=0
 
virtual int getSegmentAtDist (const RPolyline &polyline, double dist)=0
 
virtual RS::Ending getTrimEnd (RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint)=0
 
virtual double getWidth (const RPolyline &polyline)=0
 
virtual RVector insertVertexAtDistance (RPolyline &polyline, double dist)=0
 
virtual QList< RPolylinemorph (const RPolyline &polyline, const RPolyline &target, int steps, RS::Easing easing=RS::Linear, bool zLinear=true, double customFactor=RNANDOUBLE)=0
 
virtual bool relocateStartPoint (RPolyline &polyline, const RVector &p)=0
 
virtual bool relocateStartPoint (RPolyline &polyline, double dist)=0
 
virtual QList< RPolylinerenderThickPolyline (const RPolyline &polyline)=0
 
virtual RPolyline roundAllCorners (const RPolyline &polyline, double radius)=0
 
virtual bool setHeight (RPolyline &polyline, double v)=0
 
virtual bool setWidth (RPolyline &polyline, double v)=0
 
virtual bool simplify (RPolyline &polyline, double tolerance)=0
 
virtual QList< RPolylinesplitAtDiscontinuities (const RPolyline &polyline, double tolerance)=0
 
virtual QList< RPolylinesplitAtSegmentTypeChange (const RPolyline &polyline)=0
 
virtual bool trimEndPoint (RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0
 
virtual bool trimEndPoint (RPolyline &polyline, double trimDist)=0
 
virtual bool trimStartPoint (RPolyline &polyline, const RVector &trimPoint, const RVector &clickPoint, bool extend=false)=0
 
virtual bool trimStartPoint (RPolyline &polyline, double trimDist)=0
 
virtual QList< RVectorverifyTangency (const RPolyline &polyline, double toleranceMin=RS::AngleTolerance, double toleranceMax=M_PI_4)=0
 
virtual ~RPolylineProxy ()
 

Detailed Description

Proxy for advanced polyline functionality.

May be implemented by a plugin.

Constructor & Destructor Documentation

◆ ~RPolylineProxy()

virtual RPolylineProxy::~RPolylineProxy ( )
inlinevirtual

Member Function Documentation

◆ getArea()

virtual double RPolylineProxy::getArea ( const RPolyline polyline,
double  segmentLength 
)
pure virtual

◆ getBaseAngle()

virtual double RPolylineProxy::getBaseAngle ( const RPolyline polyline)
pure virtual

◆ getHeight()

virtual double RPolylineProxy::getHeight ( const RPolyline polyline)
pure virtual

◆ getPointInside()

virtual RVector RPolylineProxy::getPointInside ( const RPolyline polyline)
pure virtual

◆ getPolygonHull()

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

◆ getSegmentAtDist()

virtual int RPolylineProxy::getSegmentAtDist ( const RPolyline polyline,
double  dist 
)
pure virtual

◆ getTrimEnd()

virtual RS::Ending RPolylineProxy::getTrimEnd ( RPolyline polyline,
const RVector trimPoint,
const RVector clickPoint 
)
pure virtual

◆ getWidth()

virtual double RPolylineProxy::getWidth ( const RPolyline polyline)
pure virtual

◆ insertVertexAtDistance()

virtual RVector RPolylineProxy::insertVertexAtDistance ( RPolyline polyline,
double  dist 
)
pure virtual

◆ morph()

virtual QList<RPolyline> RPolylineProxy::morph ( const RPolyline polyline,
const RPolyline target,
int  steps,
RS::Easing  easing = RS::Linear,
bool  zLinear = true,
double  customFactor = RNANDOUBLE 
)
pure virtual

◆ relocateStartPoint() [1/2]

virtual bool RPolylineProxy::relocateStartPoint ( RPolyline polyline,
const RVector p 
)
pure virtual

◆ relocateStartPoint() [2/2]

virtual bool RPolylineProxy::relocateStartPoint ( RPolyline polyline,
double  dist 
)
pure virtual

◆ renderThickPolyline()

virtual QList<RPolyline> RPolylineProxy::renderThickPolyline ( const RPolyline polyline)
pure virtual

◆ roundAllCorners()

virtual RPolyline RPolylineProxy::roundAllCorners ( const RPolyline polyline,
double  radius 
)
pure virtual

◆ setHeight()

virtual bool RPolylineProxy::setHeight ( RPolyline polyline,
double  v 
)
pure virtual

◆ setWidth()

virtual bool RPolylineProxy::setWidth ( RPolyline polyline,
double  v 
)
pure virtual

◆ simplify()

virtual bool RPolylineProxy::simplify ( RPolyline polyline,
double  tolerance 
)
pure virtual

◆ splitAtDiscontinuities()

virtual QList<RPolyline> RPolylineProxy::splitAtDiscontinuities ( const RPolyline polyline,
double  tolerance 
)
pure virtual

◆ splitAtSegmentTypeChange()

virtual QList<RPolyline> RPolylineProxy::splitAtSegmentTypeChange ( const RPolyline polyline)
pure virtual

◆ trimEndPoint() [1/2]

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

◆ trimEndPoint() [2/2]

virtual bool RPolylineProxy::trimEndPoint ( RPolyline polyline,
double  trimDist 
)
pure virtual

◆ trimStartPoint() [1/2]

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

◆ trimStartPoint() [2/2]

virtual bool RPolylineProxy::trimStartPoint ( RPolyline polyline,
double  trimDist 
)
pure virtual

◆ verifyTangency()

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

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