occt-wasm 4.4.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -281,6 +281,25 @@ doc.close();
281
281
  const imported = kernel.importXCAFFromSTEP(stepData);
282
282
  ```
283
283
 
284
+ Walking an imported assembly: each component is a placed reference to a prototype label (a part or sub-assembly). Resolve it with `getReferredLabel` to reach the prototype's name, named sub-shapes and children. To author the same structure, add a compound with `doc.addShape(compound, { assembly: true })`.
285
+
286
+ ```typescript check doc
287
+ import type { LabelTag } from "occt-wasm";
288
+
289
+ function walk(label: LabelTag, depth = 0): void {
290
+ const info = doc.getLabelInfo(label);
291
+ console.log(`${" ".repeat(depth)}${info.name}`);
292
+ const proto = doc.getReferredLabel(label) ?? label;
293
+ for (const sub of doc.getSubShapes(proto)) {
294
+ console.log(`${" ".repeat(depth + 1)}(${doc.getLabelInfo(sub).name})`);
295
+ }
296
+ for (const child of doc.getChildren(proto)) walk(child, depth + 1);
297
+ }
298
+ for (const root of doc.getRoots()) walk(root);
299
+ ```
300
+
301
+ `getLocation(label)` returns a component's placement as a 3x4 matrix in the layout `kernel.transform` accepts, so a prototype's geometry can be tessellated once and instanced per component.
302
+
284
303
  ## Bundler Configuration
285
304
 
286
305
  ### Vite
@@ -357,7 +376,7 @@ Generate full docs locally: `cd ts && npm run docs` (TypeDoc output).
357
376
  | **Transforms** | Translate, rotate, scale, mirror, align to bounding box, 3x4 matrix, linear/circular patterns |
358
377
  | **Topology** | Shape type queries, type predicates, sub-shape extraction, adjacency, hash codes |
359
378
  | **Tessellation** | Triangle meshes (absolute or relative deflection), wireframe polylines, per-face groups, batched meshing |
360
- | **I/O** | STEP, STL, BREP (text + binary) import/export |
379
+ | **I/O** | STEP, STL (ASCII + binary), BREP (text + binary) import/export |
361
380
  | **Query** | Bounding box, volume, surface area, length, center of mass, inertia tensor, point-in-solid, curvature |
362
381
  | **Surfaces** | Type, normal, UV bounds, point classification, B-spline construction |
363
382
  | **Curves** | Type, point/tangent eval, parameters, NURBS data, interpolation (incl. clamped tangents), project point |
package/dist/index.d.ts CHANGED
@@ -12,12 +12,12 @@
12
12
  * kernel.release(box);
13
13
  * ```
14
14
  */
15
- export { BooleanOp, JoinType, OcctError, OcctErrorCode, SweepContact, SweepLaw, SweepMode, TransitionMode, type AddChildOptions, type AddShapeOptions, type AlignAnchor, type BoundingBox, type Color3, type CurveKind, type CurvatureData, type EdgeData, type EvolutionData, type GLTFExportOptions, type InitOptions, type LabelInfo, type LabelTag, type Location, type Mesh, type MeshBatchData, type NurbsCurveData, type ShapeQueryResult, type PointClassification, type ProjectionData, type ShapeHandle, type ShapeOrientation, type ShapeType, type SurfaceKind, type SweepAdvancedOptions, type SweepFullOptions, type SweepOrientedOptions, type SweepToleranceOptions, type TessellateOptions, type UVBounds, type Vec3, } from "./types.js";
15
+ export { BooleanOp, JoinType, OcctError, OcctErrorCode, SweepContact, SweepLaw, SweepMode, TransitionMode, type AddChildOptions, type AddShapeOptions, type AlignAnchor, type BoundingBox, type BoundingBoxOptions, type Color3, type CurveKind, type CurvatureData, type EdgeData, type EvolutionData, type GLTFExportOptions, type InitOptions, type LabelInfo, type LabelOptions, type LabelTag, type Location, type Mesh, type MeshBatchData, type NurbsCurveData, type ShapeQueryResult, type PointClassification, type ProjectionData, type ShapeHandle, type ShapeOrientation, type ShapeType, type SurfaceKind, type SweepAdvancedOptions, type SweepFullOptions, type SweepOrientedOptions, type SweepToleranceOptions, type TessellateOptions, type UVBounds, type Vec3, } from "./types.js";
16
16
  export { XCAFDocument, type EmscriptenFS } from "./xcaf-document.js";
