import { Object3D } from "three"; import { createTemplateBoard, DrawDimension, Viewer } from "."; function dispose(m: Object3D) { //@ts-ignore if (m.geometry) //@ts-ignore m.geometry.dispose(); m.children.forEach(o => dispose(o)); } export function LoadBoard(view: Viewer, data: any[], clear: boolean = true) { if (clear) { dispose(view.m_Scene); view.m_Scene.children.length = 0; } if (data.length === 0) return; //加板 let { meshs, edgesa } = createTemplateBoard(data); //加标注 let dims = DrawDimension(meshs); view.m_Scene.add(...meshs); view.m_Scene.add(...edgesa); view.m_Scene.add(...dims); view.ViewToSwiso(); view.ZoomAll(); view.Zoom(1.1); }