From 6fff91c104b443ed27788b62e524e446b45403fe Mon Sep 17 00:00:00 2001 From: epernod Date: Wed, 30 Aug 2023 12:00:12 +0200 Subject: [PATCH] Fix: method totalLengthIsChanging: do not delete redondant 0 absciss to avoid small behavior bump and make sure the last tool start at the same absciss as previous tool --- .../controller/InterventionalRadiologyController.inl | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/BeamAdapter/component/controller/InterventionalRadiologyController.inl b/src/BeamAdapter/component/controller/InterventionalRadiologyController.inl index 06909b9ee..0fcc4af16 100644 --- a/src/BeamAdapter/component/controller/InterventionalRadiologyController.inl +++ b/src/BeamAdapter/component/controller/InterventionalRadiologyController.inl @@ -955,7 +955,7 @@ void InterventionalRadiologyController::totalLengthIsChanging(const t modifiedNodeCurvAbs = newNodeCurvAbs; // we look for the last value in the CurvAbs - if (fabs(dLength) < d_threshold.getValue()) + if (fabs(dLength) <= d_threshold.getValue()) return; for (unsigned int i = newTable.size() - 1; i > 0; --i) @@ -963,10 +963,12 @@ void InterventionalRadiologyController::totalLengthIsChanging(const t if (newTable[i].size() == 1) { modifiedNodeCurvAbs[i] -= dLength; + if (modifiedNodeCurvAbs[i] < modifiedNodeCurvAbs[i - 1]) + { + modifiedNodeCurvAbs[i] = modifiedNodeCurvAbs[i - 1]; + } } } - - sortCurvAbs(modifiedNodeCurvAbs); }