CubicSegment: Avoid iterating double

Change-Id: I7f98247a20228a1087291138394ebc7469ad7b18
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
This commit is contained in:
Jarek Kobus
2023-08-04 13:07:49 +02:00
parent 81d38bb711
commit af731de4df

View File

@@ -247,15 +247,15 @@ QPointF CubicSegment::sample(double t) const
double CubicSegment::minimumDistance(const QPointF &pickPoint, double &tReturnValue) const
{
double actualMinimumDistance = 10000000.;
for (double t = 0.0; t <= 1.0; t += 0.1) {
QPointF samplePoint = sample(t);
QPointF distanceVector = pickPoint - samplePoint;
const int tMax = 10;
for (int t = 0; t <= tMax; ++t) {
const QPointF samplePoint = sample(double(t) / tMax);
const QPointF distanceVector = pickPoint - samplePoint;
if (distanceVector.manhattanLength() < actualMinimumDistance) {
actualMinimumDistance = distanceVector.manhattanLength();
tReturnValue = t;
}
}
return actualMinimumDistance;
}