16 #ifdef TINYSPLINE_DOUBLE_PRECISION
164 const size_t deg,
const size_t dim,
193 const tsRational* points,
const size_t n,
const size_t dim,
283 const tsBSpline* bspline,
const tsRational* ctrlp,
300 const tsBSpline* bspline,
const tsRational* knots,
328 const tsRational min,
const tsRational max,
347 const tsBSpline* bspline,
const tsRational u,
352 const tsBSpline* bspline,
const tsRational u,
const size_t n,
383 const tsBSpline* bspline,
const int n,
const int back,
388 const tsBSpline* bspline,
const tsRational u,
416 const tsBSpline* original,
const tsRational b,
438 int ts_fequals(
const tsRational x,
const tsRational y);
457 void ts_ffill(tsRational* arr,
const size_t num,
const tsRational val);
tsError ts_bspline_interpolate(const tsRational *points, const size_t n, const size_t dim, tsBSpline *bspline)
tsError ts_bspline_set_knots(const tsBSpline *bspline, const tsRational *knots, tsBSpline *result)
tsError ts_bspline_derive(const tsBSpline *original, tsBSpline *derivative)
tsError ts_str_enum(const char *str)
tsError ts_bspline_set_ctrlp(const tsBSpline *bspline, const tsRational *ctrlp, tsBSpline *result)
tsError ts_bspline_new(const size_t deg, const size_t dim, const size_t n_ctrlp, const tsBSplineType type, tsBSpline *bspline)
void ts_bspline_move(tsBSpline *from, tsBSpline *to)
void ts_bspline_free(tsBSpline *bspline)
tsError ts_bspline_setup_knots(const tsBSpline *original, const tsBSplineType type, const tsRational min, const tsRational max, tsBSpline *result)
tsError ts_bspline_copy(const tsBSpline *original, tsBSpline *copy)
tsError ts_deboornet_copy(const tsDeBoorNet *original, tsDeBoorNet *copy)
tsError ts_bspline_insert_knot(const tsBSpline *bspline, const tsRational u, const size_t n, tsBSpline *result, size_t *k)
void ts_ffill(tsRational *arr, const size_t num, const tsRational val)
tsError ts_bspline_buckle(const tsBSpline *original, const tsRational b, tsBSpline *buckled)
int ts_fequals(const tsRational x, const tsRational y)
char * ts_enum_str(const tsError err)
tsError ts_bspline_split(const tsBSpline *bspline, const tsRational u, tsBSpline *split, size_t *k)
void ts_deboornet_default(tsDeBoorNet *deBoorNet)
tsError ts_bspline_resize(const tsBSpline *bspline, const int n, const int back, tsBSpline *resized)
void ts_bspline_default(tsBSpline *bspline)
tsError ts_bspline_to_beziers(const tsBSpline *bspline, tsBSpline *beziers)
void ts_deboornet_free(tsDeBoorNet *deBoorNet)
tsError ts_bspline_evaluate(const tsBSpline *bspline, const tsRational u, tsDeBoorNet *deBoorNet)