From cd81d6052f70519c12fa4d6211029afca12449a7 Mon Sep 17 00:00:00 2001 From: Stewart Allen Date: Wed, 21 Apr 2021 22:30:42 -0400 Subject: [PATCH] add right click to set camera focus --- src/kiri/init.js | 8 ++++++++ src/kiri/main.js | 7 ++++++- src/mode/fdm/export.js | 2 +- web/kiri/index.css | 1 + web/kiri/index.html | 1 + web/kiri/lang/en.js | 1 + 6 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/kiri/init.js b/src/kiri/init.js index 68e67b11..859d5450 100644 --- a/src/kiri/init.js +++ b/src/kiri/init.js @@ -470,6 +470,13 @@ } } + function setFocus() { + let int = contextInt[0]; + if (int && int.object && int.object.widget) { + API.space.set_focus(undefined, int.point); + } + } + function duplicateSelection() { API.selection.for_widgets(function(widget) { let mesh = widget.mesh; @@ -2530,6 +2537,7 @@ $('context-duplicate').onclick = duplicateSelection; $('context-mirror').onclick = mirrorSelection; $('context-layflat').onclick = layFlat; + $('context-setfocus').onclick = setFocus; UI.modal.onclick = API.modal.hide; UI.modalBox.onclick = (ev) => { ev.stopPropagation() }; diff --git a/src/kiri/main.js b/src/kiri/main.js index e6fb5307..f740973e 100644 --- a/src/kiri/main.js +++ b/src/kiri/main.js @@ -389,7 +389,12 @@ work: KIRI.work }; - function setFocus(widgets) { + function setFocus(widgets, point) { + if (point) { + SPACE.platform.setCenter(point.x, point.z, point.y); + SPACE.view.setFocus(new THREE.Vector3(point.x, point.y, point.z)); + return; + } if (widgets === undefined) { widgets = WIDGETS; } else if (!Array.isArray) { diff --git a/src/mode/fdm/export.js b/src/mode/fdm/export.js index a8f03b45..3cb4632d 100644 --- a/src/mode/fdm/export.js +++ b/src/mode/fdm/export.js @@ -636,7 +636,7 @@ subst.material = UTIL.round(emitted,2); subst.time = UTIL.round(time,2); - subst['print-time'] = subst.time; + subst['print_time'] = subst.time; append("; --- shutdown ---"); appendAllSub(device.gcodePost); diff --git a/web/kiri/index.css b/web/kiri/index.css index 5a086b10..4ca27d11 100644 --- a/web/kiri/index.css +++ b/web/kiri/index.css @@ -1566,6 +1566,7 @@ th, tr, td, label { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; background-color: #eee; + color: black; } #context-menu .sep { border-top: 1px solid #ddd; diff --git a/web/kiri/index.html b/web/kiri/index.html index eb1bcc10..50da1d43 100644 --- a/web/kiri/index.html +++ b/web/kiri/index.html @@ -456,6 +456,7 @@ +
diff --git a/web/kiri/lang/en.js b/web/kiri/lang/en.js index 594fd5d6..757efba6 100644 --- a/web/kiri/lang/en.js +++ b/web/kiri/lang/en.js @@ -53,6 +53,7 @@ kiri.lang['en-us'] = { rc_lafl: "lay flat", rc_mirr: "mirror", rc_dupl: "duplicate", + rc_focs: "set focus", rc_xstl: "export as STL", // DEVICE MENU and related dialogs