|
geomc 1.0
A c++ linear algebra template library
|
Base class for a path defined by a sequence of concatenated splines. More...
#include <geomc/shape/CubicPath.h>
Public Types | |
| using | elem_t |
| The coordinate type of this object. | |
| using | point_t |
| The type of a point in this object's space. | |
| using | Spline = S |
Public Member Functions | |
| VecType< T, N > | acceleration (T s) const |
Evaluate the second derivative of the path at s, with respect to s. | |
| Rect< T, N > | bounds () const |
| Compute the axis-aligned bounding box of the path. | |
| VecType< T, N > | operator() (T s) const |
Evaluate the path at s. | |
| std::optional< size_t > | segment (T s) const |
Return the index of the segment containing s. | |
| VecType< T, N > | velocity (T s) const |
Evaluate the derivative of the path at s, with respect to s. | |
Static Public Attributes | |
| static constexpr index_t | N |
| The dimension of this object. | |
Base class for a path defined by a sequence of concatenated splines.
|
inherited |
The type of a point in this object's space.
An N-vector of T if N > 1, otherwise a T.
|
inline |
Evaluate the second derivative of the path at s, with respect to s.
The range of s is the same as for operator().
|
inline |
Compute the axis-aligned bounding box of the path.
O(n) on the number of segments.
|
inline |
Evaluate the path at s.
Segment i is evaluated for s in the range [i, i + 1]. If s is outside the range [0, n_segments()], the path is extrapolated using the first or last segment.
|
inline |
Return the index of the segment containing s.
If there are no complete segments in the path, return std::nullopt.
|
inline |
Evaluate the derivative of the path at s, with respect to s.
The range of s is the same as for operator().