diff options
Diffstat (limited to 'basegfx/source/curve/b2dcubicbezier.cxx')
-rw-r--r-- | basegfx/source/curve/b2dcubicbezier.cxx | 42 |
1 files changed, 15 insertions, 27 deletions
diff --git a/basegfx/source/curve/b2dcubicbezier.cxx b/basegfx/source/curve/b2dcubicbezier.cxx index a04c17568b38..3f5d87aa79f6 100644 --- a/basegfx/source/curve/b2dcubicbezier.cxx +++ b/basegfx/source/curve/b2dcubicbezier.cxx @@ -337,8 +337,6 @@ namespace basegfx { } - B2DCubicBezier::~B2DCubicBezier() = default; - // assignment operator B2DCubicBezier& B2DCubicBezier::operator=(const B2DCubicBezier&) = default; @@ -353,16 +351,6 @@ namespace basegfx ); } - bool B2DCubicBezier::operator!=(const B2DCubicBezier& rBezier) const - { - return ( - maStartPoint != rBezier.maStartPoint - || maEndPoint != rBezier.maEndPoint - || maControlPointA != rBezier.maControlPointA - || maControlPointB != rBezier.maControlPointB - ); - } - bool B2DCubicBezier::equal(const B2DCubicBezier& rBezier) const { return ( @@ -543,7 +531,7 @@ namespace basegfx B2DVector B2DCubicBezier::getTangent(double t) const { - if(fTools::lessOrEqual(t, 0.0)) + if(t <= 0.0) { // tangent in start point B2DVector aTangent(getControlPointA() - getStartPoint()); @@ -612,12 +600,12 @@ namespace basegfx } // adaptive subdivide by distance - void B2DCubicBezier::adaptiveSubdivideByDistance(B2DPolygon& rTarget, double fDistanceBound) const + void B2DCubicBezier::adaptiveSubdivideByDistance(B2DPolygon& rTarget, double fDistanceBound, int nRecurseLimit) const { if(isBezier()) { ImpSubDivDistance(maStartPoint, maControlPointA, maControlPointB, maEndPoint, rTarget, - fDistanceBound * fDistanceBound, std::numeric_limits<double>::max(), 30); + fDistanceBound * fDistanceBound, std::numeric_limits<double>::max(), nRecurseLimit); } else { @@ -1023,33 +1011,33 @@ namespace basegfx if(maControlPointA == maStartPoint) { maControlPointA = maStartPoint = basegfx::B2DPoint( - basegfx::fround(maStartPoint.getX()), - basegfx::fround(maStartPoint.getY())); + std::round(maStartPoint.getX()), + std::round(maStartPoint.getY())); } else { maStartPoint = basegfx::B2DPoint( - basegfx::fround(maStartPoint.getX()), - basegfx::fround(maStartPoint.getY())); + std::round(maStartPoint.getX()), + std::round(maStartPoint.getY())); maControlPointA = basegfx::B2DPoint( - basegfx::fround(maControlPointA.getX()), - basegfx::fround(maControlPointA.getY())); + std::round(maControlPointA.getX()), + std::round(maControlPointA.getY())); } if(maControlPointB == maEndPoint) { maControlPointB = maEndPoint = basegfx::B2DPoint( - basegfx::fround(maEndPoint.getX()), - basegfx::fround(maEndPoint.getY())); + std::round(maEndPoint.getX()), + std::round(maEndPoint.getY())); } else { maEndPoint = basegfx::B2DPoint( - basegfx::fround(maEndPoint.getX()), - basegfx::fround(maEndPoint.getY())); + std::round(maEndPoint.getX()), + std::round(maEndPoint.getY())); maControlPointB = basegfx::B2DPoint( - basegfx::fround(maControlPointB.getX()), - basegfx::fround(maControlPointB.getY())); + std::round(maControlPointB.getX()), + std::round(maControlPointB.getY())); } } } // end of namespace basegfx |