From 063cfbab5ef642d24d6cace01b5bdc8d451f245b Mon Sep 17 00:00:00 2001 From: Justin Georgi Date: Wed, 23 Oct 2024 12:56:03 -0700 Subject: [PATCH] Set clipboard data to json format Signed-off-by: Justin Georgi --- modules/glmv.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/glmv.js b/modules/glmv.js index 2b8e662..ce6a3a9 100644 --- a/modules/glmv.js +++ b/modules/glmv.js @@ -16,12 +16,14 @@ if (mw.config.values.wgAction == 'submit') { hsPosition = targetModel.positionAndNormalFromPoint(e.clientX, e.clientY); } if (hsPosition) { - var hsOutput = ['|hotspot=NewHotspot']; - hsOutput.push('pos=' + hsPosition.position.toString().replaceAll(/(\d{5})(\d*?m)/g,"$1m")); - hsOutput.push('norm=' + hsPosition.normal.toString().replaceAll(/(\d{5})(\d*?m)/g,"$1m")); - hsOutput.push('orb=' + targetModel.getCameraOrbit()); - hsOutput.push('targ=' + targetModel.getCameraTarget()); - navigator.clipboard.writeText(hsOutput.join('|')); + var hsOutput = {label: 'NewHotspot'}; + hsOutput['data-position'] = hsPosition.position.toString().replaceAll(/(\d{5})(\d*?m)/g,"$1m"); + hsOutput['data-normal'] = hsPosition.normal.toString().replaceAll(/(\d{5})(\d*?m)/g,"$1m"); + let orbitObj = targetModel.getCameraOrbit() + hsOutput['data-orbit'] = `${orbitObj.theta.toFixed(2)}rad ${orbitObj.phi.toFixed(2)}rad ${orbitObj.radius.toFixed(2)}m`; + let targetObj = targetModel.getCameraTarget(); + hsOutput['data-target'] = `${targetObj.x.toFixed(5)}m ${targetObj.y.toFixed(5)}m ${targetObj.z.toFixed(5)}m`; + navigator.clipboard.writeText(JSON.stringify(hsOutput, null, 2)); } }); }