From 29e110ea7398a65ad289988a23a3027552f03c56 Mon Sep 17 00:00:00 2001 From: Stewart Allen Date: Wed, 26 Oct 2022 13:36:43 -0400 Subject: [PATCH] add csg ball torture test --- src/geo/csg.js | 74 ++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 56 insertions(+), 18 deletions(-) diff --git a/src/geo/csg.js b/src/geo/csg.js index b3f19bcb..e01f8e8c 100644 --- a/src/geo/csg.js +++ b/src/geo/csg.js @@ -137,7 +137,11 @@ function pos2mesh(pos) { Module.onRuntimeInitialized = () => { Module.setup(); - if (false) { + const tests = false; + const mesh_perf = false; + const ball_torture = false; + + if (tests) { let c = Module.cube([1,1,1], true); console.log({ c, @@ -146,26 +150,60 @@ Module.onRuntimeInitialized = () => { cmdn: c.getMesh({}) }); - let l = 1000; - let s = Module.sphere(10, 100); - let sm = s.getMesh(); - console.log({ - s, - sm, - smd: s.getMesh({}), - }); + if (mesh_perf) { + let l = 1000; + let s = Module.sphere(10, 100); + let sm = s.getMesh(); + let smd = s.getMesh({}); + console.log({ + s, + sm, + smd, + }); - console.time('getMesh'); - for (let i=0; i undefined }); - console.timeEnd(`getMeshDirect`); + console.time(`getMeshDirect`); + for (let i=0; i undefined }); + console.timeEnd(`getMeshDirect`); - console.time(`getMeshDirect`); - for (let i=0; i undefined }); + let vertex = []; + let now = Date.now(); + console.log((i/(iter*360)).toFixed(2), vertex.length, now - last); last = now; + rad -= 0.05; + z -= 0.1; + } + console.log(box.getMesh()); + ball.delete(); + box.delete(); + console.timeEnd('ball test'); + } } };