- TowerMapping[] towerCubes = new TowerMapping[] {};
-
- // Single cubes can be constructed directly here if you need them
- Cube[] singleCubes = new Cube[] {
- // new Cube(15, int( Cube.EDGE_HEIGHT), 39, 0, 10, 0, WRL), // Back left channel behind speaker
- //new Cube(x, y, z, rx, ry, rz, wiring),
- //new Cube(0,0,0,0,225,0, WRR),
- };
-
- // The bass box!
- // BassBox bassBox = BassBox.unlitBassBox(BBX, 0, BBZ); // frame exists, no lights
- BassBox bassBox = BassBox.noBassBox(); // no bass box at all
- // BassBox bassBox = new BassBox(BBX, 0, BBZ); // bass box with lights
-
- // The speakers!
- List<Speaker> speakers = Arrays.asList(new Speaker[] {
- // Each speaker parameter is x, y, z, rotation, the left speaker comes first
- // new Speaker(TRAILER_WIDTH - Speaker.EDGE_WIDTH + 8, 6, 3, -15)
- });
-
-
- ////////////////////////////////////////////////////////////////////////
- // dan's proposed lattice
- ArrayList<StaggeredTower> scubes = new ArrayList<StaggeredTower>();
- if (NumBackTowers != 11) exit();
- // for (int i=0; i<NumBackTowers; i++) scubes.add(new StaggeredTower(
- // (i+1)*CW, // x
- // (i % 2 == 0) ? 0 : CH * 2./3. , // y
- // - ((i % 2 == 0) ? 0 : 11) + 97 , // z
- // 225, (i % 2 == 0) ? MaxCubeHeight : MaxCubeHeight-1) ); // num cubes
-
- ArrayList<Cube> dcubes = new ArrayList<Cube>();
- // for (int i=1; i<6; i++) {
- // if (i>1) dcubes.add(new Cube(-6+CW*4/3*i , 0, 0, 0, 0, 0, WRR));
- // dcubes.add(new Cube(-6+CW*4/3*i+CW*2/3., CH*.5, 0, 0, 0, 0, WRR));
- // }
-
-scubes.add(new StaggeredTower(//tower 1
- 0, // x
- 0 , // y
- 0 , // z
- 0, 3, new Cube.Wiring[]{ WFR, WRL, WFR}));
-scubes.add(new StaggeredTower(// tower 2
- 22, // x
- 0 , // y
- 26 , // z
- 0, 3, new Cube.Wiring[]{ WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(//tower 3
- 27, // x
- 0 , // y
- 64, // z
- 0, 4, new Cube.Wiring[]{ WFR, WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(//tower 4
- 54, // x
- 7, // y
- 75.5 , // z
- 0, 4, new Cube.Wiring[]{ WFR, WRL, WFR, WRL}) );
-
-scubes.add(new StaggeredTower(//tower 5
- 75.5, // x
- 0 , // y
- 100.5 , // z
- 0, 4, new Cube.Wiring[]{ WRR, WFL, WRR, WFL}) );
-
-scubes.add(new StaggeredTower(//tower 6
- 93.5, // x
- 7 , // y
- 75.5, // z
- 0, 4, new Cube.Wiring[]{ WFR, WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(// tower 7
- 119, // x
- 0 , // y
- 56.5, // z
- 0, 4, new Cube.Wiring[]{ WRL, WFR, WRL, WFR}) );
-
-scubes.add(new StaggeredTower(//tower 8
- 136.5, // x
- 7 , // y
- 31.5 , // z
- 0, 4, new Cube.Wiring[]{ WFR, WRL, WFR, WRL}) );
-
-scubes.add(new StaggeredTower(//tower 9
- 161.5, // x
- 0 , // y
- 20 , // z
- 0, 4, new Cube.Wiring[]{ WFR, WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(//tower 10
- 176, // x
- 7 , // y
- -6.5 , // z
- 0, 3, new Cube.Wiring[]{ WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(// tower 11
- 202.5, // x
- 0 , // y
- -26.5, // z
- 0, 3, new Cube.Wiring[]{ WRL, WFR, WRL}) );
-scubes.add(new StaggeredTower(// tower 12 CENTER TOWER AT 45degrees
- 73, // x
- 0 , // y
- 58, // z
- -45, 4, new Cube.Wiring[]{ WFL, WRR, WFL, WRR}) );
-scubes.add(new StaggeredTower(// Single cube on top of tower 3
- 22, // x
- 81.5 , // y
- 39, // z
- -45, 1, new Cube.Wiring[]{ WFR}) );
-scubes.add(new StaggeredTower(// Single cube on top of tower 4
- 42, // x
- 112 , // y
- 72, // z
- -10, 1, new Cube.Wiring[]{ WRL}) );
-
-
-
-
-
-
-
- //////////////////////////////////////////////////////////////////////
- // BENEATH HERE SHOULD NOT REQUIRE ANY MODIFICATION!!!! //
- //////////////////////////////////////////////////////////////////////
-
- // These guts just convert the shorthand mappings into usable objects
- ArrayList<Tower> towerList = new ArrayList<Tower>();
- ArrayList<Cube> tower;
- Cube[] cubes = new Cube[100];
- int cubeIndex = 1;
- float px, pz, ny;
- for (TowerMapping tm : towerCubes) {
- px = tm.x;
- ny = tm.y;
- pz = tm.z;
- tower = new ArrayList<Cube>();
- for (CubeMapping cm : tm.cubeMappings) {
- tower.add(cubes[cubeIndex++] = new Cube(px = px + cm.dx, ny, pz = pz + cm.dz, 0, cm.ry, 0, cm.wiring));
- ny += Cube.EDGE_HEIGHT;