From 6a958ef6ad5faacad518008a6fbe1883e9e240b9 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <m.svechnikov@fz-juelich.de> Date: Tue, 27 Feb 2024 15:25:36 +0100 Subject: [PATCH] rm code duplication from crop() --- Device/Data/Datafield.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/Device/Data/Datafield.cpp b/Device/Data/Datafield.cpp index 404883c17e8..e5cd75dc06c 100644 --- a/Device/Data/Datafield.cpp +++ b/Device/Data/Datafield.cpp @@ -285,19 +285,15 @@ Datafield* Datafield::crop(double xmin, double ymin, double xmax, double ymax) c out[iout++] = m_values[i]; } return new Datafield(frame().clone(), out); + + ASSERT(rank() == 2); } Datafield* Datafield::crop(double xmin, double xmax) const { ASSERT(rank() == 1); - std::vector<Bin1D> outbins; - for (size_t i = 0; i < xAxis().size(); ++i) { - const double x = xAxis().binCenter(i); - if (xmin <= x && x <= xmax) - outbins.push_back(xAxis().bin(i)); - } - auto* xclipped = new Scale(xAxis().axisLabel(), outbins); + Scale* xclipped = xAxis().clipped(xmin, xmax).clone(); const size_t N = size(); std::vector<double> out; -- GitLab