X-Git-Url: http://gitweb.pgornicz.com/gitweb.cgi?a=blobdiff_plain;f=src%2FEntities%2FPhysicsEntity.h;h=b4b5b9e1d7c81b5c4b584e519073d7be0a2bfb3e;hb=3d1f081343dc603a3292538eeb9bd794b255deb6;hp=49849abeea22387dc8387f8f58909253c3770b5f;hpb=ad9f1fb6bdfc51df61a7fb52d607ca0c0bceca4c;p=physics.git diff --git a/src/Entities/PhysicsEntity.h b/src/Entities/PhysicsEntity.h index 49849ab..b4b5b9e 100644 --- a/src/Entities/PhysicsEntity.h +++ b/src/Entities/PhysicsEntity.h @@ -1,33 +1,55 @@ +/* + * Copyright (C) 2008 Patrik Gornicz, Gornicz_P (at) hotmail (dot) com. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + #ifndef PHYSICS_H #define PHYSICS_H #include "Entity.h" -#include "../Vector2.h" +#include "Vector2.h" + /// ***** Header Class ***** + class PhysicsEntity: public Entity { - protected: - PhysicsEntity(Vector2); + protected: + PhysicsEntity(const Vector2&); + + public: + virtual ~PhysicsEntity(); - public: - virtual ~PhysicsEntity(); + virtual void update(float); - virtual void update(float); + virtual Vector2 positionAt(float) const; + virtual Vector2 velocityAt(float) const; - virtual Vector2 positionAt(float) const; - virtual Vector2 velocityAt(float) const; + virtual void applyForce(const Vector2& force); + virtual void applyForce(const Vector2& force, const Vector2& at); - virtual void applyForce(const Vector2&); - virtual void applyImpulse(const Vector2&); + virtual void applyImpulse(const Vector2& impulse); + virtual void applyImpulse(const Vector2& impulse, const Vector2& at); - protected: - Vector2 force; + //protected: + Vector2 force; - float mass; + float mass; - // Coefficient of Restitution - float CoR; + // Coefficient of Restitution + float CoR; }; #endif // PHYSICS_H