瀏覽代碼

Update some stuff.

Lee Morgan 1 年之前
父節點
當前提交
0c038184cd
共有 3 個文件被更改,包括 18 次插入24 次删除
  1. 3 1
      views/objects/board.js
  2. 0 2
      views/objects/setup.js
  3. 15 21
      views/workbench/workbench.js

+ 3 - 1
views/objects/board.js

@@ -2,7 +2,7 @@ import * as three from "three";
 import {CSS2DObject} from "2dRenderer";
 
 export default class Board{
-    constructor(scene, width, height, length){
+    constructor(scene, width, height, length, boardList){
         this.scene = scene;
         this.width = width;
         this.height = height;
@@ -23,6 +23,8 @@ export default class Board{
         this.label = this.createLabel(board);
 
         scene.add(this.board);
+
+        if(boardList) boardList.push(this);
     }
 
     translate(x, y, z){

+ 0 - 2
views/objects/setup.js

@@ -2,8 +2,6 @@ import * as three from "three";
 import {OrbitControls} from "orbitControls";
 import {CSS2DRenderer} from "2dRenderer";
 
-import Board from "board";
-
 const canvas = document.getElementById("canvas");
 const renderer = new three.WebGLRenderer({antialias: true, canvas});
 

+ 15 - 21
views/workbench/workbench.js

@@ -6,52 +6,44 @@ scene.add(container);
 
 const boards = [];
 
-createLegs(boards);
-let tableTop = new Board(scene, 2, 36, 72);
+createLegs();
+let tableTop = new Board(scene, 2, 36, 72, boards);
 tableTop.translate(0, 18 + (tableTop.width / 2), 0);
 tableTop.rotate(0, 90, 90);
 
 //Creating edge boards with 2x4
-let borderOne = new Board(scene, 2, 4, 72);
+let borderOne = new Board(scene, 2, 4, 72, boards);
 borderOne.translate(0, 16, 17);
 borderOne.rotate(0, 90, 0);
-let borderTwo = new Board(scene, 2, 4, 72);
+let borderTwo = new Board(scene, 2, 4, 72, boards);
 borderTwo.translate(0, 16, -17);
 borderTwo.rotate(0, 90, 0);
-let borderThree = new Board(scene, 2, 4, 32);
+let borderThree = new Board(scene, 2, 4, 32, boards);
 borderThree.translate(35, 16, 0);
-let borderFour = new Board(scene, 2, 4, 32);
+let borderFour = new Board(scene, 2, 4, 32, boards);
 borderFour.translate(-35, 16, 0);
 
 //Add shelf
-let shelf = new Board(scene, 1, 24, 60);
+let shelf = new Board(scene, 1, 24, 60, boards);
 shelf.translate(0, -3.5, 0);
 shelf.rotate(0, 90, 90);
-let shelfSupportOne = new Board(scene, 2, 4, 32);
+let shelfSupportOne = new Board(scene, 2, 4, 32, boards);
 shelfSupportOne.translate(-29, -6, 0);
-let shelfSupportTwo = new Board(scene, 2, 4, 32);
+let shelfSupportTwo = new Board(scene, 2, 4, 32, boards);
 shelfSupportTwo.translate(29, -6, 0);
-let shelfSupportThree = new Board(scene, 2, 4, 56);
+let shelfSupportThree = new Board(scene, 2, 4, 56, boards);
 shelfSupportThree.translate(0, -6, 11);
 shelfSupportThree.rotate(0, 90, 0);
-let shelfSupportFour = new Board(scene, 2, 4, 56);
+let shelfSupportFour = new Board(scene, 2, 4, 56, boards);
 shelfSupportFour.translate(0, -6, -11);
 shelfSupportFour.rotate(0, 90, 0);
 
-boards.push(
-    tableTop,
-    borderOne, borderTwo, borderThree, borderFour,
-    shelf,
-    shelfSupportOne, shelfSupportTwo, shelfSupportThree, shelfSupportFour
-);
-
-function createLegs(boards){
+function createLegs(){
     let legs = [];
     for(let i = 0; i < 4; i++){
-        let leg = new Board(scene, 4, 4, 36);
+        let leg = new Board(scene, 4, 4, 36, boards);
         leg.rotate(90, 0, 0);
         legs.push(leg);
-        boards.push(leg);
     }
 
     let posX = 32;
@@ -63,3 +55,5 @@ function createLegs(boards){
 
     return legs;
 }
+
+compute(boards);