diff --git a/app/web/public/demo-worker.js b/app/web/public/demo-worker.js index 8900fa1..376ab16 100644 --- a/app/web/public/demo-worker.js +++ b/app/web/public/demo-worker.js @@ -259,7 +259,12 @@ const makeScriptWorker = ({callback, convertToSolids})=>{ let transfer = [] if(convertToSolids === 'buffers'){ CSGToBuffers.clearCache() - entities = solids.map((csg)=>CSGToBuffers(csg, transfer)) + entities = solids.map((csg)=>{ + let obj = CSGToBuffers(csg, transfer) + obj.color = csg.color + obj.transforms = csg.transforms + return obj + }) }else if(convertToSolids === 'regl'){ const { entitiesFromSolids } = require('@jscad/regl-renderer') time = Date.now() diff --git a/app/web/src/components/IdeViewer/IdeViewer.tsx b/app/web/src/components/IdeViewer/IdeViewer.tsx index 85675b6..ee22ef4 100644 --- a/app/web/src/components/IdeViewer/IdeViewer.tsx +++ b/app/web/src/components/IdeViewer/IdeViewer.tsx @@ -21,6 +21,9 @@ function Asset({ geometry: incomingGeo }) { } }, [incomingGeo]) if (!incomingGeo) return null + + if (incomingGeo.children) return + return ( diff --git a/app/web/src/helpers/cadPackages/jsCadController.ts b/app/web/src/helpers/cadPackages/jsCadController.ts index 79141ee..08e481e 100644 --- a/app/web/src/helpers/cadPackages/jsCadController.ts +++ b/app/web/src/helpers/cadPackages/jsCadController.ts @@ -81,7 +81,7 @@ self.addEventListener('message', (e)=>worker.postMessage(e.data)) data.entities.map(CSG2Object3D).filter(o=>o).forEach(o=>group.add(o)) response = createHealthyResponse( { type: 'geometry', - data: group?.children[4]?.geometry, + data: group, consoleMessage: data.scriptStats, date: new Date(), })