From c26595e54ca3e3001ea1e40783b081e47e732eb8 Mon Sep 17 00:00:00 2001
From: Jake Read <jake.read@cba.mit.edu>
Date: Sun, 9 Feb 2020 16:21:02 -0600
Subject: [PATCH] nest

---
 hunks/x_adhoc/svgNest.js | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/hunks/x_adhoc/svgNest.js b/hunks/x_adhoc/svgNest.js
index dfd5458..6909b24 100644
--- a/hunks/x_adhoc/svgNest.js
+++ b/hunks/x_adhoc/svgNest.js
@@ -46,6 +46,11 @@ export default function NestSVGs() {
   smallView.setAttribute('preserveAspectRatio', 'xMinYMin meet');
   dom.appendChild(smallView);
 
+  let bigView = document.createElementNS(svgNS, "svg")
+  bigView.setAttribute('width', stockWidth.value + "in");
+  bigView.setAttribute('height', stockHeight.value + "in");
+  bigView.setAttribute('preserveAspectRatio', 'xMinYMin meet');
+
   let nest = (swobj) => {
     // sometimes, mm, sometimes, m
     let unitScale = swobj.unit === "mm" ? 1000 : 1;
@@ -135,12 +140,18 @@ export default function NestSVGs() {
       g.innerHTML = ''; //delete!
     });
 
+    // set full size, offscreen,
+    bigView.setAttribute('viewBox', smallView.getAttribute('viewBox'));
+    bigView.innerHTML = smallView.innerHTML;
+    bigView.setAttribute('width', stockWidth.value + "in");
+    bigView.setAttribute('height', stockWidth.value + "in");
+
     nestUpdated = true
   }
 
   this.loop = () => {
     if(nestUpdated && !nestOut.io()){
-      let svgStrOut = new XMLSerializer().serializeToString(smallView)
+      let svgStrOut = new XMLSerializer().serializeToString(bigView)
       nestOut.put(svgStrOut)
       nestUpdated = false
     }
-- 
GitLab