3 #ifndef __u_smspl3_curve1d_hpp
4 #define __u_smspl3_curve1d_hpp
7 #include <mth/u2d_wpoint.hpp>
8 #include <mth/u2d_box.hpp>
9 #include <mth/u_curve1d.hpp>
21 Node(
double ix = 0.,
double iw = 0.):
27 typedef std::vector<Node> Nodes;
40 virtual void approximate(
const Nodes &nodes,
double alpha = 0.);
53 {printf(
"USmspl3Curve1d::addNode: not implemented.\n");}
57 {printf(
"USmspl3Curve1d::removeNode: not implemented.\n");
return false;}
79 inline double Am(
size_t i,
size_t j,
const Nodes &nodes)
const;
80 inline double Hm(
size_t i,
size_t j,
const Nodes &nodes)
const;
81 inline double Km(
size_t i,
size_t j,
const Nodes &nodes)
const;
82 inline double bv(
size_t i,
const Nodes &nodes)
const;
90 inline double get_s(
double p)
const;
Definition: u_smspl3_curve1d.hpp:13
USmspl3Curve1d(double alpha=0)
double x
Definition: u_smspl3_curve1d.hpp:22
double get_s(double p) const
Node(double ix=0., double iw=0.)
Definition: u_smspl3_curve1d.hpp:21
virtual double operator()(double p) const
virtual bool removeNode(size_t id)
Definition: u_smspl3_curve1d.hpp:56
virtual void addNode(const Node &node, int id)
Definition: u_smspl3_curve1d.hpp:52
double w
Definition: u_smspl3_curve1d.hpp:25
bool calc_coeffs(const Nodes &nodes, double alpha, CoeffsAr &coeffs)
CoeffsAr m_coeffs
Definition: u_smspl3_curve1d.hpp:70
std::vector< Coeffs > CoeffsAr
Definition: u_smspl3_curve1d.hpp:64
Definition: u2d_box.hpp:8
U2dBox m_bound
Definition: u_smspl3_curve1d.hpp:73
Definition: u_smspl3_curve1d.hpp:18
virtual ~USmspl3Curve1d()
virtual void approximate(const Nodes &nodes, double alpha=0.)
double m_alpha
Definition: u_smspl3_curve1d.hpp:67
virtual bool ready() const
Definition: u_smspl3_curve1d.hpp:46
Definition: u_smspl3_curve1d.hpp:62