diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index 583e548..f03d58f 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,3 +1,4 @@
+v1.0.173: Added support (beta) for G2/3 to the Simulator
v1.0.172: Fix spelling error (US vs UK English)
v1.0.171: Fix Keyboard-Jog Default Assignment bug
v1.0.170: MacOS: Fixes: Top Menu, Copy/Paste, Label for Port Name (remove /dev/tty to keep smaller)
diff --git a/app/js/updates.js b/app/js/updates.js
index 06b3904..dc0ac61 100644
--- a/app/js/updates.js
+++ b/app/js/updates.js
@@ -4,32 +4,32 @@ $(document).ready(function() {
});
function checkUpdate() {
- if (!isMac && webgl) {
- setTimeout(function() {
- // console.log('checking for update')
- printLog("[ update ] Checking for Updates")
- $.getJSON("https://api.github.com/repos/OpenBuilds/OpenBuilds-CONTROL/releases/latest?client_id=fbbb80debc1197222169&client_secret=7dc6e463422e933448f9a3a4150c8d2bbdd0f87c").done(function(release) {
- var availVersion = release.name.substr(1)
- var currentVersion = laststatus.driver.version
- // console.log(versionCompare(availVersion, currentVersion), availVersion, currentVersion);
- if (versionCompare(availVersion, currentVersion) == 1) {
- console.log('outdated')
- time = 10
- printLog("[ Update Available! ] OpenBuilds CONTROL " + availVersion + "
. is available now.")
- printLog("[ Update Available! ] Download will start in 10 seconds (cancel) ")
- printLog("[ Update Available! ] You will be prompted when its ready to be installed ")
- setTimeout(function() {
- updateTime();
- }, 1000);
- } else {
- printLog("[ update ] You are already running OpenBuilds CONTROL " + currentVersion + "")
- setTimeout(function() {
- checkUpdate()
- }, 15 * 60 * 1000) // 15 mins
- }
- });
- }, 1000)
- }
+ // if (!isMac && webgl) {
+ setTimeout(function() {
+ // console.log('checking for update')
+ printLog("[ update ] Checking for Updates")
+ $.getJSON("https://api.github.com/repos/OpenBuilds/OpenBuilds-CONTROL/releases/latest?client_id=fbbb80debc1197222169&client_secret=7dc6e463422e933448f9a3a4150c8d2bbdd0f87c").done(function(release) {
+ var availVersion = release.name.substr(1)
+ var currentVersion = laststatus.driver.version
+ // console.log(versionCompare(availVersion, currentVersion), availVersion, currentVersion);
+ if (versionCompare(availVersion, currentVersion) == 1) {
+ console.log('outdated')
+ time = 10
+ printLog("[ Update Available! ] OpenBuilds CONTROL " + availVersion + "
. is available now.")
+ printLog("[ Update Available! ] Download will start in 10 seconds (cancel) ")
+ printLog("[ Update Available! ] You will be prompted when its ready to be installed ")
+ setTimeout(function() {
+ updateTime();
+ }, 1000);
+ } else {
+ printLog("[ update ] You are already running OpenBuilds CONTROL " + currentVersion + "")
+ setTimeout(function() {
+ checkUpdate()
+ }, 15 * 60 * 1000) // 15 mins
+ }
+ });
+ }, 1000)
+ // }
}
diff --git a/app/lib/3dview/3dview.js b/app/lib/3dview/3dview.js
index 0538b98..c37a688 100644
--- a/app/lib/3dview/3dview.js
+++ b/app/lib/3dview/3dview.js
@@ -120,6 +120,7 @@ function sim(startindex) {
// timefactor = 1;
$('#simspeedval').text(timefactor);
var simIdx = startindex;
+ var arcIdx = 0;
$('#simstartbtn').attr('disabled', true);
$('#simstopbtn').attr('disabled', false);
$('#editorContextMenu').hide() // sometimes we launch sim(linenum) from the context menu... close it once running
@@ -133,13 +134,24 @@ function runSim() {
// $('#simgcode').html(object.userData.lines[simIdx].args.origtext);
if (object.userData.lines[simIdx].p2.arc) {
- console.log(object.userData.lines[simIdx])
+ //console.log(object.userData.lines[simIdx])
+ // not running arcs yet!
+ arcIdx = 0;
+ runSimArc()
+ // lets move on
+ // simIdx++;
+ // if (simIdx < object.userData.lines.length) {
+ // runSim();
+ // } else {
+ // simstop();
+ // }
} else {
-
var posx = object.userData.lines[simIdx].p2.x; //- (sizexmax/2);
var posy = object.userData.lines[simIdx].p2.y; //- (sizeymax/2);
var posz = object.userData.lines[simIdx].p2.z;
+ //console.log(posx, posy, posz, object.userData.lines[simIdx])
+
if (object.userData.lines[simIdx].args.isFake) {
if (object.userData.lines[simIdx].args.text.length < 1) {
var text = "empty line"
@@ -219,13 +231,16 @@ function runSim() {
};
function runSimArc() {
+
+ //var object = object.userData.lines[simIdx].p2.threeObjArc.object.userData.points[arcIdx]
+
// editor.gotoLine(simIdx + 1)
$('#gcodesent').html(simIdx + 1);
// $('#simgcode').html(object.userData.lines[simIdx].args.origtext);
- var posx = object.userData.lines[simIdx].p2.x; //- (sizexmax/2);
- var posy = object.userData.lines[simIdx].p2.y; //- (sizeymax/2);
- var posz = object.userData.lines[simIdx].p2.z;
-
+ var posx = object.userData.lines[simIdx].p2.threeObjArc.object.userData.points[arcIdx].x; //- (sizexmax/2);
+ var posy = object.userData.lines[simIdx].p2.threeObjArc.object.userData.points[arcIdx].y; //- (sizeymax/2);
+ var posz = object.userData.lines[simIdx].p2.threeObjArc.object.userData.points[arcIdx].z;
+ console.log(posx, posy, posz)
if (object.userData.lines[simIdx].args.isFake) {
if (object.userData.lines[simIdx].args.text.length < 1) {
var text = "empty line"
@@ -235,7 +250,7 @@ function runSimArc() {
var simTime = 0.01 / timefactor;
} else {
var text = object.userData.lines[simIdx].args.cmd
- var simTime = object.userData.lines[simIdx].p2.timeMins / timefactor;
+ var simTime = (object.userData.lines[simIdx].p2.timeMins / timefactor) / object.userData.lines[simIdx].p2.threeObjArc.object.userData.points.length;
}
if (object.userData.lines[simIdx].p2.feedrate == null) {
@@ -265,6 +280,7 @@ function runSimArc() {
`);
var simTimeInSec = simTime * 60;
// console.log(simTimeInSec)
+
if (!object.userData.lines[simIdx].args.isFake) {
TweenMax.to(cone.position, simTimeInSec, {
x: posx,
@@ -275,11 +291,12 @@ function runSimArc() {
//return
simstop();
} else {
- simIdx++;
- if (simIdx < object.userData.lines.length) {
- runSim();
+ arcIdx++;
+ if (simIdx < object.userData.lines[simIdx].p2.threeObjArc.object.userData.points.length) {
+ runSimArc();
} else {
- simstop();
+ simIdx++;
+ runSim();
}
}
}
diff --git a/app/lib/3dview/workers/gcodeparser.js b/app/lib/3dview/workers/gcodeparser.js
index d4f5068..f489414 100644
--- a/app/lib/3dview/workers/gcodeparser.js
+++ b/app/lib/3dview/workers/gcodeparser.js
@@ -429,13 +429,20 @@ GCodeParser = function(handlers, modecmdhandlers) {
var acgeo = new THREE.Geometry();
var ctr = 0;
var z = aZ;
+ var points = []
ac.getPoints(20).forEach(function(v) {
//console.log(v);
z = (((endaZ - aZ) / 20) * ctr) + aZ;
acgeo.vertices.push(new THREE.Vector3(v.x, v.y, z));
ctr++;
+ points.push({
+ 'x': v.x,
+ 'y': v.y,
+ 'z': z,
+ })
});
var aco = new THREE.Line(acgeo, acmat);
+ aco.userData.points = points;
//aco.position.set(pArc.x, pArc.y, pArc.z);
//console.log("aco:", aco);
this.extraObjects[plane].push(aco);
diff --git a/package.json b/package.json
index 26d5bdf..3e5957e 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "OpenBuildsCONTROL",
- "version": "1.0.172",
+ "version": "1.0.173",
"license": "AGPL-3.0",
"description": "Machine Interface Driver for OpenBuilds",
"author": "github.com/openbuilds ",