diff --git a/js/cam/Assembler.js b/js/cam/Assembler.js index d80a1d465589e5215c0f2562a2ef2c0a87874710..adf2320bf7a9b6b80c2d9ffe96c43613d985fea3 100644 --- a/js/cam/Assembler.js +++ b/js/cam/Assembler.js @@ -126,9 +126,10 @@ Assembler = Backbone.Model.extend({ }, _setCAMScale: function(){ - var scale = dmaGlobals.lattice.get("scale")/8; - this.get("origin").scale.set(scale, scale, scale); - this.get("stock").scale.set(scale, scale, scale); + var scale = dmaGlobals.lattice.get("scale"); + this.get("origin").scale.set(scale/8, scale/8, scale/8); + this.get("stock").scale.set(scale/8, scale/8, scale/8); + this.get("machine").setScale(scale); }, _tabChanged: function(){ diff --git a/js/cam/Machine.js b/js/cam/Machine.js index b279257650f37cb0280a4839e9325b83864008fc..17a1c366e73327bf40af402d7efe7dbd3d0b70d5 100644 --- a/js/cam/Machine.js +++ b/js/cam/Machine.js @@ -47,8 +47,15 @@ Machine.prototype._setMeshesVisiblity = function(visible){ _.each(_.values(this.meshes), function(mesh){ mesh.visible = visible; }); + if (visible) this.setScale(dmaGlobals.lattice.get("scale")); }; +Machine.prototype.setScale = function(scale){ + _.each(_.values(this.meshes), function(mesh){ + mesh.scale.set(scale, scale, scale); + }); +} + Machine.prototype._makeStockCell = function(){ return dmaGlobals.lattice.makeCellForLatticeType(null, dmaGlobals.lattice.get("scale")); }; @@ -246,7 +253,7 @@ Shopbot.prototype._buildMeshes = function(callback){ var material = this.material; (new THREE.STLLoader()).load("assets/stls/shopbot/shopbotEndEffector.stl", function(geometry){ geometry.computeBoundingBox(); - var unitScale = 1.5/geometry.boundingBox.max.y; + var unitScale = 1.5/geometry.boundingBox.max.y/2.78388; geometry.applyMatrix(new THREE.Matrix4().makeScale(unitScale, unitScale, unitScale)); geometry.applyMatrix(new THREE.Matrix4().makeTranslation(0,0, Math.sqrt(2)/2)); var mesh = new THREE.Mesh(geometry, material); diff --git a/js/cam/MachineOneBit.js b/js/cam/MachineOneBit.js index 8964b1a257f68f7e0615f7c318a9f49adc988996..5b54aa4b3d21ea91993d551193cc1174584847a4 100644 --- a/js/cam/MachineOneBit.js +++ b/js/cam/MachineOneBit.js @@ -25,30 +25,30 @@ OneBitBot.prototype._buildMeshes = function(callback){ return numMeshes <= 0; } function geometryScale(geometry){ - var unitScale = 0.05; + var unitScale = 0.05/2.78388; geometry.applyMatrix(new THREE.Matrix4().makeScale(unitScale, unitScale, unitScale)); return geometry; } var material = this.material; function meshPrep(geometry, name){ - geometry.applyMatrix(new THREE.Matrix4().makeTranslation(-10,-12.8-1.39194,0)); + geometry.applyMatrix(new THREE.Matrix4().makeTranslation(-10/2.78388,(-12.8-1.39194)/2.78388,0)); meshes[name] = new THREE.Mesh(geometry, material); if (allLoaded()) callback(meshes); } var loader = new THREE.STLLoader(); loader.load("assets/stls/oneBitBot/zAxis.stl", function(geometry){ geometryScale(geometry); - geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5,-2.4+1.39194,-0.8-1.9685)); + geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5/2.78388,(-2.4+1.39194)/2.78388,(-0.8-1.9685)/2.78388)); meshPrep(geometry, "zAxis"); }); loader.load("assets/stls/oneBitBot/zDrive.stl", function(geometry){ geometryScale(geometry); - geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5,-2.4+1.39194,0)); + geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5/2.78388,(-2.4+1.39194)/2.78388,0)); meshPrep(geometry, "zDrive"); }); loader.load("assets/stls/oneBitBot/yAxisMount.stl", function(geometry){ geometryScale(geometry); - geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5,0,0)); + geometry.applyMatrix(new THREE.Matrix4().makeTranslation(5/2.78388,0,0)); meshPrep(geometry, "yAxisMount"); }); loader.load("assets/stls/oneBitBot/basePlate.stl", function(geometry){