Mimicking the spelunking in
How to splice together several instances of InterpolatingFunction?
We find
func = BSplineFunction[{{0, 100}, {200, 50}, {200, 0}, {300, 0}}];
lst = func@Methods
(* {"Closed", "ControlPoints", "Degree", "DerivativeOrder", "Domain",
"Evaluate", "ExtrapolationMethod", "Knots", "MethodInformation",
"Methods", "Properties", "Rank", "Weights", "WorkingPrecision"} *)
func@MethodInformation@# & /@ lst;
System`BSplineFunction`Closed
BSplineFunction[domain, data]@Closed[] returns the closedness of the
B-spline function in each dimension.
System`BSplineFunction`ControlPoints
BSplineFunction[domain, data]@ControlPoints gives the control points.
System`BSplineFunction`Degree
BSplineFunction[domain, data]@Degree[] returns the polynomial degree
of the B-spline function in each dimension.
System`BSplineFunction`DerivativeOrder
BSplineFunction[domain, data]@DerivativeOrder[] returns what
derivative of the B-spline function will be computed upon evaluation.
System`BSplineFunction`Domain
BSplineFunction[domain, data]@Domain[] returns the domain inteval in
each direction.
System`BSplineFunction`Evaluate
BSplineFunction[domain, data]@Evaluate[arg] evaluates the B-spline
function at the argument arg.
System`BSplineFunction`ExtrapolationMethod
BSplineFunction[domain, data]@ExtrapolationMethod returns what type of
extrapolation method will be used upon evaulation outside the domain.
System`BSplineFunction`Knots
BSplineFunction[domain, data]@Knots[] returns the knot sequence in
each dimension.
System`BSplineFunction`MethodInformation
BSplineFunction[domain, data]@MethodInformation[method] gives
information about a particular method.
System`BSplineFunction`Methods
BSplineFunction[domain, data]@Methods[pat] gives the list of methods
matching the string pattern pat.
System`BSplineFunction`Properties
BSplineFunction[domain, data]@Properties gives the list of possible
properties.
System`BSplineFunction`Rank
BSplineFunction[domain, data]@Rank gives the rank of the B-spline
function domain.
System`BSplineFunction`Weights
BSplineFunction[domain, data]@Weights gives the weights associated
with the control points.
System`BSplineFunction`WorkingPrecision
BSplineFunction[domain, data]@WorkingPrecision returns what working
precision will be used during the computation.
It's worth pointing out that, the ExtrapolationMethod method doesn't have any effect at least in v13.2.
With these info, I can figure out the meaning of Most of the arguments:
BSplineFunction[Rank, Domain, Degree, Closed,
{ControlPoints, Weights}, Knots, DerivativeOrder,
WorkingPrecision, ???]
Yeah, I don't know what "Unevaluated" means. Seems that even if it's changed to anything else, it'll simply be ignored. (If I have to guess, it might be a position for the unfinished ExtrapolationMethod? )
BTW, it's worth mentioning that, even if the Domain is changed to anything else, it's simply ignored. I guess there're more, but it's time to go to bed now.
WorkingPrecision:) . – xzczd Feb 23 '23 at 16:13