|
SOLUTIONS
|
Mathematica
>
Data Manipulation
>
Numerical Data
>
Curve Fitting & Approximate Functions
>
Splines
>
BSplineFunction
BUILT-IN MATHEMATICA SYMBOL
BSplineFunction
BSplineFunction[{pt1, pt2, ...}]
represents a B-spline function for a curve defined by the control points
.
BSplineFunction[array]
represents a B-spline function for a surface or high-dimensional manifold.
Details and OptionsDetails and Options
- BSplineFunction[...][u] gives the point on a B-spline curve corresponding to parameter u.
- BSplineFunction[...][u, v, ...] gives the point on a general B-spline manifold corresponding to the parameters u, v, ....
- The embedding dimension for the curve represented by BSplineFunction[{pt1, pt2, ...}] is given by the length of the lists
. - BSplineFunction[array] can handle arrays of any depth, representing manifolds of any dimension.
- The dimension of the manifold represented by BSplineFunction[array] is given by ArrayDepth[array]-1. The lengths of the lists that occur at the lowest level in the array define the embedding dimension.
- BSplineFunction[array, d] creates a B-spline function of d variables.
- The parameters u, v, ... by default run from 0 to 1 over the domain of the curve or other manifold.
- The following options can be given:
-
SplineDegree Automatic degree of polynomial basis SplineKnots Automatic knot sequence for spline SplineWeights Automatic control point weights SplineClosed False whether to make the spline closed - By default, BSplineFunction gives cubic splines.
- The option setting SplineDegree->d specifies that the underlying polynomial basis should have maximal degree d.
- By default, knots are chosen uniformly in parameter space, with additional knots added so that the curve starts at the first control point and ends at the last one.
- With an explicit setting for SplineKnots, the degree of the polynomial basis is determined from the number of knots specified and the number of control points.
- With the default setting SplineWeights->Automatic, all control points are chosen to have equal weights, corresponding to a polynomial B-spline function.
- With the setting SplineClosed->{c1, c2, ...}, the boundaries are connected in directions i for which
is True.
ExamplesExamplesopen allclose all
Basic Examples (2)Basic Examples (2)
Construct a B-spline curve using a list of control points:
| In[1]:= |
| In[2]:= |
| Out[2]= |
Apply the function to find a point on the curve:
| In[3]:= |
| Out[3]= |
Plot the B-spline curve with the control points:
| In[4]:= |
| Out[4]= | ![]() |
Construct a B-spline surface closed in the u-direction:
| In[1]:= |
| In[2]:= |
| Out[2]= |
Show the surface with the control points:
| In[3]:= |
| Out[3]= | ![]() |
New in 7
Mathematica 9 is now available!
New to Mathematica?
Find your learning path »
Have a question?
Ask support »



