UNPKG

@bitbybit-dev/occt

Version:

Bit By Bit Developers CAD algorithms using OpenCascade Technology kernel. Run in Node and in Browser.

26 lines (25 loc) 903 B
export class ShellsService { constructor(occ, shapeGettersService, converterService, facesService) { this.occ = occ; this.shapeGettersService = shapeGettersService; this.converterService = converterService; this.facesService = facesService; } getShellSurfaceArea(inputs) { const faces = this.shapeGettersService.getFaces(inputs); const faceAreas = this.facesService.getFacesAreas({ shapes: faces }); return faceAreas.reduce((p, c) => p + c, 0); } sewFaces(inputs) { const sew = new this.occ.BRepBuilderAPI_Sewing(inputs.tolerance); inputs.shapes.forEach(face => { sew.Add(face); }); sew.Perform(); const res = sew.SewedShape(); const result = this.converterService.getActualTypeOfShape(res); sew.delete(); res.delete(); return result; } }