tataratat / splinepy

Library for prototyping spline geometries of arbitrary dimensions and degrees, and IGA
https://tataratat.github.io/splinepy
Other
47 stars 13 forks source link

Update BSplineLib - remove dimensionality from template parameter #288

Closed j042 closed 11 months ago

j042 commented 11 months ago

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 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.

Addressed issues

Checklists