37 virtual BoundingVolume *make_copy()
const;
39 virtual LPoint3 get_approx_center()
const;
40 virtual void xform(
const LMatrix4 &mat);
42 virtual void output(std::ostream &out)
const;
43 virtual void write(std::ostream &out,
int indent_level)
const;
47 INLINE_MATHUTIL
const GeometricBoundingVolume *
get_component(
int n)
const;
57 virtual bool extend_other(BoundingVolume *other)
const;
58 virtual bool around_other(BoundingVolume *other,
59 const BoundingVolume **first,
60 const BoundingVolume **last)
const;
61 virtual int contains_other(
const BoundingVolume *other)
const;
63 virtual bool extend_by_geometric(
const GeometricBoundingVolume *volume);
64 virtual bool around_geometric(
const BoundingVolume **first,
65 const BoundingVolume **last);
67 virtual int contains_point(
const LPoint3 &point)
const;
68 virtual int contains_lineseg(
const LPoint3 &a,
const LPoint3 &b)
const;
69 virtual int contains_sphere(
const BoundingSphere *sphere)
const;
70 virtual int contains_box(
const BoundingBox *box)
const;
71 virtual int contains_hexahedron(
const BoundingHexahedron *hexahedron)
const;
72 virtual int contains_line(
const BoundingLine *line)
const;
73 virtual int contains_plane(
const BoundingPlane *plane)
const;
75 virtual int contains_intersection(
const IntersectionBoundingVolume *intersection)
const;
77 virtual int contains_geometric(
const GeometricBoundingVolume *volume)
const;
78 int other_contains_union(
const BoundingVolume *other)
const;
81 typedef pvector<CPT(GeometricBoundingVolume) > Components;
82 Components _components;
88 static void init_type() {
89 GeometricBoundingVolume::init_type();
91 GeometricBoundingVolume::get_class_type());
93 virtual TypeHandle get_type()
const {
94 return get_class_type();
96 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
99 static TypeHandle _type_handle;
101 friend class BoundingVolume;
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...