16 #ifndef GEOMTOOLS_POLYHEDRA_H 17 #define GEOMTOOLS_POLYHEDRA_H 1 31 class composite_surface;
32 class right_polygonal_frustrum;
130 bool inner_ =
false)
const;
160 void add (
double z_,
double rmax_,
bool compute_ =
true);
163 void add (
double z_,
double rmin_,
double rmax_,
bool compute_ =
true);
169 virtual void reset ();
217 virtual double get_volume (uint32_t flags_ = 0)
const;
258 virtual void tree_dump(std::ostream & out_ = std::clog,
259 const std::string & title_ =
"",
260 const std::string & indent_ =
"",
261 bool inherit_ =
false)
const;
283 uint32_t options_ = 0)
const;
302 void _compute_surfaces_();
304 void _compute_volume_();
306 void _compute_limits_();
308 void _compute_misc_();
310 void _compute_all_();
320 boost::logic::tribool _has_top_face_;
321 boost::logic::tribool _has_bottom_face_;
322 boost::logic::tribool _has_inner_face_;
323 double _top_surface_;
324 double _bottom_surface_;
325 double _outer_side_surface_;
326 double _inner_side_surface_;
327 double _outer_volume_;
328 double _inner_volume_;
343 #endif // GEOMTOOLS_POLYHEDRA_H
#define GEOMTOOLS_OBJECT_3D_REGISTRATION_INTERFACE(ModelClassName)
Definition: i_object_3d.h:260