SPH
|
Handles overlaps of particles. More...
#include <Collision.h>
Public Member Functions | |
virtual void | initialize (Storage &storage)=0 |
virtual bool | overlaps (const Size i, const Size j) const =0 |
Returns true if two particles overlaps. More... | |
virtual void | handle (const Size i, const Size j, FlatSet< Size > &toRemove)=0 |
Handles the overlap of two particles. More... | |
Public Member Functions inherited from Polymorphic | |
virtual | ~Polymorphic () |
Handles overlaps of particles.
Interface similar to ICollisionHandler, but unlike collision result, overlaps has no result - particles either overlap or not. Note that overlaps are processed before collisions and if two particles do not overlap (overlaps returns false), the check for collisions is skipped.
Definition at line 54 of file Collision.h.
|
pure virtual |
Handles the overlap of two particles.
When called, the particles must actually overlap (overlaps must return true). This is checked by assert.
Implemented in MergeBoundHandler, InternalBounceHandler, RepelHandler< TFollowupHandler >, MergeOverlapHandler, and AggregateOverlapHandler.
|
pure virtual |
Implemented in MergeBoundHandler, InternalBounceHandler, RepelHandler< TFollowupHandler >, MergeOverlapHandler, and AggregateOverlapHandler.
Returns true if two particles overlaps.
If so, the overlap is then resolved using handle.
i,j | Indices of particles in the storage. |
Implemented in MergeBoundHandler, InternalBounceHandler, and AggregateOverlapHandler.