UNPKG

@bitbybit-dev/occt-worker

Version:

Bit By Bit Developers CAD algorithms using OpenCascade Technology kernel adapted for WebWorker

106 lines (105 loc) 4.04 kB
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import { OCCTShapes } from "./shapes/shapes"; import { OCCTTransforms } from "./transforms"; import { OCCTOperations } from "./operations"; import { OCCTBooleans } from "./booleans"; import { OCCTIO } from "./io"; import { OCCTGeom } from "./geom/geom"; // import { OCCTAssembly } from './assembly/assembly'; import { OCCTFillets } from "./fillets"; import { OCCTShapeFix } from "./shape-fix"; import { OCCTDimensions } from "./dimensions"; /** * Contains various methods for OpenCascade implementation */ export class OCCT { constructor(occWorkerManager) { this.occWorkerManager = occWorkerManager; this.shapes = new OCCTShapes(occWorkerManager); this.geom = new OCCTGeom(occWorkerManager); this.transforms = new OCCTTransforms(occWorkerManager); this.operations = new OCCTOperations(occWorkerManager); this.booleans = new OCCTBooleans(occWorkerManager); this.fillets = new OCCTFillets(occWorkerManager); this.shapeFix = new OCCTShapeFix(occWorkerManager); this.dimensions = new OCCTDimensions(occWorkerManager); this.io = new OCCTIO(occWorkerManager); } /** * Creates polygon points from the shape faces * @param inputs shape * @group convert * @shortname faces to polygon points * @drawable false */ shapeFacesToPolygonPoints(inputs) { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("shapeFacesToPolygonPoints", inputs); }); } /** * Creates mesh from the shape * @param inputs shape * @group convert * @shortname shape to mesh * @drawable false */ shapeToMesh(inputs) { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("shapeToMesh", inputs); }); } /** * Creates mesh from the shape * @param inputs shape * @group convert * @shortname shape to mesh * @drawable false */ shapesToMeshes(inputs) { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("shapesToMeshes", inputs); }); } /** * Deletes shape from the cache to keep memory usage low * @param inputs shape * @group memory * @shortname delete shape */ deleteShape(inputs) { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("deleteShape", inputs); }); } /** * Deletes shapes from the cache to keep memory usage low * @param inputs shape * @group memory * @shortname delete shapes */ deleteShapes(inputs) { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("deleteShapes", inputs); }); } /** * Cleans all cache and all shapes from the memory * @param inputs shape * @group memory * @shortname clean all cache */ cleanAllCache() { return __awaiter(this, void 0, void 0, function* () { return yield this.occWorkerManager.genericCallToWorkerPromise("cleanAllCache", {}); }); } }