8 #ifndef IMPALGEBRA_SPHERE_PATCH_3D_H 
    9 #define IMPALGEBRA_SPHERE_PATCH_3D_H 
   14 #include <cereal/access.hpp> 
   16 IMPALGEBRA_BEGIN_NAMESPACE
 
   32   bool get_contains(
const Vector3D &p) 
const;
 
   33   Plane3D get_plane()
 const { 
return crossing_plane_; }
 
   37     crossing_plane_.show(out);
 
   46   friend class cereal::access;
 
   48   template<
class Archive> 
void serialize(Archive &ar) {
 
   49     ar(sph_, crossing_plane_);
 
   57 IMPALGEBRA_END_NAMESPACE
 
Base class for geometric types. 
 
SphereD< 3 > Sphere3D
Typedef for Python. 
 
#define IMP_SHOWABLE_INLINE(Name, how_to_show)
Declare the methods needed by an object that can be printed. 
 
#define IMP_AREA_GEOMETRY_METHODS(Name, name, area, bounding_box)
Implement the needed namespace methods for a geometry type. 
 
Base class for geometric types. 
 
#define IMP_UNUSED(variable)
 
BoundingBoxD< 3 > get_bounding_box(const Cone3D &g)
 
A sphere patch is defined as all points above the plane and on the sphere. 
 
#define IMP_NOT_IMPLEMENTED
Use this to mark that the method is not implemented yet.