Mini projet LOO
Dependencies: mbed APDS_9960 mbed-rtos
Home du projet
src/cEl.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:
- 12:7afdbc7465ac
Mouvements et gestion de la descente OK pour le "L"
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Willheisen | 3:493dd1cf30a4 | 1 | // Définition de la classe El |
Willheisen | 3:493dd1cf30a4 | 2 | |
Willheisen | 3:493dd1cf30a4 | 3 | #include "cEl.h" |
Willheisen | 3:493dd1cf30a4 | 4 | |
Willheisen | 9:6f3d8b714a59 | 5 | cEl::cEl() |
Willheisen | 9:6f3d8b714a59 | 6 | { |
Willheisen | 9:6f3d8b714a59 | 7 | // variables à 0 |
Willheisen | 9:6f3d8b714a59 | 8 | _positionX = 0; |
Willheisen | 9:6f3d8b714a59 | 9 | _positionY = 0; |
Willheisen | 9:6f3d8b714a59 | 10 | _orientation = 1; |
Willheisen | 9:6f3d8b714a59 | 11 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 12 | // |1|2|3| |
Willheisen | 9:6f3d8b714a59 | 13 | // |0| |
Willheisen | 9:6f3d8b714a59 | 14 | _Leds[0].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 15 | _Leds[0].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 16 | _Leds[1].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 17 | _Leds[1].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 18 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 19 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 20 | _Leds[3].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 21 | _Leds[3].setPositionY(_positionY); |
Willheisen | 11:c37922a0a915 | 22 | |
Willheisen | 3:493dd1cf30a4 | 23 | } |
Willheisen | 3:493dd1cf30a4 | 24 | |
Willheisen | 9:6f3d8b714a59 | 25 | cEl::cEl(unsigned char x, unsigned char y) |
Willheisen | 9:6f3d8b714a59 | 26 | { |
Willheisen | 9:6f3d8b714a59 | 27 | // variables à 0 |
Willheisen | 9:6f3d8b714a59 | 28 | _positionX = x; |
Willheisen | 9:6f3d8b714a59 | 29 | _positionY = y; |
Willheisen | 11:c37922a0a915 | 30 | |
Willheisen | 9:6f3d8b714a59 | 31 | _orientation = 1; |
Willheisen | 9:6f3d8b714a59 | 32 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 33 | // |1|2|3| |
Willheisen | 9:6f3d8b714a59 | 34 | // |0| |
Willheisen | 9:6f3d8b714a59 | 35 | _Leds[0].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 36 | _Leds[0].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 37 | _Leds[1].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 38 | _Leds[1].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 39 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 40 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 41 | _Leds[3].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 42 | _Leds[3].setPositionY(_positionY); |
Willheisen | 11:c37922a0a915 | 43 | for(unsigned char i = 0; i<4;i++) |
Willheisen | 11:c37922a0a915 | 44 | { |
Willheisen | 11:c37922a0a915 | 45 | _Leds[i].setOldPositionX(_Leds[i].getPositionX()); |
Willheisen | 11:c37922a0a915 | 46 | } |
Willheisen | 11:c37922a0a915 | 47 | for(unsigned char i = 0; i<4;i++) |
Willheisen | 11:c37922a0a915 | 48 | { |
Willheisen | 11:c37922a0a915 | 49 | _Leds[i].setOldPositionY(_Leds[i].getPositionY()); |
Willheisen | 11:c37922a0a915 | 50 | } |
Willheisen | 11:c37922a0a915 | 51 | //////////////////////////////////////////////////////// |
Willheisen | 11:c37922a0a915 | 52 | _typeForme = 4; |
clementdoreau | 7:4b283e36b147 | 53 | } |
clementdoreau | 7:4b283e36b147 | 54 | |
clementdoreau | 7:4b283e36b147 | 55 | |
Willheisen | 3:493dd1cf30a4 | 56 | |
Willheisen | 9:6f3d8b714a59 | 57 | void cEl::rotationHoraire() |
Willheisen | 9:6f3d8b714a59 | 58 | { |
clementdoreau | 10:9ef3f520ff6c | 59 | // Sauvegarde des anciennes positions |
Willheisen | 11:c37922a0a915 | 60 | for (unsigned char i = 0; i < 4; i++) { |
clementdoreau | 10:9ef3f520ff6c | 61 | _Leds[i].setOldPositionX(_Leds[i].getPositionX()); |
clementdoreau | 10:9ef3f520ff6c | 62 | _Leds[i].setOldPositionY(_Leds[i].getPositionY()); |
clementdoreau | 10:9ef3f520ff6c | 63 | } |
clementdoreau | 10:9ef3f520ff6c | 64 | |
Willheisen | 9:6f3d8b714a59 | 65 | switch (_orientation) { |
Willheisen | 9:6f3d8b714a59 | 66 | case 1: |
Willheisen | 9:6f3d8b714a59 | 67 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 68 | // |0|1| |
Willheisen | 9:6f3d8b714a59 | 69 | // |2| |
Willheisen | 9:6f3d8b714a59 | 70 | // |3| |
Willheisen | 9:6f3d8b714a59 | 71 | _Leds[0].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 72 | _Leds[0].setPositionY(_positionY - 1); |
Willheisen | 9:6f3d8b714a59 | 73 | _Leds[1].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 74 | _Leds[1].setPositionY(_positionY - 1); |
Willheisen | 9:6f3d8b714a59 | 75 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 76 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 77 | _Leds[3].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 78 | _Leds[3].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 79 | _orientation = 2; |
Willheisen | 9:6f3d8b714a59 | 80 | break; |
Willheisen | 9:6f3d8b714a59 | 81 | case 2: |
Willheisen | 9:6f3d8b714a59 | 82 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 83 | // |0| |
Willheisen | 9:6f3d8b714a59 | 84 | // |3|2|1| |
Willheisen | 9:6f3d8b714a59 | 85 | _Leds[0].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 86 | _Leds[0].setPositionY(_positionY - 1); |
Willheisen | 9:6f3d8b714a59 | 87 | _Leds[1].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 88 | _Leds[1].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 89 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 90 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 91 | _Leds[3].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 92 | _Leds[3].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 93 | _orientation = 3; |
Willheisen | 9:6f3d8b714a59 | 94 | break; |
Willheisen | 9:6f3d8b714a59 | 95 | case 3: |
Willheisen | 9:6f3d8b714a59 | 96 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 97 | // |3| |
Willheisen | 9:6f3d8b714a59 | 98 | // |2| |
Willheisen | 9:6f3d8b714a59 | 99 | // |1|0| |
Willheisen | 9:6f3d8b714a59 | 100 | _Leds[0].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 101 | _Leds[0].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 102 | _Leds[1].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 103 | _Leds[1].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 104 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 105 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 106 | _Leds[3].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 107 | _Leds[3].setPositionY(_positionY - 1); |
Willheisen | 9:6f3d8b714a59 | 108 | _orientation = 4; |
Willheisen | 9:6f3d8b714a59 | 109 | break; |
Willheisen | 3:493dd1cf30a4 | 110 | |
Willheisen | 9:6f3d8b714a59 | 111 | case 4: |
Willheisen | 9:6f3d8b714a59 | 112 | // Positionnement des leds |
Willheisen | 9:6f3d8b714a59 | 113 | // |1|2|3| |
Willheisen | 9:6f3d8b714a59 | 114 | // |0| |
Willheisen | 9:6f3d8b714a59 | 115 | _Leds[0].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 116 | _Leds[0].setPositionY(_positionY + 1); |
Willheisen | 9:6f3d8b714a59 | 117 | _Leds[1].setPositionX(_positionX - 1); |
Willheisen | 9:6f3d8b714a59 | 118 | _Leds[1].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 119 | _Leds[2].setPositionX(_positionX); |
Willheisen | 9:6f3d8b714a59 | 120 | _Leds[2].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 121 | _Leds[3].setPositionX(_positionX + 1); |
Willheisen | 9:6f3d8b714a59 | 122 | _Leds[3].setPositionY(_positionY); |
Willheisen | 9:6f3d8b714a59 | 123 | _orientation = 1; |
Willheisen | 9:6f3d8b714a59 | 124 | break; |
Willheisen | 9:6f3d8b714a59 | 125 | default: |
Willheisen | 9:6f3d8b714a59 | 126 | break; |
Willheisen | 9:6f3d8b714a59 | 127 | } |
clementdoreau | 7:4b283e36b147 | 128 | } |
clementdoreau | 7:4b283e36b147 | 129 |