17
17
  import { XCAFDocument as XCAFDocumentImpl } from "./xcaf-document.js";
18
18
  export { renderMultiviewSVG, renderShapeSVG, type MultiviewSvgOptions, type SvgViewOptions, type ViewName, } from "./svg.js";
19
19
  import { type MultiviewSvgOptions, type SvgViewOptions, type ViewName } from "./svg.js";
20
- import type { AlignAnchor, BoundingBox, CurveKind, CurvatureData, EdgeData, EvolutionData, InitOptions, Mesh, MeshBatchData, NurbsCurveData, PointClassification, ProjectionData, ShapeHandle, ShapeQueryResult, ShapeOrientation, ShapeType, SurfaceKind, SweepAdvancedOptions, SweepFullOptions, SweepOrientedOptions, TessellateOptions, BooleanOp, UVBounds, Vec3 } from "./types.js";
20
+ import type { AlignAnchor, BoundingBox, CurveKind, CurvatureData, EdgeData, EvolutionData, InitOptions, Mesh, MeshBatchData, NurbsCurveData, PointClassification, ProjectionData, ShapeHandle, ShapeQueryResult, ShapeOrientation, ShapeType, SurfaceKind, SweepAdvancedOptions, SweepFullOptions, SweepOrientedOptions, TessellateOptions, BoundingBoxOptions, BooleanOp, UVBounds, Vec3 } from "./types.js";
21
21
  import { JoinType, SweepMode, TransitionMode } from "./types.js";
22
22
  import type { OcctWasmModule, OcctRawKernel } from "./raw-types.js";
23
23
  export type { OcctWasmModule, OcctRawKernel } from "./raw-types.js";
