3 #include <sofa/defaulttype/VecTypes.h>
4 #include <SofaCaribou/Topology/IsoSurface.h>
6 namespace SofaCaribou::topology {
9 template <
class T =
void* >
10 using Data = sofa::core::objectmodel::Data<T>;
17 : p_radius(initData(&p_radius, 1.,
"radius",
"Radius of the sphere."))
18 , p_center(initData(&p_center, Coord(0, 0, 0),
"center",
"Coordinates at the center of the sphere."))
21 inline Real iso_value(
const Eigen::Matrix<Real, 3, 1> & x)
const final {
22 const auto & r = p_radius.getValue();
23 Eigen::Map<const Eigen::Matrix<Real, 3, 1>> c (p_center.getValue().data());
25 const auto d = (x-c).dot(x-c);