/** * User: hudbrog (hudbrog@gmail.com) * Date: 10/21/12 * Time: 7:31 AM */ GCODE.gCodeReader = (function(){ // ***** PRIVATE ****** var gcode, lines; var z_heights = {}; var model = []; var max = {x: undefined, y: undefined, z: undefined}; var min = {x: undefined, y: undefined, z: undefined}; var modelSize = {x: undefined, y: undefined, z: undefined}; var filamentByLayer = {}; var printTimeByLayer; var totalFilament=0; var printTime=0; var speeds = {}; var speedsByLayer = {}; var gCodeOptions = { sortLayers: false, purgeEmptyLayers: true, analyzeModel: false }; var linesCmdIndex = {}; var prepareGCode = function(){ if(!lines)return; gcode = []; var i, tmp; for(i=0;i 1 || tmp === -1) { gcode.push(lines[i]); } } lines = []; // console.log("GCode prepared"); }; var sortLayers = function(){ var sortedZ = []; var tmpModel = []; // var cnt = 0; // console.log(z_heights); for(var layer in z_heights){ sortedZ[z_heights[layer]] = layer; // cnt++; } // console.log("cnt is " + cnt); sortedZ.sort(function(a,b){ return a-b; }); // console.log(sortedZ); // console.log(model.length); for(var i=0;i