From 0b01c1e330f4e6ed3a878cf26d393dd2f374a555 Mon Sep 17 00:00:00 2001
From: Neil Gershenfeld <gersh@cba.mit.edu>
Date: Mon, 28 May 2018 17:22:46 -0400
Subject: [PATCH] Menger sponge working

---
 modules/frep/shapes/3D/menger | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/modules/frep/shapes/3D/menger b/modules/frep/shapes/3D/menger
index 19c2e18..164a77e 100755
--- a/modules/frep/shapes/3D/menger
+++ b/modules/frep/shapes/3D/menger
@@ -26,7 +26,7 @@ var name = 'Menger sponge'
 //
 var init = function() {
    mod.size.value = '1'
-   mod.depth.value = '3'
+   mod.depth.value = '4'
    }
 //
 // inputs
@@ -51,7 +51,9 @@ var outputs = {
          var fn = `Math.min(${fn},Math.min(Y-0,${size}-Y))`
          var fn = `Math.min(${fn},Math.min(Z-0,${size}-Z))`
          for (var d = 0; d < depth; ++d) {
-            var fn = `Math.min(${fn},-Math.min(Math.min((Math.pow(3,${d})*X/${size})%1-1/3,2/3-(Math.pow(3,${d})*X/${size})%1),Math.min(Math.min((Math.pow(3,${d})*Y/${size})%1-1/3,2/3-(Math.pow(3,${d})*Y/${size})%1),Math.min((Math.pow(3,${d})*Z/${size})%1-1/3,2/3-(Math.pow(3,${d})*Z/${size})%1))))`
+            var fn = `Math.min(${fn},-Math.min(Math.min((Math.pow(3,${d})*X/${size})%1-1/3,2/3-(Math.pow(3,${d})*X/${size})%1),Math.min((Math.pow(3,${d})*Y/${size})%1-1/3,2/3-(Math.pow(3,${d})*Y/${size})%1)))`
+            var fn = `Math.min(${fn},-Math.min(Math.min((Math.pow(3,${d})*X/${size})%1-1/3,2/3-(Math.pow(3,${d})*X/${size})%1),Math.min((Math.pow(3,${d})*Z/${size})%1-1/3,2/3-(Math.pow(3,${d})*Z/${size})%1)))`
+            var fn = `Math.min(${fn},-Math.min(Math.min((Math.pow(3,${d})*Y/${size})%1-1/3,2/3-(Math.pow(3,${d})*Y/${size})%1),Math.min((Math.pow(3,${d})*Z/${size})%1-1/3,2/3-(Math.pow(3,${d})*Z/${size})%1)))`
             }
          var variables = ['X','Y','Z']
          var limits = [[0,size],[0,size],[0,size]]
-- 
GitLab