diff --git a/src/clientSideScene/sceneEntities.ts b/src/clientSideScene/sceneEntities.ts index 48b95ccbe..85c20ad3f 100644 --- a/src/clientSideScene/sceneEntities.ts +++ b/src/clientSideScene/sceneEntities.ts @@ -50,6 +50,7 @@ import { programMemoryInit, recast, SketchGroup, + ExtrudeGroup, VariableDeclaration, VariableDeclarator, } from 'lang/wasm' @@ -1079,9 +1080,16 @@ export class SceneEntities { programMemoryOverride, }) this.sceneProgramMemory = programMemory - const sketchGroup = programMemory.root[ - variableDeclarationName - ] as SketchGroup + + const maybeSketchGroup = programMemory.root[variableDeclarationName] + let sketchGroup = undefined + if (maybeSketchGroup.type === 'SketchGroup') { + sketchGroup = maybeSketchGroup + } else if ((maybeSketchGroup as ExtrudeGroup).sketchGroup) { + sketchGroup = (maybeSketchGroup as ExtrudeGroup).sketchGroup + } + if (!sketchGroup) return + const sgPaths = sketchGroup.value const orthoFactor = orthoScale(sceneInfra.camControls.camera)