BasicBSpline.jl icon indicating copy to clipboard operation
BasicBSpline.jl copied to clipboard

Basic (mathematical) operations for B-spline functions and related things with julia

Results 21 BasicBSpline.jl issues
Sort by recently updated
recently updated
newest added

```julia julia> using BasicBSpline julia> p = 3 3 julia> P1 = BSplineSpace{p}(KnotVector(1:8)) BSplineSpace{3, Float64}(KnotVector([1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0])) julia> P2 = BSplineSpace{p}(KnotVector(2,3,3,4,5,6,7,8)) BSplineSpace{3, Float64}(KnotVector([2.0, 3.0, 3.0,...

precision

I'm not much familiar with the usage of the following packages, but it would be nice to have a detailed comparison in the documentation. * [BSplineKit.jl](https://github.com/jipolanco/BSplineKit.jl) * [BSplines.jl](https://github.com/sostock/BSplines.jl) * [Interpolations.jl](https://github.com/JuliaMath/Interpolations.jl)...

documentation
help wanted

It might be great to provide `BasicBSplineCore.jl` package for the core components of the current `BasicBSpline.jl` package. `BasicBSplineCore.jl` will not have dependency on `FastGaussQuadrature.jl`.

design
breaking

Currently, I don't need this feature, but it would be better to have some methods for integration. If someone needs this feature, feel free to add comment to this issue.

enhancement

```julia julia> k = KnotVector{Int}([1,2,3]) KnotVector([1, 2, 3]) julia> typeof(k) KnotVector{Int64} julia> float(k) ERROR: MethodError: no method matching AbstractFloat(::KnotVector{Int64}) Closest candidates are: (::Type{T})(::AbstractChar) where T

enhancement
good first issue

Currently, we mainly support 1 to 3-dimensional B-spline manifolds. this can be generalized with `@generated` macro.

enhancement

I think supporting T-spline should be in another package, and I'm not familiar with the patent. This issue is just for future reference.

help wanted

In `BasicBSpline`, `BSplineSpace` (`AbstractBSplineSpace`) structs are regarded as a linear space, so we can compute their `intersection` and `+`. I'm not sure we have practical benefits for the features.

enhancement

* [ ] `KnotVector` * [ ] `BSplineManifold{3}`

enhancement