Speakers in the model and mapping
authorMark Slee <mcslee@Mark-Slees-MacBook-Pro.local>
Tue, 20 Aug 2013 08:57:31 +0000 (01:57 -0700)
committerMark Slee <mcslee@Mark-Slees-MacBook-Pro.local>
Tue, 20 Aug 2013 08:57:50 +0000 (01:57 -0700)
_Internals.pde
_Mappings.pde
code/GLucose.jar

index 9f75bafedaaa50ab7c7a1a14570fe91fa4444549..fbe7435ef00912e005cc54fa3189f20dc20184c3 100644 (file)
@@ -176,8 +176,10 @@ void draw() {
   endShape();
   
   noStroke();
-  fill(#393939);
   drawBassBox(glucose.model.bassBox);
+  for (Speaker s : glucose.model.speakers) {
+    drawSpeaker(s);
+  }
   for (Cube c : glucose.model.cubes) {
     drawCube(c);
   }
@@ -211,6 +213,16 @@ void draw() {
 
 void drawBassBox(BassBox b) {
   float in = .15;
+
+  noStroke();
+  fill(#191919);
+  pushMatrix();
+  translate(b.x + BassBox.EDGE_WIDTH/2., b.y + BassBox.EDGE_HEIGHT/2, b.z + BassBox.EDGE_DEPTH/2.);
+  box(BassBox.EDGE_WIDTH-20*in, BassBox.EDGE_HEIGHT-20*in, BassBox.EDGE_DEPTH-20*in);
+  popMatrix();
+
+  noStroke();
+  fill(#393939);
   drawBox(b.x+in, b.y+in, b.z+in, 0, 0, 0, BassBox.EDGE_WIDTH-in*2, BassBox.EDGE_HEIGHT-in*2, BassBox.EDGE_DEPTH-in*2, Cube.CHANNEL_WIDTH-in);
 
   pushMatrix();
@@ -232,13 +244,35 @@ void drawBassBox(BassBox b) {
   translate(BassBox.EDGE_WIDTH-2*in, 0, 0);
   box(0, BassBox.EDGE_HEIGHT - in*2, Cube.CHANNEL_WIDTH-in);
   popMatrix();
+  
 }
 
 void drawCube(Cube c) {
   float in = .15;
+  noStroke();
+  fill(#393939);  
   drawBox(c.x+in, c.y+in, c.z+in, c.rx, c.ry, c.rz, Cube.EDGE_WIDTH-in*2, Cube.EDGE_HEIGHT-in*2, Cube.EDGE_WIDTH-in*2, Cube.CHANNEL_WIDTH-in);
 }
 
+void drawSpeaker(Speaker s) {
+  float in = .15;
+  
+  noStroke();
+  fill(#191919);
+  pushMatrix();
+  translate(s.x, s.y, s.z);
+  rotate(s.ry / 180. * PI, 0, -1, 0);
+  translate(Speaker.EDGE_WIDTH/2., Speaker.EDGE_HEIGHT/2., Speaker.EDGE_DEPTH/2.);
+  box(Speaker.EDGE_WIDTH-20*in, Speaker.EDGE_HEIGHT-20*in, Speaker.EDGE_DEPTH-20*in);
+  popMatrix();
+  
+  
+  noStroke();
+  fill(#393939);  
+  drawBox(s.x+in, s.y+in, s.z+in, 0, s.ry, 0, Speaker.EDGE_WIDTH-in*2, Speaker.EDGE_HEIGHT-in*2, Speaker.EDGE_DEPTH-in*2, Cube.CHANNEL_WIDTH-in);
+}  
+
+
 void drawBox(float x, float y, float z, float rx, float ry, float rz, float xd, float yd, float zd, float sw) {
   pushMatrix();
   translate(x, y, z);
index 133a6215e6ea515068da1a3e6c641b049bdc3514..78f7b0e59f8088132e85fd9f16cc565a3ae3c2dc 100644 (file)
@@ -45,19 +45,20 @@ public Model buildModel() {
   
   TowerMapping[] mapping = new TowerMapping[] {
 
-    new TowerMapping(0, 0, 0, new float[][] {
-      {STACKED_RELATIVE, 0, 0},
-      {STACKED_RELATIVE, 5, -10, 20},
-      {STACKED_RELATIVE, 0, -6},
-      {STACKED_RELATIVE, -5, -2, -20},
-    }),
-
-    new TowerMapping(Cube.EDGE_WIDTH + 2, 0, 0, new float[][] {
-      {STACKED_RELATIVE, 0, 0},
-      {STACKED_RELATIVE, 0, 5, 10},
-      {STACKED_RELATIVE, 0, 2, 20},
-      {STACKED_RELATIVE, 0, 0, 30},
-    }),
+      // Front left cubes
+//    new TowerMapping(0, 0, 0, new float[][] {
+//      {STACKED_RELATIVE, 0, 0},
+//      {STACKED_RELATIVE, 5, -10, 20},
+//      {STACKED_RELATIVE, 0, -6},
+//      {STACKED_RELATIVE, -5, -2, -20},
+//    }),
+//
+//    new TowerMapping(Cube.EDGE_WIDTH + 2, 0, 0, new float[][] {
+//      {STACKED_RELATIVE, 0, 0},
+//      {STACKED_RELATIVE, 0, 5, 10},
+//      {STACKED_RELATIVE, 0, 2, 20},
+//      {STACKED_RELATIVE, 0, 0, 30},
+//    }),
     
     // Back Cubes behind DJ platform (in order of increasing x)
     new TowerMapping(50, 5, BASS_DEPTH, new float[][] {
@@ -148,21 +149,21 @@ public Model buildModel() {
       {STACKED_RELATIVE, 0, 2, 20},
     }),
 
-    new TowerMapping(200, 0, 0, new float[][] {
-      {STACKED_RELATIVE, 0, 10},
-      {STACKED_RELATIVE, 5, 0, 20},
-      {STACKED_RELATIVE, 0, 4},
-      {STACKED_RELATIVE, -5, 8, -20},
-      {STACKED_RELATIVE, 0, 3},
-    }),
+//    new TowerMapping(200, 0, 0, new float[][] {
+//      {STACKED_RELATIVE, 0, 10},
+//      {STACKED_RELATIVE, 5, 0, 20},
+//      {STACKED_RELATIVE, 0, 4},
+//      {STACKED_RELATIVE, -5, 8, -20},
+//      {STACKED_RELATIVE, 0, 3},
+//    }),
     
-    new TowerMapping(0, 0, Cube.EDGE_HEIGHT + 10, new float[][] {
-      {STACKED_RELATIVE, 10, 0, 40},
-      {STACKED_RELATIVE, 3, -2, 20},
-      {STACKED_RELATIVE, 0, 0, 40},
-      {STACKED_RELATIVE, 0, 0, 60},
-      {STACKED_RELATIVE, 0, 0, 40},
-    }),
+//    new TowerMapping(0, 0, Cube.EDGE_HEIGHT + 10, new float[][] {
+//      {STACKED_RELATIVE, 10, 0, 40},
+//      {STACKED_RELATIVE, 3, -2, 20},
+//      {STACKED_RELATIVE, 0, 0, 40},
+//      {STACKED_RELATIVE, 0, 0, 60},
+//      {STACKED_RELATIVE, 0, 0, 40},
+//    }),
     
     new TowerMapping(20, 0, 2*Cube.EDGE_HEIGHT + 18, new float[][] {
       {STACKED_RELATIVE, 0, 0, 40},
@@ -172,13 +173,13 @@ public Model buildModel() {
       {STACKED_RELATIVE, 12, 0, 40},
     }),
     
-    new TowerMapping(210, 0, Cube.EDGE_HEIGHT + 15, new float[][] {
-      {STACKED_RELATIVE, 0, 0, 40},
-      {STACKED_RELATIVE, 5, 0, 20},
-      {STACKED_RELATIVE, 8, 0, 40},
-      {STACKED_RELATIVE, 3, 0, 60},
-      {STACKED_RELATIVE, 0, 0, 40},
-    }),
+//    new TowerMapping(210, 0, Cube.EDGE_HEIGHT + 15, new float[][] {
+//      {STACKED_RELATIVE, 0, 0, 40},
+//      {STACKED_RELATIVE, 5, 0, 20},
+//      {STACKED_RELATIVE, 8, 0, 40},
+//      {STACKED_RELATIVE, 3, 0, 60},
+//      {STACKED_RELATIVE, 0, 0, 40},
+//    }),
     
     new TowerMapping(210, 0, 2*Cube.EDGE_HEIGHT + 25, new float[][] {
       {STACKED_RELATIVE, 0, 0, 40},
@@ -218,8 +219,12 @@ public Model buildModel() {
   }
 
   BassBox bassBox = new BassBox(56, 0, 2);
-       
-  return new Model(towerList, cubes, bassBox);
+
+  List<Speaker> speakers = new ArrayList<Speaker>();
+  speakers.add(new Speaker(0, 6, 0, 15));
+  speakers.add(new Speaker(TRAILER_WIDTH - Speaker.EDGE_WIDTH, 6, 6, -15));
+
+  return new Model(towerList, cubes, bassBox, speakers);
 }
 
 public PandaMapping[] buildPandaList() {
@@ -242,10 +247,10 @@ public PandaMapping[] buildPandaList() {
       { 37, 38, 39, 40 }, // ch10
       { 41, 42, 43, 44 }, // ch11
       { 45, 46, 47, 48 }, // ch12
-      { 49, 50, 51, 52 }, // ch13
-      { 53, 54, 55, 56 }, // ch14
-      { 57, 58, 59, 60 }, // ch15
-      { 61, 62, 63, 64 }, // ch16
+      { 33, 34, 35, 36 }, // ch13
+      { 37, 38, 39, 40 }, // ch14
+      { 41, 42, 43, 44 }, // ch15
+      { 45, 46, 47, 48 }, // ch16
     }),
     
   };
index 14710c1e4205d90f629bac80c02cb947c34a1ddd..34e8f52e067abe2550b99da8fc76fd6a24442089 100644 (file)
Binary files a/code/GLucose.jar and b/code/GLucose.jar differ