Removes dimensionality from BSpline family. This PR mainly contains updates to accommodate BSplineLib's updates to use contiguous arrays as VectorSpace. This means we can just take buffer info from numpy arrays and use it to create a bspline. That requires us to keep the original numpy array alive for BSplines. Other than taking out SplineType::kDim, everything else says the same.
Avoiding copies for evaluation query/return values and switching from std::vectors to custom buffer array gave some performance boost.
Overview
Removes dimensionality from BSpline family. This PR mainly contains updates to accommodate BSplineLib's updates to use contiguous arrays as
VectorSpace
. This means we can just take buffer info from numpy arrays and use it to create a bspline. That requires us to keep the original numpy array alive for BSplines. Other than taking outSplineType::kDim
, everything else says the same.Avoiding copies for evaluation query/return values and switching from std::vectors to custom buffer array gave some performance boost.
Addressed issues
Checklists