aboutsummaryrefslogtreecommitdiff
path: root/unsupported/Eigen/src/Splines/SplineFitting.h
diff options
context:
space:
mode:
authorYi Kong <yikong@google.com>2022-02-25 19:59:12 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2022-02-25 19:59:12 +0000
commit0eda9fda57a94cdb1e6dafdeea5cd469d12e7e13 (patch)
treefb979fb4cf4f8052c8cc66b1ec9516d91fcd859b /unsupported/Eigen/src/Splines/SplineFitting.h
parent8fd413e275f78a4c240f1442ce5cf77c73a20a55 (diff)
parentedb0ad5bb04b48aab7dd0978f0475edd3550de7c (diff)
downloadeigen-0eda9fda57a94cdb1e6dafdeea5cd469d12e7e13.tar.gz
Merge changes Iee153445,Iee274471 am: 79df15ea88 am: 10f298fc41 am: 7cb5001398 am: bc0f5df265 am: edb0ad5bb0
Original change: https://android-review.googlesource.com/c/platform/external/eigen/+/1999079 Change-Id: Ie3f66a4da4b417c7ddfe10af92338237c7a8098e
Diffstat (limited to 'unsupported/Eigen/src/Splines/SplineFitting.h')
-rw-r--r--unsupported/Eigen/src/Splines/SplineFitting.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/unsupported/Eigen/src/Splines/SplineFitting.h b/unsupported/Eigen/src/Splines/SplineFitting.h
index c761a9b3d..9f6e8afa0 100644
--- a/unsupported/Eigen/src/Splines/SplineFitting.h
+++ b/unsupported/Eigen/src/Splines/SplineFitting.h
@@ -17,8 +17,8 @@
#include "SplineFwd.h"
-#include <Eigen/LU>
-#include <Eigen/QR>
+#include "../../../../Eigen/LU"
+#include "../../../../Eigen/QR"
namespace Eigen
{
@@ -181,7 +181,7 @@ namespace Eigen
* \ingroup Splines_Module
*
* \param[in] pts The data points to which a spline should be fit.
- * \param[out] chord_lengths The resulting chord lenggth vector.
+ * \param[out] chord_lengths The resulting chord length vector.
*
* \sa Les Piegl and Wayne Tiller, The NURBS book (2nd ed.), 1997, 9.2.1 Global Curve Interpolation to Point Data
**/
@@ -385,7 +385,7 @@ namespace Eigen
{
const DenseIndex span = SplineType::Span(parameters[i], degree, knots);
- if (derivativeIndices[derivativeIndex] == i)
+ if (derivativeIndex < derivativeIndices.size() && derivativeIndices[derivativeIndex] == i)
{
A.block(row, span - degree, 2, degree + 1)
= SplineType::BasisFunctionDerivatives(parameters[i], 1, degree, knots);
@@ -395,8 +395,9 @@ namespace Eigen
}
else
{
- A.row(row++).segment(span - degree, degree + 1)
+ A.row(row).segment(span - degree, degree + 1)
= SplineType::BasisFunctions(parameters[i], degree, knots);
+ b.col(row++) = points.col(i);
}
}
b.col(0) = points.col(0);