17INLINE CollisionCapsule::
18CollisionCapsule(
const LPoint3 &a,
const LPoint3 &b, PN_stdfloat radius) :
19 _a(a), _b(b), _radius(radius)
22 nassertv(_radius >= 0.0f);
28INLINE CollisionCapsule::
29CollisionCapsule(PN_stdfloat ax, PN_stdfloat ay, PN_stdfloat az,
30 PN_stdfloat bx, PN_stdfloat by, PN_stdfloat bz,
32 _a(ax, ay, az), _b(bx, by, bz), _radius(radius)
35 nassertv(_radius >= 0.0f);
41INLINE CollisionCapsule::
48INLINE CollisionCapsule::
63 _volume_pcollector.flush_level();
64 _test_pcollector.flush_level();
70INLINE
void CollisionCapsule::
71set_point_a(
const LPoint3 &a) {
79INLINE
void CollisionCapsule::
80set_point_a(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z) {
81 set_point_a(LPoint3(x, y, z));
87INLINE
const LPoint3 &CollisionCapsule::
95INLINE
void CollisionCapsule::
96set_point_b(
const LPoint3 &b) {
104INLINE
void CollisionCapsule::
105set_point_b(PN_stdfloat x, PN_stdfloat y, PN_stdfloat z) {
106 set_point_b(LPoint3(x, y, z));
112INLINE
const LPoint3 &CollisionCapsule::
120INLINE
void CollisionCapsule::
121set_radius(PN_stdfloat radius) {
122 nassertv(radius >= 0.0f);
127 mark_internal_bounds_stale();
134INLINE PN_stdfloat CollisionCapsule::
This implements a solid consisting of a cylinder with hemispherical endcaps, also known as a capsule ...
static void flush_level()
Flushes the PStatCollectors used during traversal.
The abstract base class for all things that can collide with other things in the world,...