diff --git a/dependencies/bootstrap-slider/bootstrap-slider.css b/dependencies/bootstrap-slider/bootstrap-slider.css index 043a23414ea5eff21cd4a2f48870868cbfc86ef3..c061bf433c71d81836cd29fb09624617864e2886 100755 --- a/dependencies/bootstrap-slider/bootstrap-slider.css +++ b/dependencies/bootstrap-slider/bootstrap-slider.css @@ -29,8 +29,9 @@ position: relative; } .slider.slider-horizontal { - width: 210px; + width: 100%; height: 20px; + padding: 30px 0; } .slider.slider-horizontal .slider-track { height: 10px; diff --git a/js/cam/Assembler.js b/js/cam/Assembler.js index c8c0496f320dbbe707d088924f17fd48267f5fff..f8083f875ab92bb381b722c121495dbebbb22287 100644 --- a/js/cam/Assembler.js +++ b/js/cam/Assembler.js @@ -27,7 +27,8 @@ Assembler = Backbone.Model.extend({ rapidSpeeds:{xy: 3, z: 2},//rapids at clearance height feedRate:{xy: 0.1, z: 0.1},//speed when heading towards assembly - simLineNumber: 1//used for stock simulation, reading through gcode + simLineNumber: 1,//used for stock simulation, reading through gcode + simSpeed: 4//#X times real speed }, initialize: function(options){ @@ -126,7 +127,7 @@ Assembler = Backbone.Model.extend({ this.get("exporter").simulate(allLines[currentLine], this.get("machine"), this.get("originPosition"), function(){ currentLine++; - self.set("simLineNumber", currentLine); + self.set("simLineNumber", currentLine, {silent:true}); self._stockSimulation(); }); } else { diff --git a/js/cam/Machine.js b/js/cam/Machine.js index 7251123813516b210a0107faf2b335f40a0a766b..92f55857d28f5bcc886230921272c3bcce8efe91 100644 --- a/js/cam/Machine.js +++ b/js/cam/Machine.js @@ -4,11 +4,17 @@ function Machine() { - var mesh = new THREE.Mesh(new THREE.BoxGeometry(2,2,2)); - //dmaGlobals.three.sceneAdd(mesh); + var mesh = new THREE.Mesh(new THREE.BoxGeometry(2,2,2));//this._makeStock(); + dmaGlobals.three.sceneAdd(mesh); this.mesh = mesh; } +Machine.prototype._makeStock = function(){ + var mesh = DMAEdgeVoxPart.prototype._makeMeshForType(); + mesh.myPart = null; + return mesh; +}; + Machine.prototype.pause = function(){ }; @@ -21,6 +27,6 @@ Machine.prototype.moveTo = function(x, y, z, speed, wcs, callback){ if (z != "") self.mesh.position.z = parseFloat(z)+wcs.z; dmaGlobals.three.render(); return callback(); - }, 300); + }, 500/dmaGlobals.assembler.get("simSpeed")); }; \ No newline at end of file diff --git a/js/menus/AnimationMenuView.js b/js/menus/AnimationMenuView.js index 3a816996f45ed5c45a72cb380ad4bc6537ef6d3c..b5a553150a98300f8ca5bf0273cd4f9da5709486 100644 --- a/js/menus/AnimationMenuView.js +++ b/js/menus/AnimationMenuView.js @@ -12,7 +12,8 @@ AnimationMenuView = Backbone.View.extend({ "click #pauseStockSim": "_pauseStockSim", "click #resetStockSim": "_resetStockSim", "click #saveSendMenu": "_save", - "click #overrideEdits": "_postProcess" + "click #overrideEdits": "_postProcess", + "slideStop #speedSlider": "_changeSpeedSlider" }, initialize: function(){ @@ -57,24 +58,35 @@ AnimationMenuView = Backbone.View.extend({ dmaGlobals.assembler.set("simLineNumber", 1); }, + _changeSpeedSlider: function(e){ + dmaGlobals.assembler.set("simSpeed", $(e.target)[0].value); + }, + render: function(){ if (this.model.get("currentTab") != "animate") return; if (dmaGlobals.assembler.get("needsPostProcessing")) dmaGlobals.assembler.postProcess(); this.$el.html(this.template(_.extend(this.model.toJSON(), dmaGlobals.assembler.toJSON()))); + + $('#speedSlider').slider({ + formatter: function(value) { + return value + "X"; + } + }); }, template: _.template('\ <% if (stockSimulationPlaying){ %>\ - <a href="#" id="pauseStockSim" class=" btn btn-block btn-lg btn-warning">Pause</a><br/>\ + <a href="#" id="pauseStockSim" class=" btn btn-block btn-lg btn-warning">Pause</a>\ <% } else { %>\ <% if (simLineNumber != 1){ %>\ <a href="#" id="playStockSim" class=" btn btn-lg btn-halfWidth btn-success">Play</a>\ - <a href="#" id="resetStockSim" class=" btn btn-lg btn-halfWidth pull-right btn-default">Reset</a><br/><br/>\ + <a href="#" id="resetStockSim" class=" btn btn-lg btn-halfWidth pull-right btn-default">Reset</a><br/>\ <% } else { %>\ - <a href="#" id="playStockSim" class=" btn btn-block btn-lg btn-success">Play</a><br/>\ + <a href="#" id="playStockSim" class=" btn btn-block btn-lg btn-success">Play</a>\ <% } %>\ <% } %>\ - <a href="#" id="saveSendMenu" class=" btn btn-block btn-lg btn-default">Save</a><br/>\ + <input id="speedSlider" data-slider-id="speedSlider" type="text" data-slider-min="1" data-slider-max="10" data-slider-step="1" data-slider-value="<%= simSpeed %>"/>\ + <br/><a href="#" id="saveSendMenu" class=" btn btn-block btn-lg btn-default">Save</a><br/>\ Assembly Time: <br/><br/>\ <textarea id="gcodeEditor"><%= dataOut %></textarea><br/><br/>\ <a href="#" id="overrideEdits" class=" btn btn-block btn-lg btn-default">Undo Changes</a><br/>\