splinepy.bezier.BezierBase#
- class splinepy.bezier.BezierBase(*args, **kwargs)[source]#
Bases:
Spline
Bezier Base. Contains extra operations that are only available for bezier families.
Passes all arguments to
super.__init__()
, seeSpline
.Beziers are a special type of spline where the basis functions have a global support. The basis functions are given by the so-called Berstein polynomials
\[B^{i;p}(u) = \binom{p}{i} u^i (1-u)^{p-i}\]The parametric domain of a Bezier spline is always a multi-dimensional hypercube, that is \(\Omega_{param}=[0,1]^{N_{param}}\). We refer to the documentation of the classes
Bezier
andRationalBezier
for explanations how to construct splines using Berstein polynomials as basis.Moreover, we like to make the point that Bezier splines can also be seen as a special type of B-Splines with open knot vectors (i.e., the first and last entry are repeated \(p+1\)-times) that do not feature additional internal knots.
For usage examples, we once again refer to the derived classes
Bezier
andRationalBezier
.Methods
BezierBase.basis
(queries[, nthreads])Returns basis function values on the supports of given queries.
BezierBase.basis_and_support
(queries[, nthreads])Returns basis function values and their support ids of given queries.
BezierBase.basis_derivative
(queries, orders)Returns derivative of basis functions evaluated on the supports of given queries.
Returns derivative of basis functions and their support ids of given queries.
Clears core spline and saved data
BezierBase.compose
(inner_function[, ...])Calculates the spline that forms the composition of the inner function spline (function argument), using the caller spline as the outer (or deformation function).
BezierBase.composition_derivative
(inner, ...)Derivative of composition when given the differentiated inner function with constant outer function.
BezierBase.copy
([saved_data])Returns deepcopy of stored data and newly initialized self.
BezierBase.derivative
(queries, orders[, ...])Evaluates derivatives of spline.
BezierBase.derivative_spline
(orders)Calculates the spline that describes the requested derivative in a close-form representation of the the same spline-type.
BezierBase.elevate_degrees
(parametric_dimensions)Elevate degree.
BezierBase.evaluate
(queries[, nthreads])Evaluates spline.
BezierBase.export
(fname)Export spline.
Extracts a single physical dimension of a spline.
Returns greville abscissae.
BezierBase.jacobian
(queries[, nthreads])Evaluates jacobians on spline.
BezierBase.mapper
(reference)Retrieve a mapper that can be used to get physical derivatives such as a gradient or hessian in physical space
BezierBase.proximities
(queries[, ...])Given physical coordinate, finds a parametric coordinate that maps to the nearest physical coordinate.
BezierBase.reduce_degrees
(parametric_dimensions)Tries to reduce degree.
BezierBase.sample
(resolutions[, nthreads])Uniformly sample along each parametric dimensions from spline.
BezierBase.show
(**kwargs)Equivalent to
BezierBase.showable
(**kwargs)Equivalent to
BezierBase.split
(para_dim, locations)Splits spline at given locations along the given para_dim.
BezierBase.support
(queries[, nthreads])Returns basis support ids of given queries.
BezierBase.todict
([tolist])Return current spline as dict.
Attributes