33 #include <cpl_macros.h>
34 #include <cpl_matrix.h>
42 typedef struct GiChebyshev2D GiChebyshev2D;
45 GiChebyshev2D *giraffe_chebyshev2d_new(cxint xorder, cxint yorder);
46 GiChebyshev2D *giraffe_chebyshev2d_clone(
const GiChebyshev2D *other);
47 void giraffe_chebyshev2d_delete(GiChebyshev2D *
self);
49 void giraffe_chebyshev2d_get_order(
const GiChebyshev2D *
self, cxint *xorder,
51 void giraffe_chebyshev2d_get_range(
const GiChebyshev2D *
self, cxdouble *ax,
52 cxdouble *bx, cxdouble *ay, cxdouble *by);
54 const cpl_matrix *giraffe_chebyshev2d_coeffs(
const GiChebyshev2D *
self);
56 cxint giraffe_chebyshev2d_set(GiChebyshev2D *
self, cxdouble ax, cxdouble bx,
57 cxdouble ay, cxdouble by, cpl_matrix *coeffs);
58 cxint giraffe_chebyshev2d_set_coeff(GiChebyshev2D *
self, cxint i, cxint j,
61 cxdouble giraffe_chebyshev2d_eval(
const GiChebyshev2D *
self, cxdouble x,