base class for all particles TODO: Idea: implement an interface that somehow every particle knows how to interact with every wall without explicit coding
More...
|
| CollidableParticleBase (Eigen::Vector3d rPosition, Eigen::Vector3d rVelocity, int rIndex) |
| constructor, every particle needs a position, a velocity and an identifier More...
|
|
virtual double | GetVolume () const =0 |
| getter for the particle volume More...
|
|
virtual double | GetKineticEnergy () const =0 |
| getter for the kinetic energy of the particle More...
|
|
| CollidableBase (int rIndex) |
| constructor, initialized with an index More...
|
|
virtual | ~CollidableBase () |
| destructor More...
|
|
int | GetIndex () const |
| getter for collidable index More...
|
|
virtual void | PerformCollision (CollidableBase &rCollidable)=0 |
| collision handling, resolve double dispatch More...
|
|
virtual void | PerformCollision (CollidableParticleSphere &rSphere)=0 |
| collision handling, resolve double dispatch More...
|
|
virtual void | PerformCollision (CollidableWallBase &rWall)=0 |
| collision handling, resolve double dispatch More...
|
|
virtual double | PredictCollision (CollidableBase &rCollidable, int &rType)=0 |
| collision prediction between (this) and collision partner More...
|
|
virtual double | PredictCollision (CollidableParticleSphere &rSphere, int &rType)=0 |
| collision prediction between (this) and collision partner More...
|
|
virtual double | PredictCollision (CollidableWallBase &rWall, int &rType)=0 |
| collision prediction between (this) and collision partner More...
|
|
void | AddBox (SubBox &rBox) |
| adds a SubBox to this collidable More...
|
|
void | RemoveBox (SubBox &rBox) |
| removes a SubBox from this collidable More...
|
|
virtual void | MoveAndGrow (double rTime)=0 |
| updates this collidable in time More...
|
|
virtual void | GetLocalEventsToDelete (LocalEvents &rEventsToDelete) const =0 |
| returns all old events, that need to be deleted More...
|
|
void | PrintLocalEvents () const |
| prints the local event list More...
|
|
const std::vector< SubBox * > & | GetSubBoxes () const |
| returns all the SubBoxes of this collidable More...
|
|
virtual void | Print (std::ostream &rReturnStream) const =0 |
| prints information based on derived class type. More...
|
|
base class for all particles TODO: Idea: implement an interface that somehow every particle knows how to interact with every wall without explicit coding