#include <physics.h>
Definition at line 248 of file physics.h.
Public Member Functions | |
double | TimeToCollision (IMovingObject &mobj, IObject &sobj) const |
PointsVector | CollisionPoints (IMovingObject &mobj, IObject &sobj) const |
Position | PositionAfterTime (IMovingObject &mobj, double time) const |
Point | PositionAtTime (IMovingObject &mobj, const DateTime &time) const |
double | DistanceAfterTime (IMovingObject &mobj, double time) const |
double | DistanceAtTime (IMovingObject &mobj, const DateTime &time) const |
double | TimeToDistance (IMovingObject &mobj, double distance) const |
DateTime | TimeAfterDistance (IMovingObject &mobj, double distance, const DateTime &now) const |
double | TimeToPoint (IMovingObject &mobj, struct Point point) const |
double | GetCollisionTime (IMovingObject &obj, IMovingObject &reference, Point &collPoint) const |
virtual | ~PhysicsEngine () |
Protected Member Functions | |
virtual double | ImplTimeToCollision (IMovingObject &mobj, IObject &sobj) const =0 |
virtual PointsVector | ImplCollisionPoints (IMovingObject &mobj, IObject &sobj) const =0 |
virtual Position | ImplPositionAfterTime (IMovingObject &mobj, double time) const =0 |
virtual Point | ImplPositionAtTime (IMovingObject &mobj, const DateTime &time) const =0 |
virtual double | ImplDistanceAfterTime (IMovingObject &mobj, double time) const =0 |
virtual double | ImplDistanceAtTime (IMovingObject &mobj, const DateTime &time) const =0 |
virtual double | ImplTimeToDistance (IMovingObject &mobj, double distance) const =0 |
virtual DateTime | ImplTimeAfterDistance (IMovingObject &mobj, double distance, const DateTime &now) const =0 |
virtual double | ImplTimeToPoint (IMovingObject &mobj, struct Point point) const =0 |
virtual double | ImplGetCollTime (IMovingObject &obj, IMovingObject &reference, Point &collPoint) const =0 |
virtual ~PhysicsEngine | ( | ) | [inline, virtual] |
double TimeToCollision | ( | IMovingObject & | mobj, | |
IObject & | sobj | |||
) | const [inline] |
Computes time to first collision. If no collision occurs then return infinite;
Definition at line 257 of file physics.h.
References ImplTimeToCollision().
PointsVector CollisionPoints | ( | IMovingObject & | mobj, | |
IObject & | sobj | |||
) | const [inline] |
Computes points which are in objects collision. If no collision occurs then return empty container. Points are ordered by time.
Definition at line 268 of file physics.h.
References ImplCollisionPoints().
Position PositionAfterTime | ( | IMovingObject & | mobj, | |
double | time | |||
) | const [inline] |
Computes position of moving object after time duration.
Definition at line 277 of file physics.h.
References ImplPositionAfterTime().
Point PositionAtTime | ( | IMovingObject & | mobj, | |
const DateTime & | time | |||
) | const [inline] |
Computes moving object position at time
Definition at line 286 of file physics.h.
References ImplPositionAtTime().
double DistanceAfterTime | ( | IMovingObject & | mobj, | |
double | time | |||
) | const [inline] |
Computes way length after time duration
Definition at line 295 of file physics.h.
References ImplDistanceAfterTime().
double DistanceAtTime | ( | IMovingObject & | mobj, | |
const DateTime & | time | |||
) | const [inline] |
Computes way length at time
Definition at line 304 of file physics.h.
References ImplDistanceAtTime().
double TimeToDistance | ( | IMovingObject & | mobj, | |
double | distance | |||
) | const [inline] |
Computes time required of moving object for move to on way to new position specified by distance
Definition at line 314 of file physics.h.
References ImplTimeToDistance().
DateTime TimeAfterDistance | ( | IMovingObject & | mobj, | |
double | distance, | |||
const DateTime & | now | |||
) | const [inline] |
Computes time which occurs after move to position specified by way length.
Definition at line 324 of file physics.h.
References ImplTimeAfterDistance().
double TimeToPoint | ( | IMovingObject & | mobj, | |
struct Point | point | |||
) | const [inline] |
Definition at line 328 of file physics.h.
References ImplTimeToPoint().
double GetCollisionTime | ( | IMovingObject & | obj, | |
IMovingObject & | reference, | |||
Point & | collPoint | |||
) | const [inline] |
Definition at line 332 of file physics.h.
References ImplGetCollTime().
virtual double ImplTimeToCollision | ( | IMovingObject & | mobj, | |
IObject & | sobj | |||
) | const [protected, pure virtual] |
virtual PointsVector ImplCollisionPoints | ( | IMovingObject & | mobj, | |
IObject & | sobj | |||
) | const [protected, pure virtual] |
virtual Position ImplPositionAfterTime | ( | IMovingObject & | mobj, | |
double | time | |||
) | const [protected, pure virtual] |
virtual Point ImplPositionAtTime | ( | IMovingObject & | mobj, | |
const DateTime & | time | |||
) | const [protected, pure virtual] |
virtual double ImplDistanceAfterTime | ( | IMovingObject & | mobj, | |
double | time | |||
) | const [protected, pure virtual] |
virtual double ImplDistanceAtTime | ( | IMovingObject & | mobj, | |
const DateTime & | time | |||
) | const [protected, pure virtual] |
virtual double ImplTimeToDistance | ( | IMovingObject & | mobj, | |
double | distance | |||
) | const [protected, pure virtual] |
virtual DateTime ImplTimeAfterDistance | ( | IMovingObject & | mobj, | |
double | distance, | |||
const DateTime & | now | |||
) | const [protected, pure virtual] |
virtual double ImplTimeToPoint | ( | IMovingObject & | mobj, | |
struct Point | point | |||
) | const [protected, pure virtual] |
virtual double ImplGetCollTime | ( | IMovingObject & | obj, | |
IMovingObject & | reference, | |||
Point & | collPoint | |||
) | const [protected, pure virtual] |