21 TypeHandle CollisionHandlerHighestEvent::_type_handle;
39 if (collide_cat.is_spam()) {
43 _last_colliding.clear();
44 if (_closest_collider) {
45 _last_colliding.insert(_closest_collider);
47 _current_colliding.clear();
48 _collider_distance = 0;
49 _closest_collider =
nullptr;
58 nassertv(entry !=
nullptr);
61 entry->
get_from()->get_collision_origin();
62 double dist = vec.length_squared();
63 if (_closest_collider ==
nullptr || dist < _collider_distance) {
64 _collider_distance = dist;
65 _closest_collider = entry;
76 if (_closest_collider) {
77 _current_colliding.insert(_closest_collider);
Defines a single collision event.
LPoint3 get_surface_point(const NodePath &space) const
Returns the point, on the surface of the "into" object, at which a collision is detected.
get_from_node_path
Returns the NodePath that represents the CollisionNode that contains the CollisionSolid that triggere...
get_from
Returns the CollisionSolid pointer for the particular solid that triggered this collision.
virtual bool end_group()
Called by the CollisionTraverser at the completion of all collision detections for this traversal.
virtual void add_entry(CollisionEntry *entry)
Called between a begin_group() .
virtual void begin_group()
Will be called by the CollisionTraverser before a new traversal is begun.
virtual bool end_group()
Called by the CollisionTraverser at the completion of all collision detections for this traversal.
CollisionHandlerHighestEvent()
The default CollisionHandlerEvent will throw no events.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.