8 #ifndef IMPALGEBRA_SPHERE_3D_H
9 #define IMPALGEBRA_SPHERE_3D_H
13 IMPALGEBRA_BEGIN_NAMESPACE
37 return std::pow((.75 /
PI) * volume, .3333);
40 #ifdef IMP_ALGEBRA_USE_IMP_CGAL
58 double maximum_allowed_error_angstroms);
60 IMPALGEBRA_END_NAMESPACE
SphereD< 3 > Sphere3D
Typedef for Python.
static const double PI
the constant pi
Vector< VectorD< 3 > > Vector3Ds
std::pair< double, double > FloatPair
A generic pair of floats.
double get_ball_radius_from_volume_3d(double volume)
Return the radius of a sphere with a given volume.
FloatPair get_surface_area_and_volume(const algebra::Sphere3Ds &ss)
Get surface area & volume of the union of the balls bounded by the spheres.
IMP::Vector< Sphere3D > Sphere3Ds
#define IMP_USAGE_CHECK(expr, message)
A runtime test for incorrect usage of a class or method.
Sphere3Ds get_simplified_from_volume(Sphere3Ds in, double maximum_allowed_error_angstroms)
Get a set of balls that approximates the surface of the passed set.
Sphere3D get_enclosing_sphere(const Vector3Ds &ss)
Return a sphere containing the listed vectors.