Mini projet LOO
Dependencies: mbed APDS_9960 mbed-rtos
Home du projet
src/cForme.cpp@11:c37922a0a915, 2016-04-10 (annotated)
- Committer:
- Willheisen
- Date:
- Sun Apr 10 17:46:03 2016 +0000
- Revision:
- 11:c37922a0a915
- Parent:
- 10:9ef3f520ff6c
- Child:
- 29:95469b25e187
Mouvements et gestion de la descente OK pour le "L"
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
clementdoreau | 0:b2acac6abf2b | 1 | #include "cForme.h" |
clementdoreau | 0:b2acac6abf2b | 2 | |
Willheisen | 9:6f3d8b714a59 | 3 | cForme::cForme() |
Willheisen | 9:6f3d8b714a59 | 4 | { |
clementdoreau | 7:4b283e36b147 | 5 | |
clementdoreau | 7:4b283e36b147 | 6 | } |
clementdoreau | 7:4b283e36b147 | 7 | |
Willheisen | 9:6f3d8b714a59 | 8 | cForme::~cForme() |
Willheisen | 9:6f3d8b714a59 | 9 | { |
clementdoreau | 7:4b283e36b147 | 10 | |
clementdoreau | 7:4b283e36b147 | 11 | } |
clementdoreau | 7:4b283e36b147 | 12 | // GETTERS |
clementdoreau | 7:4b283e36b147 | 13 | |
Willheisen | 9:6f3d8b714a59 | 14 | unsigned char cForme::getOrientation() |
Willheisen | 9:6f3d8b714a59 | 15 | { |
Willheisen | 9:6f3d8b714a59 | 16 | return _orientation; |
clementdoreau | 0:b2acac6abf2b | 17 | } |
clementdoreau | 0:b2acac6abf2b | 18 | |
Willheisen | 9:6f3d8b714a59 | 19 | unsigned char cForme::getPositionX() |
Willheisen | 9:6f3d8b714a59 | 20 | { |
Willheisen | 9:6f3d8b714a59 | 21 | return _positionX; |
clementdoreau | 7:4b283e36b147 | 22 | } |
clementdoreau | 1:ab5f440f4156 | 23 | |
Willheisen | 9:6f3d8b714a59 | 24 | unsigned char cForme::getPositionY() |
Willheisen | 9:6f3d8b714a59 | 25 | { |
Willheisen | 9:6f3d8b714a59 | 26 | return _positionY; |
clementdoreau | 0:b2acac6abf2b | 27 | } |
clementdoreau | 0:b2acac6abf2b | 28 | |
clementdoreau | 10:9ef3f520ff6c | 29 | unsigned char cForme::getOldPositionX() |
clementdoreau | 10:9ef3f520ff6c | 30 | { |
clementdoreau | 10:9ef3f520ff6c | 31 | return _oldPositionX; |
clementdoreau | 10:9ef3f520ff6c | 32 | } |
clementdoreau | 10:9ef3f520ff6c | 33 | |
clementdoreau | 10:9ef3f520ff6c | 34 | unsigned char cForme::getOldPositionY() |
clementdoreau | 10:9ef3f520ff6c | 35 | { |
clementdoreau | 10:9ef3f520ff6c | 36 | return _oldPositionY; |
clementdoreau | 10:9ef3f520ff6c | 37 | } |
clementdoreau | 10:9ef3f520ff6c | 38 | |
clementdoreau | 10:9ef3f520ff6c | 39 | cLed &cForme::getLed(unsigned char i) |
Willheisen | 9:6f3d8b714a59 | 40 | { |
Willheisen | 9:6f3d8b714a59 | 41 | return _Leds[i]; |
clementdoreau | 7:4b283e36b147 | 42 | } |
Willheisen | 11:c37922a0a915 | 43 | //////////////////////////////////////////////////// |
Willheisen | 11:c37922a0a915 | 44 | unsigned char cForme::getTypeForme() |
Willheisen | 11:c37922a0a915 | 45 | { |
Willheisen | 11:c37922a0a915 | 46 | return _typeForme; |
Willheisen | 11:c37922a0a915 | 47 | } |
clementdoreau | 7:4b283e36b147 | 48 | |
clementdoreau | 7:4b283e36b147 | 49 | // SETTERS |
Willheisen | 9:6f3d8b714a59 | 50 | void cForme::setOrientation(unsigned char orientation) |
Willheisen | 9:6f3d8b714a59 | 51 | { |
Willheisen | 9:6f3d8b714a59 | 52 | _orientation = orientation; |
clementdoreau | 1:ab5f440f4156 | 53 | } |
clementdoreau | 1:ab5f440f4156 | 54 | |
Willheisen | 9:6f3d8b714a59 | 55 | void cForme::setPositionX(unsigned char x) |
Willheisen | 9:6f3d8b714a59 | 56 | { |
Willheisen | 9:6f3d8b714a59 | 57 | _positionX = x; |
clementdoreau | 7:4b283e36b147 | 58 | } |
Willheisen | 9:6f3d8b714a59 | 59 | void cForme::setPositionY(unsigned char y) |
Willheisen | 9:6f3d8b714a59 | 60 | { |
Willheisen | 9:6f3d8b714a59 | 61 | _positionY = y; |
clementdoreau | 0:b2acac6abf2b | 62 | } |
clementdoreau | 0:b2acac6abf2b | 63 | |
clementdoreau | 10:9ef3f520ff6c | 64 | void cForme::setOldPositionX(unsigned char x) |
clementdoreau | 10:9ef3f520ff6c | 65 | { |
clementdoreau | 10:9ef3f520ff6c | 66 | _oldPositionX = x; |
clementdoreau | 10:9ef3f520ff6c | 67 | } |
clementdoreau | 10:9ef3f520ff6c | 68 | |
clementdoreau | 10:9ef3f520ff6c | 69 | void cForme::setOldPositionY(unsigned char y) |
clementdoreau | 10:9ef3f520ff6c | 70 | { |
clementdoreau | 10:9ef3f520ff6c | 71 | _oldPositionY = y; |
clementdoreau | 10:9ef3f520ff6c | 72 | } |
clementdoreau | 10:9ef3f520ff6c | 73 | |
clementdoreau | 7:4b283e36b147 | 74 | // METHODES |
clementdoreau | 7:4b283e36b147 | 75 | |
clementdoreau | 7:4b283e36b147 | 76 | // Description: |
clementdoreau | 7:4b283e36b147 | 77 | // Décalage d'1 case vers le bas |
Willheisen | 9:6f3d8b714a59 | 78 | void cForme::deplacementBas() |
Willheisen | 11:c37922a0a915 | 79 | { |
Willheisen | 9:6f3d8b714a59 | 80 | for (unsigned char i = 0; i < 4; i++) { |
Willheisen | 11:c37922a0a915 | 81 | _Leds[i].setOldPositionX(_Leds[i].getPositionX()); |
clementdoreau | 10:9ef3f520ff6c | 82 | _Leds[i].setOldPositionY(_Leds[i].getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 83 | _Leds[i].setPositionY(_Leds[i].getPositionY() + 1); |
Willheisen | 9:6f3d8b714a59 | 84 | } |
Willheisen | 11:c37922a0a915 | 85 | setOldPositionX(getPositionX()); |
clementdoreau | 10:9ef3f520ff6c | 86 | setOldPositionY(getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 87 | setPositionY(getPositionY() + 1); |
clementdoreau | 0:b2acac6abf2b | 88 | } |
clementdoreau | 0:b2acac6abf2b | 89 | |
Willheisen | 11:c37922a0a915 | 90 | |
Willheisen | 9:6f3d8b714a59 | 91 | // Description: |
Willheisen | 9:6f3d8b714a59 | 92 | // Décalage d'1 case vers la droite |
Willheisen | 9:6f3d8b714a59 | 93 | void cForme::deplacementDroite() |
Willheisen | 11:c37922a0a915 | 94 | { |
Willheisen | 9:6f3d8b714a59 | 95 | for (unsigned char i = 0; i < 4; i++) { |
clementdoreau | 10:9ef3f520ff6c | 96 | _Leds[i].setOldPositionX(_Leds[i].getPositionX()); |
Willheisen | 11:c37922a0a915 | 97 | _Leds[i].setOldPositionY(_Leds[i].getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 98 | _Leds[i].setPositionX(_Leds[i].getPositionX() + 1); |
Willheisen | 11:c37922a0a915 | 99 | |
Willheisen | 9:6f3d8b714a59 | 100 | } |
clementdoreau | 10:9ef3f520ff6c | 101 | setOldPositionX(getPositionX()); |
Willheisen | 11:c37922a0a915 | 102 | setOldPositionY(getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 103 | setPositionX(getPositionX() + 1); |
Willheisen | 9:6f3d8b714a59 | 104 | } |
clementdoreau | 0:b2acac6abf2b | 105 | |
Willheisen | 9:6f3d8b714a59 | 106 | // Description: |
Willheisen | 9:6f3d8b714a59 | 107 | // Décalage d'1 case vers la gauche |
Willheisen | 9:6f3d8b714a59 | 108 | void cForme::deplacementGauche() |
Willheisen | 11:c37922a0a915 | 109 | { |
Willheisen | 9:6f3d8b714a59 | 110 | for (unsigned char i = 0; i < 4; i++) { |
clementdoreau | 10:9ef3f520ff6c | 111 | _Leds[i].setOldPositionX(_Leds[i].getPositionX()); |
Willheisen | 11:c37922a0a915 | 112 | _Leds[i].setOldPositionY(_Leds[i].getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 113 | _Leds[i].setPositionX(_Leds[i].getPositionX() - 1); |
Willheisen | 9:6f3d8b714a59 | 114 | } |
clementdoreau | 10:9ef3f520ff6c | 115 | setOldPositionX(getPositionX()); |
Willheisen | 11:c37922a0a915 | 116 | setOldPositionY(getPositionY()); |
Willheisen | 9:6f3d8b714a59 | 117 | setPositionX(getPositionX() - 1); |
Willheisen | 9:6f3d8b714a59 | 118 | } |
clementdoreau | 7:4b283e36b147 | 119 | |
Willheisen | 9:6f3d8b714a59 | 120 | void cForme::rotationHoraire() {} |