Elements used in the Balls and Things games for the RETRO.

Dependents:   RETRO_BallsAndPaddle RETRO_BallAndHoles

Committer:
maxint
Date:
Mon Mar 02 09:58:53 2015 +0000
Revision:
8:19dd2a538cbe
Parent:
7:4fa3edaa1201
more clean-up

Who changed what in which revision?

UserRevisionLine numberNew contents of line
maxint 0:3d0db4e183ee 1 #include "Physics.h"
maxint 0:3d0db4e183ee 2
maxint 0:3d0db4e183ee 3 Position::Position() : vPos(), pPrev(), pCur()
maxint 0:3d0db4e183ee 4 { // constructor
maxint 0:3d0db4e183ee 5
maxint 0:3d0db4e183ee 6 }
maxint 0:3d0db4e183ee 7
maxint 0:3d0db4e183ee 8 Point Position::getPrev()
maxint 0:3d0db4e183ee 9 {
maxint 0:3d0db4e183ee 10 return(pPrev);
maxint 0:3d0db4e183ee 11 }
maxint 0:3d0db4e183ee 12
maxint 0:3d0db4e183ee 13 Point Position::getCur()
maxint 0:3d0db4e183ee 14 {
maxint 0:3d0db4e183ee 15 return(pCur);
maxint 0:3d0db4e183ee 16 }
maxint 0:3d0db4e183ee 17
maxint 0:3d0db4e183ee 18 int Position::getX()
maxint 0:3d0db4e183ee 19 {
maxint 0:3d0db4e183ee 20 return(pCur.getX());
maxint 0:3d0db4e183ee 21 }
maxint 0:3d0db4e183ee 22 int Position::getY()
maxint 0:3d0db4e183ee 23 {
maxint 0:3d0db4e183ee 24 return(pCur.getY());
maxint 0:3d0db4e183ee 25 }
maxint 0:3d0db4e183ee 26
maxint 0:3d0db4e183ee 27 void Position::set(float x, float y)
maxint 0:3d0db4e183ee 28 {
maxint 0:3d0db4e183ee 29 pPrev=pCur;
maxint 0:3d0db4e183ee 30 vPos.x=x;
maxint 0:3d0db4e183ee 31 vPos.y=y;
maxint 0:3d0db4e183ee 32 pCur.set(rint(vPos.x), rint(vPos.y));
maxint 0:3d0db4e183ee 33 }
maxint 0:3d0db4e183ee 34
maxint 0:3d0db4e183ee 35 void Position::set(int x, int y)
maxint 0:3d0db4e183ee 36 {
maxint 0:3d0db4e183ee 37 set((float)x, (float)y);
maxint 0:3d0db4e183ee 38 }
maxint 0:3d0db4e183ee 39
maxint 0:3d0db4e183ee 40 void Position::set(Point ptNew)
maxint 0:3d0db4e183ee 41 {
maxint 0:3d0db4e183ee 42 set(ptNew.getX(), ptNew.getY());
maxint 0:3d0db4e183ee 43 }
maxint 0:3d0db4e183ee 44
maxint 0:3d0db4e183ee 45 void Position::setX(int x)
maxint 0:3d0db4e183ee 46 {
maxint 0:3d0db4e183ee 47 set((float)x, vPos.y);
maxint 0:3d0db4e183ee 48 }
maxint 0:3d0db4e183ee 49
maxint 0:3d0db4e183ee 50 void Position::setY(int y)
maxint 0:3d0db4e183ee 51 {
maxint 0:3d0db4e183ee 52 set(vPos.x, (float)y);
maxint 0:3d0db4e183ee 53 }
maxint 0:3d0db4e183ee 54
maxint 0:3d0db4e183ee 55 void Position::move(float fDiffX, float fDiffY)
maxint 0:3d0db4e183ee 56 {
maxint 0:3d0db4e183ee 57 pPrev=pCur;
maxint 0:3d0db4e183ee 58 vPos.x+=fDiffX;
maxint 0:3d0db4e183ee 59 vPos.y+=fDiffY;
maxint 0:3d0db4e183ee 60 pCur.set(rint(vPos.x), rint(vPos.y));
maxint 0:3d0db4e183ee 61 }
maxint 0:3d0db4e183ee 62
maxint 0:3d0db4e183ee 63 void Position::move(int nDiffX, int nDiffY)
maxint 0:3d0db4e183ee 64 {
maxint 0:3d0db4e183ee 65 move((float)nDiffX, (float)nDiffY);
maxint 0:3d0db4e183ee 66 }
maxint 0:3d0db4e183ee 67
maxint 0:3d0db4e183ee 68 void Position::move(Vector vDiff)
maxint 0:3d0db4e183ee 69 {
maxint 0:3d0db4e183ee 70 move(vDiff.x, vDiff.y);
maxint 0:3d0db4e183ee 71 }
maxint 0:3d0db4e183ee 72
maxint 0:3d0db4e183ee 73 bool Position::hasChanged()
maxint 0:3d0db4e183ee 74 {
maxint 0:3d0db4e183ee 75 //return(nPrevX!=nCurX || nPrevy!=nCury);
maxint 0:3d0db4e183ee 76 return(pPrev.getX()!=pCur.getX() || pPrev.getY()!=pCur.getY());
maxint 0:3d0db4e183ee 77 }
maxint 0:3d0db4e183ee 78
maxint 0:3d0db4e183ee 79 Dimension::Dimension()
maxint 0:3d0db4e183ee 80 {
maxint 0:3d0db4e183ee 81 nWidth=0;
maxint 0:3d0db4e183ee 82 nHeight=0;
maxint 0:3d0db4e183ee 83 }