Tyler Altenhofen / MVC
Revision:
2:891b3618be4f
Parent:
1:bb1507f0bb64
Child:
5:d7d16cb9c974
--- a/main.cpp	Fri May 01 09:22:50 2015 +0000
+++ b/main.cpp	Fri May 01 10:12:55 2015 +0000
@@ -4,6 +4,7 @@
 #define NUMBER_OF_SLICES 360
 #include "Point.h"
 #include "View.h"
+#include "Block.h"
 
 
 //hass sensor interupt
@@ -28,6 +29,7 @@
 //the View
 View display;
 
+Block blocks [3];
 
 
 
@@ -35,6 +37,13 @@
 Serial pc(USBTX, USBRX); // tx, rx
 Serial bt(p9, p10);// tx, rx
 
+void updateMap(){
+    display.resetDisplay();
+    display.addBlock(blocks[0]);
+    display.addBlock(blocks[1]);
+    display.addBlock(blocks[2]);
+}
+
 void rotate_sense(){
   if (firstTime){
     rotationTime.reset();
@@ -86,10 +95,39 @@
 }
 
 void parseMapMode(char c){
-    
+    switch(c){
+        case 'w': 
+        for (int i = 0; i < 3; i ++){
+            blocks[i].moveOut();
+        }
+        updateMap();
+            break;
+        case 's':
+        for (int i = 0; i < 3; i ++){
+            blocks[i].moveIn();
+        }
+        updateMap();
+            break;
+        case 'a':
+        for (int i = 0; i < 3; i ++){
+            blocks[i].moveLeft();
+        }
+        updateMap();
+            break;
+        case 'd':
+        for (int i = 0; i < 3; i ++){
+            blocks[i].moveRight();
+        }
+        updateMap();
+            break;
+        case 'p':
+        return;
+        case 'l':
+        return;
+        default: return;
+    }
 }
 void parseEucMode(char c){
-        bt.printf("parseing EucMode");
         switch(c){
         case 'w': 
             eucPointer.moveAway();
@@ -113,9 +151,9 @@
     }
     Point startPoint = eucPointer.getPoint();
     Point endPoint = eucPointer.getEndPoint();
-    bt.printf("\r\n");
-    bt.printf("points%i , %i , %X \r\n", eucPointer.x, eucPointer.y,eucPointer.z);
-    bt.printf("drawingEucPointer Starting %i , %i , %X \r\n", startPoint.getArraySlice(), startPoint.getPositionDistance(),startPoint.getIdentifyingChar());
+    //bt.printf("\r\n");
+    //bt.printf("points%i , %i , %X \r\n", eucPointer.x, eucPointer.y,eucPointer.z);
+    //bt.printf("drawingEucPointer Starting %i , %i , %X \r\n", startPoint.getArraySlice(), startPoint.getPositionDistance(),startPoint.getIdentifyingChar());
     //bt.printf("drawingEucPointer Ending %i , %i , %X \r\n", endPoint.getArraySlice(), endPoint.getPositionDistance(),endPoint.getIdentifyingChar());
     display.addEucPoint(eucPointer);
 }
@@ -137,6 +175,7 @@
             case(eucDraw):{
                 mode = map;
                 bt.printf("we are on a Map");
+                updateMap();
                 break;
                 }
             default: {
@@ -160,6 +199,9 @@
 
 
 int main() {
+    blocks[0] = Block( 3, 4, 0, 4,6);
+    blocks[1] = Block ( -4, -4, 1 ,4, 3);
+    blocks[2] = Block ( 5, -7, 2 ,5, 4);
     pc.printf("started");
     bt.printf("bluetooth started");
     mode = eucDraw;