@@ -341,8 +341,18 @@ export declare class OcctKernel {
341
341
  meshBatch(shapes: ShapeHandle[], options?: TessellateOptions): MeshBatchData;
342
342
  importStep(data: string | ArrayBuffer): ShapeHandle;
343
343
  exportStep(shape: ShapeHandle): string;
344
- importStl(data: string | ArrayBuffer): ShapeHandle;
345
- exportStl(shape: ShapeHandle, linearDeflection?: number, ascii?: boolean): string;
344
+ /**
345
+ * Import an STL mesh. A string is ASCII STL; bytes may be binary or ASCII
346
+ * STL and are passed through untouched (no text decoding).
347
+ */
348
+ importStl(data: string | ArrayBuffer | Uint8Array): ShapeHandle;
349
+ /**
350
+ * Export STL. Binary STL (the default) comes back as bytes; pass
351
+ * `ascii: true` for the text format as a string.
352
+ */
353
+ exportStl(shape: ShapeHandle, linearDeflection?: number, ascii?: false): Uint8Array;
354
+ exportStl(shape: ShapeHandle, linearDeflection: number | undefined, ascii: true): string;
355
+ exportStl(shape: ShapeHandle, linearDeflection: number | undefined, ascii: boolean): string | Uint8Array;
346
356
  toBREP(shape: ShapeHandle): string;
347
357
  fromBREP(data: string): ShapeHandle;
348
358
  /** Serialize a shape to binary BREP (smaller/faster than the text format). */
@@ -354,23 +364,29 @@ export declare class OcctKernel {
354
364
  /**
355
365
  * Compute the axis-aligned bounding box of a shape.
356
366
  *
357
- * Uses `BRepBndLib::AddOptimal` for surface-precise bounds independent of
358
- * tessellation state. The simpler `BRepBndLib::Add` falls back to BSpline
359
- * pole hulls when triangulation is absent, which overshoots curved
360
- * geometry by ~0.27·r for arcs of radius r that was the source of the
361
- * uniform 1.2 mm bounds shift versus brepjs in occt-wasm 2.0.
367
+ * By default the box is precise: `BRepBndLib::AddOptimal` finds each
368
+ * surface's true extrema, so the bounds are the same whether or not the
369
+ * shape has been tessellated. (Loose bounds were the source of the uniform
370
+ * 1.2 mm shift versus brepjs in occt-wasm 2.0.) That extremum search is
371
+ * what costs time on BSpline geometry with no mesh: a filleted box takes
372
+ * ~5 ms precise versus ~0.06 ms loose. On analytic shapes both take a few
373
+ * microseconds.
374
+ *
375
+ * `{ precise: false }` switches to `BRepBndLib::Add`: analytic extents,
376
+ * BSpline control hulls, plus the shape tolerance. The result always
377
+ * contains the precise box, which makes it the right choice for culling
378
+ * or scene fitting of unmeshed freeform geometry (fillets, lofts, STEP
379
+ * imports).
362
380
  *
363
- * @param useTriangulation - `false` (the default) does the surface analysis
364
- * from scratch, giving the same bounds whether or not the shape has been
365
- * tessellated. `true` bounds an existing triangulation instead, which is
366
- * far faster but only as tight as that mesh on a 2.0-deflection mesh
367
- * it overshot a 26 mm extent by 1.8 mm, and on a 0.1-deflection mesh by
368
- * 0.16 mm. With no triangulation present the two agree exactly and cost
369
- * the same, so `true` is worth it only when you have a fine mesh and
370
- * want the ~30x faster query. brepjs's
371
- * `BRepBndLib.Add(shape, box, true)` corresponds to `true` here.
381
+ * `{ useTriangulation: true }` bounds an existing triangulation instead,
382
+ * in either mode. Far faster on a meshed shape, but only as tight as that
383
+ * mesh: on a 2.0-deflection mesh it overshot a 26 mm extent by 1.8 mm, and
384
+ * on a 0.1-deflection mesh by 0.16 mm. With no triangulation present it
385
+ * changes nothing.
372
386
  */
373
- getBoundingBox(shape: ShapeHandle, useTriangulation?: boolean): BoundingBox;
387
+ getBoundingBox(shape: ShapeHandle, options?: BoundingBoxOptions): BoundingBox;
388
+ /** @deprecated Pass `{ useTriangulation }` instead. */
389
+ getBoundingBox(shape: ShapeHandle, useTriangulation: boolean): BoundingBox;
374
390
  getVolume(shape: ShapeHandle): number;
375
391
  getSurfaceArea(shape: ShapeHandle): number;
376
392
  getLength(shape: ShapeHandle): number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -515,7 +515,7 @@ export class OcctKernel {
515
515
  */
516
516
  alignX(shape, target = 0, anchor = "center") {
517
517
  return wrap("alignX", () => {
518
- const bb = this.getBoundingBox(shape, false);
518
+ const bb = this.getBoundingBox(shape);
519
519
  const cur = anchor === "min" ? bb.xmin : anchor === "max" ? bb.xmax : (bb.xmin + bb.xmax) / 2;
520
520
  return handle(this.#raw.translate(shape, target - cur, 0, 0));
521
521
  });
@@ -523,7 +523,7 @@ export class OcctKernel {
523
523
  /** Translate along Y so the chosen bounding-box anchor lands at `target`. */
524
524
  alignY(shape, target = 0, anchor = "center") {
525
525
  return wrap("alignY", () => {
526
- const bb = this.getBoundingBox(shape, false);
526
+ const bb = this.getBoundingBox(shape);
527
527
  const cur = anchor === "min" ? bb.ymin : anchor === "max" ? bb.ymax : (bb.ymin + bb.ymax) / 2;
528
528
  return handle(this.#raw.translate(shape, 0, target - cur, 0));
529
529
  });
@@ -531,7 +531,7 @@ export class OcctKernel {
531
531
  /** Translate along Z so the chosen bounding-box anchor lands at `target`. */
532
532
  alignZ(shape, target = 0, anchor = "center") {
533
533
  return wrap("alignZ", () => {
534
- const bb = this.getBoundingBox(shape, false);
534
+ const bb = this.getBoundingBox(shape);
535
535
  const cur = anchor === "min" ? bb.zmin : anchor === "max" ? bb.zmax : (bb.zmin + bb.zmax) / 2;
536
536
  return handle(this.#raw.translate(shape, 0, 0, target - cur));
537
537
  });
@@ -783,14 +783,22 @@ export class OcctKernel {
783
783
  exportStep(shape) {
784
784
  return wrap("exportStep", () => this.#raw.exportStep(shape));
785
785
  }
786
+ /**
787
+ * Import an STL mesh. A string is ASCII STL; bytes may be binary or ASCII
788
+ * STL and are passed through untouched (no text decoding).
789
+ */
786
790
  importStl(data) {
787
791
  return wrap("importStl", () => {
788
- const str = typeof data === "string" ? data : new TextDecoder().decode(data);
789
- return handle(this.#raw.importStl(str));
792
+ if (typeof data === "string")
793
+ return handle(this.#raw.importStl(data));
794
+ const bytes = data instanceof Uint8Array ? data : new Uint8Array(data);
795
+ return handle(this.#raw.importStlBinary(bytes));
790
796
  });
791
797
  }
792
798
  exportStl(shape, linearDeflection = 0.1, ascii = false) {
793
- return wrap("exportStl", () => this.#raw.exportStl(shape, linearDeflection, ascii));
799
+ return wrap("exportStl", () => ascii
800
+ ? this.#raw.exportStl(shape, linearDeflection, true)
801
+ : this.#raw.exportStlBinary(shape, linearDeflection));
794
802
  }
795
803
  toBREP(shape) {
796
804
  return wrap("toBREP", () => this.#raw.toBREP(shape));
@@ -834,30 +842,11 @@ export class OcctKernel {
834
842
  loadCached(brep) {
835
843
  return wrap("loadCached", () => this.fromBREP(brep));
836
844
  }
837
- // =======================================================================
838
- // Query / Measure
839
- // =======================================================================
840
- /**
841
- * Compute the axis-aligned bounding box of a shape.
842
- *
843
- * Uses `BRepBndLib::AddOptimal` for surface-precise bounds independent of
844
- * tessellation state. The simpler `BRepBndLib::Add` falls back to BSpline
845
- * pole hulls when triangulation is absent, which overshoots curved
846
- * geometry by ~0.27·r for arcs of radius r — that was the source of the
847
- * uniform 1.2 mm bounds shift versus brepjs in occt-wasm 2.0.
848
- *
849
- * @param useTriangulation - `false` (the default) does the surface analysis
850
- * from scratch, giving the same bounds whether or not the shape has been
851
- * tessellated. `true` bounds an existing triangulation instead, which is
852
- * far faster but only as tight as that mesh — on a 2.0-deflection mesh
853
- * it overshot a 26 mm extent by 1.8 mm, and on a 0.1-deflection mesh by
854
- * 0.16 mm. With no triangulation present the two agree exactly and cost
855
- * the same, so `true` is worth it only when you have a fine mesh and
856
- * want the ~30x faster query. brepjs's
857
- * `BRepBndLib.Add(shape, box, true)` corresponds to `true` here.
858
- */
859
- getBoundingBox(shape, useTriangulation = false) {
860
- return wrap("getBoundingBox", () => this.#raw.getBoundingBox(shape, useTriangulation));
845
+ getBoundingBox(shape, options = {}) {
846
+ const { precise = true, useTriangulation = false } = typeof options === "boolean" ? { useTriangulation: options } : options;
847
+ return wrap("getBoundingBox", () => precise
848
+ ? this.#raw.getBoundingBox(shape, useTriangulation)
849
+ : this.#raw.getBoundingBoxLoose(shape, useTriangulation));
861
850
  }
862
851
  getVolume(shape) {
863
852
  return wrap("getVolume", () => this.#raw.getVolume(shape));
@@ -1344,7 +1333,7 @@ export class OcctKernel {
1344
1333
  /** Return a human-readable summary of a shape for debugging. */
1345
1334
  describe(shape) {
1346
1335
  const type = this.getShapeType(shape);
1347
- const bbox = this.getBoundingBox(shape, true);
1336
+ const bbox = this.getBoundingBox(shape, { useTriangulation: true });
1348
1337
  const dims = `[${(bbox.xmax - bbox.xmin).toFixed(2)} x ${(bbox.ymax - bbox.ymin).toFixed(2)} x ${(bbox.zmax - bbox.zmin).toFixed(2)}]`;
1349
1338
  const parts = [`${type} ${dims}`];
1350
1339
  if (type === "solid" || type === "compound" || type === "compsolid") {