occt-wasm 1.5.0 → 2.0.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/dist/index.d.ts CHANGED
@@ -14,9 +14,297 @@
14
14
  */
15
15
  export { BooleanOp, JoinType, OcctError, OcctErrorCode, TransitionMode, type AddChildOptions, type AddShapeOptions, 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 TessellateOptions, type UVBounds, type Vec3, } from "./types.js";
16
16
  export { XCAFDocument, type EmscriptenFS } from "./xcaf-document.js";
17
- import { XCAFDocument as XCAFDocumentImpl } from "./xcaf-document.js";
17
+ import { XCAFDocument as XCAFDocumentImpl, type EmscriptenFS } from "./xcaf-document.js";
18
18
  import type { BoundingBox, CurveKind, CurvatureData, EdgeData, EvolutionData, InitOptions, Mesh, MeshBatchData, NurbsCurveData, PointClassification, ProjectionData, ShapeHandle, ShapeQueryResult, ShapeOrientation, ShapeType, SurfaceKind, TessellateOptions, BooleanOp, UVBounds, Vec3 } from "./types.js";
19
19
  import { JoinType, TransitionMode } from "./types.js";
20
+ /**
21
+ * The Emscripten module exposed by `occt-wasm.js`. Provides Embind class
22
+ * constructors, std::vector wrappers, and typed-array views into WASM
23
+ * linear memory.
24
+ *
25
+ * Returned by {@link OcctKernel.getRawModule}. Structurally compatible with
26
+ * brepjs's `OcctWasmModule` interface.
27
+ */
28
+ export interface OcctWasmModule {
29
+ OcctKernel: new () => OcctRawKernel;
30
+ VectorUint32: new () => EmbindVectorU32;
31
+ VectorDouble: new () => EmbindVectorF64;
32
+ VectorInt: new () => EmbindVectorI32;
33
+ HEAPF32: Float32Array;
34
+ HEAPU32: Uint32Array;
35
+ HEAP32: Int32Array;
36
+ FS: EmscriptenFS;
37
+ }
38
+ interface RawMeshData {
39
+ positionCount: number;
40
+ normalCount: number;
41
+ indexCount: number;
42
+ faceGroupCount: number;
43
+ getPositionsPtr(): number;
44
+ getNormalsPtr(): number;
45
+ getIndicesPtr(): number;
46
+ getFaceGroupsPtr(): number;
47
+ delete(): void;
48
+ }
49
+ interface RawMeshBatchData {
50
+ positionCount: number;
51
+ normalCount: number;
52
+ indexCount: number;
53
+ shapeCount: number;
54
+ getPositionsPtr(): number;
55
+ getNormalsPtr(): number;
56
+ getIndicesPtr(): number;
57
+ getShapeOffsetsPtr(): number;
58
+ delete(): void;
59
+ }
60
+ interface RawEdgeData {
61
+ pointCount: number;
62
+ edgeGroupCount: number;
63
+ getPointsPtr(): number;
64
+ getEdgeGroupsPtr(): number;
65
+ delete(): void;
66
+ }
67
+ interface RawEvolutionData {
68
+ resultId: number;
69
+ modified: EmbindVectorI32;
70
+ generated: EmbindVectorI32;
71
+ deleted: EmbindVectorI32;
72
+ }
73
+ interface RawProjectionData {
74
+ visibleOutline: number;
75
+ visibleSmooth: number;
76
+ visibleSharp: number;
77
+ hiddenOutline: number;
78
+ hiddenSmooth: number;
79
+ hiddenSharp: number;
80
+ }
81
+ interface RawNurbsCurveData {
82
+ degree: number;
83
+ rational: boolean;
84
+ periodic: boolean;
85
+ knots: EmbindVectorF64;
86
+ multiplicities: EmbindVectorI32;
87
+ poles: EmbindVectorF64;
88
+ weights: EmbindVectorF64;
89
+ }
90
+ interface EmbindVectorU32 {
91
+ push_back(v: number): void;
92
+ get(i: number): number;
93
+ size(): number;
94
+ delete(): void;
95
+ }
96
+ interface EmbindVectorF64 {
97
+ push_back(v: number): void;
98
+ get(i: number): number;
99
+ size(): number;
100
+ delete(): void;
101
+ }
102
+ interface EmbindVectorI32 {
103
+ push_back(v: number): void;
104
+ get(i: number): number;
105
+ size(): number;
106
+ delete(): void;
107
+ }
108
+ /**
109
+ * The raw Embind kernel — direct mirror of the C++ `OcctKernel` class
110
+ * compiled to WASM. Operates on `u32` arena handles instead of branded
111
+ * {@link ShapeHandle} values.
112
+ *
113
+ * Returned by {@link OcctKernel.getRawKernel}. Structurally compatible with
114
+ * brepjs's `OcctKernelWasm` interface. Prefer the public `OcctKernel` class
115
+ * unless you specifically need to hand the raw kernel to a third-party
116
+ * adapter — calling raw methods bypasses `OcctError` wrapping and the branded
117
+ * handle types.
118
+ */
119
+ export interface OcctRawKernel {
120
+ release(id: number): void;
121
+ releaseAll(): void;
122
+ getShapeCount(): number;
123
+ makeBox(dx: number, dy: number, dz: number): number;
124
+ makeBoxFromCorners(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): number;
125
+ makeCylinder(radius: number, height: number): number;
126
+ makeSphere(radius: number): number;
127
+ makeCone(r1: number, r2: number, height: number): number;
128
+ makeTorus(majorRadius: number, minorRadius: number): number;
129
+ makeEllipsoid(rx: number, ry: number, rz: number): number;
130
+ makeRectangle(width: number, height: number): number;
131
+ fuse(a: number, b: number): number;
132
+ cut(a: number, b: number): number;
133
+ common(a: number, b: number): number;
134
+ intersect(a: number, b: number): number;
135
+ section(a: number, b: number): number;
136
+ fuseAll(shapeIds: EmbindVectorU32): number;
137
+ cutAll(shapeId: number, toolIds: EmbindVectorU32): number;
138
+ split(shapeId: number, toolIds: EmbindVectorU32): number;
139
+ extrude(id: number, dx: number, dy: number, dz: number): number;
140
+ revolve(id: number, px: number, py: number, pz: number, dx: number, dy: number, dz: number, angle: number): number;
141
+ fillet(solidId: number, edgeIds: EmbindVectorU32, radius: number): number;
142
+ chamfer(solidId: number, edgeIds: EmbindVectorU32, distance: number): number;
143
+ chamferDistAngle(solidId: number, edgeIds: EmbindVectorU32, distance: number, angleDeg: number): number;
144
+ shell(solidId: number, faceIds: EmbindVectorU32, thickness: number): number;
145
+ offset(solidId: number, distance: number, tolerance: number): number;
146
+ draft(shapeId: number, faceId: number, angle: number, dx: number, dy: number, dz: number): number;
147
+ pipe(profileId: number, spineId: number): number;
148
+ simplePipe(profileId: number, spineId: number): number;
149
+ loft(wireIds: EmbindVectorU32, isSolid: boolean, ruled: boolean): number;
150
+ loftWithVertices(wireIds: EmbindVectorU32, isSolid: boolean, ruled: boolean, startVertexId: number, endVertexId: number): number;
151
+ sweep(wireId: number, spineId: number, transitionMode: number): number;
152
+ sweepPipeShell(profileId: number, spineId: number, freenet: boolean, smooth: boolean): number;
153
+ draftPrism(shapeId: number, dx: number, dy: number, dz: number, angleDeg: number): number;
154
+ revolveVec(shapeId: number, cx: number, cy: number, cz: number, dx: number, dy: number, dz: number, angle: number): number;
155
+ makeVertex(x: number, y: number, z: number): number;
156
+ makeEdge(v1: number, v2: number): number;
157
+ makeLineEdge(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): number;
158
+ makeCircleEdge(cx: number, cy: number, cz: number, nx: number, ny: number, nz: number, radius: number): number;
159
+ makeCircleArc(cx: number, cy: number, cz: number, nx: number, ny: number, nz: number, radius: number, startAngle: number, endAngle: number): number;
160
+ makeArcEdge(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number, x3: number, y3: number, z3: number): number;
161
+ makeEllipseEdge(cx: number, cy: number, cz: number, nx: number, ny: number, nz: number, majorRadius: number, minorRadius: number): number;
162
+ makeEllipseArc(cx: number, cy: number, cz: number, nx: number, ny: number, nz: number, majorRadius: number, minorRadius: number, startAngle: number, endAngle: number): number;
163
+ makeBezierEdge(flatPoints: EmbindVectorF64): number;
164
+ makeTangentArc(x1: number, y1: number, z1: number, tx: number, ty: number, tz: number, x2: number, y2: number, z2: number): number;
165
+ makeHelixWire(px: number, py: number, pz: number, dx: number, dy: number, dz: number, pitch: number, height: number, radius: number): number;
166
+ makeWire(edgeIds: EmbindVectorU32): number;
167
+ makeFace(wireId: number): number;
168
+ makeNonPlanarFace(wireId: number): number;
169
+ addHolesInFace(faceId: number, holeWireIds: EmbindVectorU32): number;
170
+ removeHolesFromFace(faceId: number, holeIndices: EmbindVectorI32): number;
171
+ solidFromShell(shellId: number): number;
172
+ makeSolid(shellId: number): number;
173
+ sew(shapeIds: EmbindVectorU32, tolerance: number): number;
174
+ sewAndSolidify(faceIds: EmbindVectorU32, tolerance: number): number;
175
+ buildSolidFromFaces(faceIds: EmbindVectorU32, tolerance: number): number;
176
+ makeCompound(shapeIds: EmbindVectorU32): number;
177
+ buildTriFace(ax: number, ay: number, az: number, bx: number, by: number, bz: number, cx: number, cy: number, cz: number): number;
178
+ makeFaceOnSurface(faceId: number, wireId: number): number;
179
+ translate(id: number, dx: number, dy: number, dz: number): number;
180
+ rotate(id: number, px: number, py: number, pz: number, dx: number, dy: number, dz: number, angle: number): number;
181
+ scale(id: number, px: number, py: number, pz: number, factor: number): number;
182
+ mirror(id: number, px: number, py: number, pz: number, nx: number, ny: number, nz: number): number;
183
+ copy(id: number): number;
184
+ transform(id: number, matrix: EmbindVectorF64): number;
185
+ generalTransform(id: number, matrix: EmbindVectorF64): number;
186
+ linearPattern(id: number, dx: number, dy: number, dz: number, spacing: number, count: number): number;
187
+ circularPattern(id: number, cx: number, cy: number, cz: number, ax: number, ay: number, az: number, angle: number, count: number): number;
188
+ composeTransform(m1: EmbindVectorF64, m2: EmbindVectorF64): EmbindVectorF64;
189
+ translateBatch(ids: EmbindVectorU32, offsets: EmbindVectorF64): EmbindVectorU32;
190
+ booleanPipeline(baseId: number, opCodes: EmbindVectorI32, toolIds: EmbindVectorU32): number;
191
+ queryBatch(ids: EmbindVectorU32): EmbindVectorF64;
192
+ filletBatch(solidIds: EmbindVectorU32, edgeCounts: EmbindVectorI32, flatEdgeIds: EmbindVectorU32, radii: EmbindVectorF64): EmbindVectorU32;
193
+ transformBatch(ids: EmbindVectorU32, matrices: EmbindVectorF64): EmbindVectorU32;
194
+ rotateBatch(ids: EmbindVectorU32, params: EmbindVectorF64): EmbindVectorU32;
195
+ scaleBatch(ids: EmbindVectorU32, params: EmbindVectorF64): EmbindVectorU32;
196
+ mirrorBatch(ids: EmbindVectorU32, params: EmbindVectorF64): EmbindVectorU32;
197
+ getShapeType(id: number): string;
198
+ getSubShapes(id: number, shapeType: string): EmbindVectorU32;
199
+ downcast(id: number, targetType: string): number;
200
+ distanceBetween(a: number, b: number): number;
201
+ isSame(a: number, b: number): boolean;
202
+ isEqual(a: number, b: number): boolean;
203
+ isNull(id: number): boolean;
204
+ hashCode(id: number, upperBound: number): number;
205
+ shapeOrientation(id: number): string;
206
+ sharedEdges(faceA: number, faceB: number): EmbindVectorU32;
207
+ adjacentFaces(shapeId: number, faceId: number): EmbindVectorU32;
208
+ iterShapes(id: number): EmbindVectorU32;
209
+ edgeToFaceMap(id: number, hashUpperBound: number): EmbindVectorI32;
210
+ tessellate(id: number, linDefl: number, angDefl: number): RawMeshData;
211
+ wireframe(id: number, deflection: number): RawEdgeData;
212
+ hasTriangulation(id: number): boolean;
213
+ meshShape(id: number, linDefl: number, angDefl: number): RawMeshData;
214
+ meshBatch(ids: EmbindVectorU32, linDefl: number, angDefl: number): RawMeshBatchData;
215
+ importStep(data: string): number;
216
+ exportStep(id: number): string;
217
+ importStl(data: string): number;
218
+ exportStl(id: number, linearDeflection: number, ascii: boolean): string;
219
+ toBREP(id: number): string;
220
+ fromBREP(data: string): number;
221
+ getBoundingBox(id: number): BoundingBox;
222
+ getVolume(id: number): number;
223
+ getSurfaceArea(id: number): number;
224
+ getLength(id: number): number;
225
+ getCenterOfMass(id: number): EmbindVectorF64;
226
+ getSurfaceCenterOfMass(faceId: number): EmbindVectorF64;
227
+ getLinearCenterOfMass(id: number): EmbindVectorF64;
228
+ surfaceCurvature(faceId: number, u: number, v: number): EmbindVectorF64;
229
+ vertexPosition(vertexId: number): EmbindVectorF64;
230
+ surfaceType(faceId: number): string;
231
+ surfaceNormal(faceId: number, u: number, v: number): EmbindVectorF64;
232
+ pointOnSurface(faceId: number, u: number, v: number): EmbindVectorF64;
233
+ outerWire(faceId: number): number;
234
+ uvBounds(faceId: number): EmbindVectorF64;
235
+ uvFromPoint(faceId: number, x: number, y: number, z: number): EmbindVectorF64;
236
+ getFaceCylinderData(faceId: number): EmbindVectorF64;
237
+ projectPointOnFace(faceId: number, x: number, y: number, z: number): EmbindVectorF64;
238
+ classifyPointOnFace(faceId: number, u: number, v: number): string;
239
+ bsplineSurface(flatPoints: EmbindVectorF64, rows: number, cols: number): number;
240
+ curveType(edgeId: number): string;
241
+ curvePointAtParam(edgeId: number, param: number): EmbindVectorF64;
242
+ curveTangent(edgeId: number, param: number): EmbindVectorF64;
243
+ curveParameters(edgeId: number): EmbindVectorF64;
244
+ curveIsClosed(edgeId: number): boolean;
245
+ curveIsPeriodic(edgeId: number): boolean;
246
+ curveLength(edgeId: number): number;
247
+ interpolatePoints(flatPoints: EmbindVectorF64, periodic: boolean): number;
248
+ approximatePoints(flatPoints: EmbindVectorF64, tolerance: number): number;
249
+ getNurbsCurveData(edgeId: number): RawNurbsCurveData;
250
+ liftCurve2dToPlane(flatPoints2d: EmbindVectorF64, planeOx: number, planeOy: number, planeOz: number, planeZx: number, planeZy: number, planeZz: number, planeXx: number, planeXy: number, planeXz: number): number;
251
+ projectEdges(shapeId: number, ox: number, oy: number, oz: number, dx: number, dy: number, dz: number, xx: number, xy: number, xz: number, hasXAxis: boolean): RawProjectionData;
252
+ thicken(shapeId: number, thickness: number): number;
253
+ defeature(shapeId: number, faceIds: EmbindVectorU32): number;
254
+ reverseShape(id: number): number;
255
+ simplify(id: number): number;
256
+ filletVariable(solidId: number, edgeId: number, startRadius: number, endRadius: number): number;
257
+ offsetWire2D(wireId: number, offset: number, joinType: number): number;
258
+ translateWithHistory(id: number, dx: number, dy: number, dz: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
259
+ fuseWithHistory(a: number, b: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
260
+ cutWithHistory(a: number, b: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
261
+ filletWithHistory(solidId: number, edgeIds: EmbindVectorU32, radius: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
262
+ rotateWithHistory(id: number, px: number, py: number, pz: number, dx: number, dy: number, dz: number, angle: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
263
+ mirrorWithHistory(id: number, px: number, py: number, pz: number, nx: number, ny: number, nz: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
264
+ scaleWithHistory(id: number, cx: number, cy: number, cz: number, factor: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
265
+ intersectWithHistory(a: number, b: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
266
+ chamferWithHistory(solidId: number, edgeIds: EmbindVectorU32, distance: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
267
+ shellWithHistory(solidId: number, faceIds: EmbindVectorU32, thickness: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
268
+ offsetWithHistory(solidId: number, distance: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
269
+ thickenWithHistory(shapeId: number, thickness: number, inputFaceHashes: EmbindVectorI32, hashUpperBound: number): RawEvolutionData;
270
+ makeNullShape(): number;
271
+ buildExtrusionLaw(profile: string, length: number, endFactor: number): number;
272
+ trimLaw(lawId: number, first: number, last: number): number;
273
+ sweepWithLaw(profileId: number, spineId: number, lawId: number): number;
274
+ buildCurves3d(wireId: number): void;
275
+ fixWireOnFace(wireId: number, faceId: number, tolerance: number): number;
276
+ fixShape(id: number): number;
277
+ unifySameDomain(id: number): number;
278
+ isValid(id: number): boolean;
279
+ healSolid(id: number, tolerance: number): number;
280
+ healFace(id: number, tolerance: number): number;
281
+ healWire(id: number, tolerance: number): number;
282
+ fixFaceOrientations(id: number): number;
283
+ removeDegenerateEdges(id: number): number;
284
+ xcafNewDocument(): number;
285
+ xcafClose(docId: number): void;
286
+ xcafAddShape(docId: number, shapeId: number): number;
287
+ xcafAddComponent(docId: number, parentTag: number, shapeId: number, tx: number, ty: number, tz: number, rx: number, ry: number, rz: number): number;
288
+ xcafSetColor(docId: number, tag: number, r: number, g: number, b: number): void;
289
+ xcafSetName(docId: number, tag: number, name: string): void;
290
+ xcafGetLabelInfo(docId: number, tag: number): {
291
+ labelId: number;
292
+ name: string;
293
+ hasColor: boolean;
294
+ r: number;
295
+ g: number;
296
+ b: number;
297
+ isAssembly: boolean;
298
+ isComponent: boolean;
299
+ shapeId: number;
300
+ };
301
+ xcafGetChildLabels(docId: number, parentTag: number): EmbindVectorI32;
302
+ xcafGetRootLabels(docId: number): EmbindVectorI32;
303
+ xcafExportSTEP(docId: number): string;
304
+ xcafImportSTEP(stepData: string): number;
305
+ xcafExportGLTF(docId: number, linDefl: number, angDefl: number): string;
306
+ delete(): void;
307
+ }
20
308
  /**
21
309
  * OCCT kernel compiled to WASM. Arena-based shape management
22
310
  * with branded handle types for type safety.
@@ -120,12 +408,26 @@ export declare class OcctKernel {
120
408
  chamfer(solid: ShapeHandle, edges: ShapeHandle[], distance: number): ShapeHandle;
121
409
  chamferDistAngle(solid: ShapeHandle, edges: ShapeHandle[], distance: number, angleDeg: number): ShapeHandle;
122
410
  shell(solid: ShapeHandle, facesToRemove: ShapeHandle[], thickness: number): ShapeHandle;
123
- offset(solid: ShapeHandle, distance: number): ShapeHandle;
411
+ /**
412
+ * Offset all faces of a solid by `distance`.
413
+ *
414
+ * @param tolerance - OCCT precision for the offset reconstruction. Use
415
+ * `1e-6` for precise offsets (matches brepjs default); `1e-3` is a
416
+ * coarser legacy value.
417
+ */
418
+ offset(solid: ShapeHandle, distance: number, tolerance: number): ShapeHandle;
124
419
  draft(shape: ShapeHandle, face: ShapeHandle, angleRad: number, direction: Vec3): ShapeHandle;
125
420
  pipe(profile: ShapeHandle, spine: ShapeHandle): ShapeHandle;
126
421
  simplePipe(profile: ShapeHandle, spine: ShapeHandle): ShapeHandle;
127
- loft(wires: ShapeHandle[], isSolid: boolean): ShapeHandle;
128
- loftWithVertices(wires: ShapeHandle[], isSolid: boolean, startVertex: ShapeHandle, endVertex: ShapeHandle): ShapeHandle;
422
+ /**
423
+ * Loft a solid (or shell) through a sequence of wire profiles.
424
+ *
425
+ * @param ruled - When `true`, sections are joined by ruled (linear)
426
+ * surfaces; when `false`, by smooth B-spline surfaces. The two modes
427
+ * produce dramatically different topology for the same input.
428
+ */
429
+ loft(wires: ShapeHandle[], isSolid: boolean, ruled: boolean): ShapeHandle;
430
+ loftWithVertices(wires: ShapeHandle[], isSolid: boolean, ruled: boolean, startVertex: ShapeHandle, endVertex: ShapeHandle): ShapeHandle;
129
431
  sweep(wire: ShapeHandle, spine: ShapeHandle, transitionMode?: TransitionMode): ShapeHandle;
130
432
  sweepPipeShell(profile: ShapeHandle, spine: ShapeHandle, freenet?: boolean, smooth?: boolean): ShapeHandle;
131
433
  draftPrism(shape: ShapeHandle, dx: number, dy: number, dz: number, angleDeg: number): ShapeHandle;
@@ -241,6 +543,15 @@ export declare class OcctKernel {
241
543
  getSurfaceArea(shape: ShapeHandle): number;
242
544
  getLength(shape: ShapeHandle): number;
243
545
  getCenterOfMass(shape: ShapeHandle): Vec3;
546
+ /**
547
+ * Surface (area-weighted) center of mass for a face. Equivalent to
548
+ * `BRepGProp::SurfaceProperties(face, props).CentreOfMass()`.
549
+ *
550
+ * Use this for face fingerprinting and finder predicates rather than a
551
+ * tessellation-based centroid — for non-planar faces (cylinders, holed
552
+ * planes) the two diverge.
553
+ */
554
+ getSurfaceCenterOfMass(face: ShapeHandle): Vec3;
244
555
  getLinearCenterOfMass(shape: ShapeHandle): Vec3;
245
556
  surfaceCurvature(face: ShapeHandle, u: number, v: number): CurvatureData;
246
557
  vertexPosition(vertex: ShapeHandle): Vec3;
@@ -254,6 +565,17 @@ export declare class OcctKernel {
254
565
  u: number;
255
566
  v: number;
256
567
  };
568
+ /**
569
+ * Extract cylinder data from a cylindrical face.
570
+ *
571
+ * Returns `null` when the face's underlying surface is not a cylinder,
572
+ * otherwise `{ radius, isDirect }` where `isDirect` mirrors
573
+ * `gp_Cylinder::Direct()` (i.e. whether U and V form a right-handed pair).
574
+ */
575
+ getFaceCylinderData(face: ShapeHandle): {
576
+ radius: number;
577
+ isDirect: boolean;
578
+ } | null;
257
579
  /** Project a 3D point onto a face, returning the closest point as Vec3. */
258
580
  projectPointOnFace(face: ShapeHandle, point: Vec3): Vec3;
259
581
  /** Classify a UV point relative to a face boundary. */
@@ -330,5 +652,27 @@ export declare class OcctKernel {
330
652
  /** Return a human-readable summary of a shape for debugging. */
331
653
  describe(shape: ShapeHandle): string;
332
654
  [Symbol.dispose](): void;
655
+ /**
656
+ * Return the underlying Emscripten module. Intended for integrators who
657
+ * need to hand the raw module to a third-party adapter (e.g.
658
+ * `brepjs.OcctWasmAdapter`) without bypassing {@link OcctKernel.init}.
659
+ *
660
+ * The module is owned by this `OcctKernel` instance — disposing the
661
+ * kernel does not invalidate the module reference, but the raw kernel
662
+ * obtained via {@link getRawKernel} *will* be deleted.
663
+ */
664
+ getRawModule(): OcctWasmModule;
665
+ /**
666
+ * Return the underlying raw Embind kernel. Intended for integrators who
667
+ * need to hand the raw kernel to a third-party adapter (e.g.
668
+ * `brepjs.OcctWasmAdapter`).
669
+ *
670
+ * Lifecycle: the raw kernel is owned by this `OcctKernel`. Calling
671
+ * `kernel[Symbol.dispose]()` (or letting the FinalizationRegistry collect
672
+ * the wrapper) will `releaseAll()` and `delete()` the raw kernel — so the
673
+ * adapter must not outlive the `OcctKernel` it was constructed from.
674
+ * Do not call `delete()` or `releaseAll()` on the raw kernel directly.
675
+ */
676
+ getRawKernel(): OcctRawKernel;
333
677
  }
334
678
  //# sourceMappingURL=index.d.ts.map
@@ -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
@@ -319,8 +319,15 @@ export class OcctKernel {
319
319
  }
320
320
  });
321
321
  }
322
- offset(solid, distance) {
323
- return wrap("offset", () => handle(this.#raw.offset(solid, distance)));
322
+ /**
323
+ * Offset all faces of a solid by `distance`.
324
+ *
325
+ * @param tolerance - OCCT precision for the offset reconstruction. Use
326
+ * `1e-6` for precise offsets (matches brepjs default); `1e-3` is a
327
+ * coarser legacy value.
328
+ */
329
+ offset(solid, distance, tolerance) {
330
+ return wrap("offset", () => handle(this.#raw.offset(solid, distance, tolerance)));
324
331
  }
325
332
  draft(shape, face, angleRad, direction) {
326
333
  return wrap("draft", () => handle(this.#raw.draft(shape, face, angleRad, direction.x, direction.y, direction.z)));
@@ -334,22 +341,29 @@ export class OcctKernel {
334
341
  simplePipe(profile, spine) {
335
342
  return wrap("simplePipe", () => handle(this.#raw.simplePipe(profile, spine)));
336
343
  }
337
- loft(wires, isSolid) {
344
+ /**
345
+ * Loft a solid (or shell) through a sequence of wire profiles.
346
+ *
347
+ * @param ruled - When `true`, sections are joined by ruled (linear)
348
+ * surfaces; when `false`, by smooth B-spline surfaces. The two modes
349
+ * produce dramatically different topology for the same input.
350
+ */
351
+ loft(wires, isSolid, ruled) {
338
352
  return wrap("loft", () => {
339
353
  const vec = this.#makeVectorU32(wires);
340
354
  try {
341
- return handle(this.#raw.loft(vec, isSolid));
355
+ return handle(this.#raw.loft(vec, isSolid, ruled));
342
356
  }
343
357
  finally {
344
358
  vec.delete();
345
359
  }
346
360
  });
347
361
  }
348
- loftWithVertices(wires, isSolid, startVertex, endVertex) {
362
+ loftWithVertices(wires, isSolid, ruled, startVertex, endVertex) {
349
363
  return wrap("loftWithVertices", () => {
350
364
  const vec = this.#makeVectorU32(wires);
351
365
  try {
352
- return handle(this.#raw.loftWithVertices(vec, isSolid, startVertex, endVertex));
366
+ return handle(this.#raw.loftWithVertices(vec, isSolid, ruled, startVertex, endVertex));
353
367
  }
354
368
  finally {
355
369
  vec.delete();
@@ -897,6 +911,20 @@ export class OcctKernel {
897
911
  return this.#vec3FromEmbind(v);
898
912
  });
899
913
  }
914
+ /**
915
+ * Surface (area-weighted) center of mass for a face. Equivalent to
916
+ * `BRepGProp::SurfaceProperties(face, props).CentreOfMass()`.
917
+ *
918
+ * Use this for face fingerprinting and finder predicates rather than a
919
+ * tessellation-based centroid — for non-planar faces (cylinders, holed
920
+ * planes) the two diverge.
921
+ */
922
+ getSurfaceCenterOfMass(face) {
923
+ return wrap("getSurfaceCenterOfMass", () => {
924
+ const v = this.#raw.getSurfaceCenterOfMass(face);
925
+ return this.#vec3FromEmbind(v);
926
+ });
927
+ }
900
928
  getLinearCenterOfMass(shape) {
901
929
  return wrap("getLinearCenterOfMass", () => {
902
930
  const v = this.#raw.getLinearCenterOfMass(shape);
@@ -940,6 +968,26 @@ export class OcctKernel {
940
968
  uvFromPoint(face, point) {
941
969
  return wrap("uvFromPoint", () => this.#vec2FromEmbind(this.#raw.uvFromPoint(face, point.x, point.y, point.z)));
942
970
  }
971
+ /**
972
+ * Extract cylinder data from a cylindrical face.
973
+ *
974
+ * Returns `null` when the face's underlying surface is not a cylinder,
975
+ * otherwise `{ radius, isDirect }` where `isDirect` mirrors
976
+ * `gp_Cylinder::Direct()` (i.e. whether U and V form a right-handed pair).
977
+ */
978
+ getFaceCylinderData(face) {
979
+ return wrap("getFaceCylinderData", () => {
980
+ const vec = this.#raw.getFaceCylinderData(face);
981
+ try {
982
+ if (vec.size() === 0)
983
+ return null;
984
+ return { radius: vec.get(0), isDirect: vec.get(1) !== 0 };
985
+ }
986
+ finally {
987
+ vec.delete();
988
+ }
989
+ });
990
+ }
943
991
  /** Project a 3D point onto a face, returning the closest point as Vec3. */
944
992
  projectPointOnFace(face, point) {
945
993
  return wrap("projectPointOnFace", () => {
@@ -1335,8 +1383,44 @@ export class OcctKernel {
1335
1383
  }
1336
1384
  [Symbol.dispose]() {
1337
1385
  kernelRegistry.unregister(this);
1338
- this.#raw.releaseAll();
1339
- this.#raw.delete();
1386
+ try {
1387
+ this.#raw.releaseAll();
1388
+ this.#raw.delete();
1389
+ }
1390
+ catch {
1391
+ // Raw kernel was already deleted externally (e.g. by an adapter
1392
+ // following Embind teardown conventions) — ignore, matching the
1393
+ // FinalizationRegistry callback's behavior.
1394
+ }
1395
+ }
1396
+ // =======================================================================
1397
+ // Raw module / kernel access (for third-party adapters)
1398
+ // =======================================================================
1399
+ /**
1400
+ * Return the underlying Emscripten module. Intended for integrators who
1401
+ * need to hand the raw module to a third-party adapter (e.g.
1402
+ * `brepjs.OcctWasmAdapter`) without bypassing {@link OcctKernel.init}.
1403
+ *
1404
+ * The module is owned by this `OcctKernel` instance — disposing the
1405
+ * kernel does not invalidate the module reference, but the raw kernel
1406
+ * obtained via {@link getRawKernel} *will* be deleted.
1407
+ */
1408
+ getRawModule() {
1409
+ return this.#module;
1410
+ }
1411
+ /**
1412
+ * Return the underlying raw Embind kernel. Intended for integrators who
1413
+ * need to hand the raw kernel to a third-party adapter (e.g.
1414
+ * `brepjs.OcctWasmAdapter`).
1415
+ *
1416
+ * Lifecycle: the raw kernel is owned by this `OcctKernel`. Calling
1417
+ * `kernel[Symbol.dispose]()` (or letting the FinalizationRegistry collect
1418
+ * the wrapper) will `releaseAll()` and `delete()` the raw kernel — so the
1419
+ * adapter must not outlive the `OcctKernel` it was constructed from.
1420
+ * Do not call `delete()` or `releaseAll()` on the raw kernel directly.
1421
+ */
1422
+ getRawKernel() {
1423
+ return this.#raw;
1340
1424
  }
1341
1425
  // =======================================================================
1342
1426
  // Private helpers
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "occt-wasm",
3
- "version": "1.5.0",
3
+ "version": "2.0.0",
4
4
  "description": "OpenCascade (OCCT) compiled to WebAssembly with a clean TypeScript API",
5
5
  "type": "module",
6
6
  "exports": {