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);
virtual bool end_group()
Called by the CollisionTraverser at the completion of all collision detections for this traversal.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
get_from_node_path
Returns the NodePath that represents the CollisionNode that contains the CollisionSolid that triggere...
LPoint3 get_surface_point(const NodePath &space) const
Returns the point, on the surface of the "into" object, at which a collision is detected.
virtual bool end_group()
Called by the CollisionTraverser at the completion of all collision detections for this traversal.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Defines a single collision event.
virtual void begin_group()
Will be called by the CollisionTraverser before a new traversal is begun.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void add_entry(CollisionEntry *entry)
Called between a begin_group() .
CollisionHandlerHighestEvent()
The default CollisionHandlerEvent will throw no events.
get_from
Returns the CollisionSolid pointer for the particular solid that triggered this collision.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.