22 #include "pybind11/pybind11.h"
24 #include "ndarray/pybind11.h"
29 using namespace pybind11::literals;
35 py::class_<MultiShapeletBasisComponent, std::shared_ptr<MultiShapeletBasisComponent>>
36 clsMultiShapeletBasisComponent(mod,
"MultiShapeletBasisComponent");
38 clsMultiShapeletBasisComponent.def(
py::init<
double,
int, ndarray::Array<double const, 2, 2>
const &>(),
39 "radius"_a,
"order"_a,
"matrix"_a);
41 clsMultiShapeletBasisComponent.def(
"getRadius", &MultiShapeletBasisComponent::getRadius);
42 clsMultiShapeletBasisComponent.def(
"getOrder", &MultiShapeletBasisComponent::getOrder);
43 clsMultiShapeletBasisComponent.def(
"getMatrix", &MultiShapeletBasisComponent::getMatrix);
45 py::class_<MultiShapeletBasis, std::shared_ptr<MultiShapeletBasis>> clsMultiShapeletBasis(
46 mod,
"MultiShapeletBasis");
48 clsMultiShapeletBasis.attr(
"Component") = clsMultiShapeletBasisComponent;
50 clsMultiShapeletBasis.def(py::init<int>());
51 clsMultiShapeletBasis.def(py::init<MultiShapeletBasis const &>());
54 clsMultiShapeletBasis.def(
"getComponentCount", &MultiShapeletBasis::getComponentCount);
55 clsMultiShapeletBasis.def(
"addComponent", &MultiShapeletBasis::addComponent);
57 clsMultiShapeletBasis.def(
"normalize", &MultiShapeletBasis::normalize);
58 clsMultiShapeletBasis.def(
"merge", &MultiShapeletBasis::merge);
59 clsMultiShapeletBasis.def(
"makeFunction", &MultiShapeletBasis::makeFunction);