Public Member Functions |
| void | appendControlPoint (const RVector &point) |
| | Disabled for splines (bad performance).
|
| void | appendFitPoint (const RVector &point) |
| | Appends a fit point.
|
| virtual RSpline * | clone () const |
| int | countControlPoints () const |
| int | countFitPoints () const |
| virtual bool | flipHorizontal () |
| virtual bool | flipVertical () |
| QList< RSpline > | getBezierSegments () const |
| virtual RBox | getBoundingBox () const |
| virtual QList< RVector > | getCenterPoints () const |
| QList< RVector > | getControlPoints () const |
| QList< RVector > | getControlPointsWrapped () const |
| int | getDegree () const |
| virtual double | getDirection1 () const |
| virtual double | getDirection2 () const |
| virtual RVector | getEndPoint () const |
| virtual QList< RVector > | getEndPoints () const |
virtual QList< QSharedPointer
< RShape > > | getExploded () const |
| QList< RVector > | getFitPoints () const |
| QList< double > | getKnotVector () const |
| virtual double | getLength () const |
| RVector | getMiddlePoint () const |
| virtual QList< RVector > | getMiddlePoints () const |
| int | getOrder () const |
| RVector | getPointAt (double t) const |
| virtual QList< RVector > | getPointsWithDistanceToEnd (double distance, RS::From from=RS::FromAny) const |
| virtual RVector | getStartPoint () const |
| RVector | getTangentAtEnd () const |
| RVector | getTangentAtStart () const |
| double | getTDelta () const |
| double | getTMax () const |
| double | getTMin () const |
| virtual RS::Ending | getTrimEnd (const RVector &coord, const RVector &trimPoint) |
| virtual RVector | getVectorTo (const RVector &point, bool limited=true) const |
| QList< double > | getWeights () const |
| bool | hasFitPoints () const |
| bool | isClosed () const |
| virtual bool | isInterpolated () const |
| | Reimplement and return true if this shape relies on interpolation for geometrical operations such as finding intersection points.
|
| bool | isPeriodic () const |
| bool | isValid () const |
| virtual bool | mirror (const RLine &axis) |
| virtual bool | move (const RVector &offset) |
| void | removeLastControlPoint (bool upd=true) |
| | Removes the last control point.
|
| void | removeLastFitPoint (bool upd=true) |
| | Removes the last fit point.
|
| virtual bool | reverse () |
| virtual bool | rotate (double rotation, const RVector ¢er=RDEFAULT_RVECTOR) |
| | RSpline () |
| | Creates a spline object without controlPoints.
|
| | RSpline (const QList< RVector > &controlPoints, int degree) |
| | Creates a spline object with the given control points and degree.
|
| virtual bool | scale (const RVector &scaleFactors, const RVector ¢er=RDEFAULT_RVECTOR) |
| void | setControlPoints (const QList< RVector > &points) |
| | Sets the control points of this spline.
|
| void | setDegree (int d) |
| | Sets the degree of this spline (2 or 3 for control point defined spline, 3 for fit point defined spline).
|
| void | setEndPoint (const RVector &v) |
| void | setFitPoints (const QList< RVector > &points) |
| | Sets the fit points.
|
| void | setKnotVector (const QList< double > &knots) |
| | Sets the knot vector manually.
|
| void | setPeriodic (bool on) |
| void | setStartPoint (const RVector &v) |
| void | setTangentAtEnd (const RVector &t) |
| | Sets the end tangent.
|
| void | setTangentAtStart (const RVector &t) |
| | Sets the start tangent.
|
| void | setTangents (const RVector &start, const RVector &end) |
| | Sets the start and end tangents.
|
| virtual void | to2D () |
| | Flattens this shape to the X/Y plane.
|
| virtual void | trimEndPoint (const RVector &p) |
| virtual void | trimStartPoint (const RVector &p) |
| void | unsetTangentAtEnd () |
| | Clears the valud of the end tangent.
|
| void | unsetTangentAtStart () |
| | Clears the valud of the start tangent.
|
| void | unsetTangents () |
| | Clears the valud of the start and end tangents.
|
| void | updateTangentsPeriodic () |
| | Updates the tangents at the start and end to make the spline periodic.
|
| virtual | ~RSpline () |
| virtual RVector | getClosestPointOnShape (const RVector &p, bool limited=true) const |
| virtual double | getDistanceTo (const RVector &point, bool limited=true) const |
| QList< RVector > | getIntersectionPoints (const RShape &other, bool limited=true, bool same=false) const |
| virtual RVector | getPointAtPercent (double p) const |
| virtual RVector | getVectorFromEndpointTo (const RVector &point) const |
| virtual bool | intersectsWith (const RShape &other, bool limited=true) const |
| virtual bool | isOnShape (const RVector &point, bool limited=true, double tolerance=RDEFAULT_TOLERANCE_1E_MIN4) const |
| | RShape () |
| virtual bool | scale (double scaleFactor, const RVector ¢er=RVector()) |
| virtual bool | stretch (const RBox &area, const RVector &offset) |
| virtual bool | stretch (const RPolyline &area, const RVector &offset) |
| virtual | ~RShape () |
| virtual | ~RExplodable () |
| virtual | ~RDirected () |
Additional Inherited Members |
| static QList< RVector > | getIntersectionPoints (const RShape &shape1, const RShape &shape2, bool limited=true, bool same=false) |
| static QList< RVector > | getIntersectionPointsAA (const RArc &arc1, const RArc &arc2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsAC (const RArc &arc1, const RCircle &circle2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsAE (const RArc &arc1, const REllipse &ellipse2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsAX (const RArc &arc1, const RExplodable &explodable2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsCC (const RCircle &circle1, const RCircle &circle2) |
| static QList< RVector > | getIntersectionPointsCE (const RCircle &circle1, const REllipse &ellipse2) |
| static QList< RVector > | getIntersectionPointsCX (const RCircle &circle1, const RExplodable &explodable2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsEE (const REllipse &ellipse1, const REllipse &ellipse2) |
| static QList< RVector > | getIntersectionPointsEX (const REllipse &ellipse1, const RExplodable &explodable2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsLA (const RLine &line1, const RArc &arc2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsLC (const RLine &line1, const RCircle &circle2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsLE (const RLine &line1, const REllipse &ellipse2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsLL (const RLine &line1, const RLine &line2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsLX (const RLine &line1, const RExplodable &explodable2, bool limited=true) |
| static QList< RVector > | getIntersectionPointsXX (const RExplodable &explodable1, const RExplodable &explodable2, bool limited=true, bool same=false) |
| static bool | order (QList< QList< QSharedPointer< RShape > > > &boundary) |
| | Orders the given list of loops into a list of closed loops in which all shapes are connected end to start point.
|
Low-level mathematical representation of a 2nd or 3rd degree spline.
The spline may be defined by its control points or by its fit points but not both.
- Scriptable:
- This class is wrapped for script environments.
- Shared Pointer Support:
- Script wrappers of this class support wrapping in QSharedPointer.
- Copyable:
- Script wrappers of this class should pass objects by reference.