brepjs 8.3.0 → 8.7.4
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/2d/lib/Curve2D.d.ts.map +1 -1
- package/dist/2d.cjs +2 -2
- package/dist/2d.js +13 -13
- package/dist/{Blueprint-a3ukJMG4.cjs → Blueprint-BcbOBF-9.cjs} +17 -102
- package/dist/{Blueprint-CdVaHDSx.js → Blueprint-Cmh8lKc4.js} +35 -120
- package/dist/{boolean2D-pvPIs21j.cjs → boolean2D-CqacqjME.cjs} +24 -25
- package/dist/{boolean2D-DzA0STqC.js → boolean2D-D94Axs3i.js} +23 -24
- package/dist/{booleanFns-BcQUqjUu.js → booleanFns-DdjtpcM6.js} +306 -12
- package/dist/{booleanFns-Cd414V3l.cjs → booleanFns-NtKxkiXn.cjs} +299 -5
- package/dist/brepjs.cjs +1782 -68
- package/dist/brepjs.js +2030 -317
- package/dist/core/errors.d.ts +25 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core.cjs +4 -4
- package/dist/core.js +4 -4
- package/dist/{cornerFinder-DvPiz-VR.js → cornerFinder-BBOYfsXl.js} +1 -1
- package/dist/{cornerFinder-BdKtobgb.cjs → cornerFinder-Bqy8Lw2p.cjs} +1 -1
- package/dist/{curveFns-CyHyk29c.js → curveFns-B85Glnfo.js} +19 -17
- package/dist/{curveFns-B5EQsSwv.cjs → curveFns-BXCbASW-.cjs} +6 -4
- package/dist/{drawFns-CAAE4Z88.js → drawFns-B-gJ2WUc.js} +52 -23
- package/dist/{drawFns-Mr2pghU8.cjs → drawFns-CAmFEqd1.cjs} +68 -39
- package/dist/{errors-wGhcJMpB.js → errors-Coh_5_19.js} +35 -1
- package/dist/{errors-DK1VAdP4.cjs → errors-eRQu29oc.cjs} +35 -1
- package/dist/{faceFns-ub3CugDN.js → faceFns-CltrEfOo.js} +109 -12
- package/dist/{faceFns-D1Sqnlu6.cjs → faceFns-DcndPHWm.cjs} +103 -6
- package/dist/{helpers-CP2KrBZl.cjs → helpers-CC21GeAr.cjs} +8 -9
- package/dist/{helpers-r_e-u1JM.js → helpers-SksQIreB.js} +16 -17
- package/dist/index.d.ts +20 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/io/dxfImportFns.d.ts +17 -0
- package/dist/io/dxfImportFns.d.ts.map +1 -0
- package/dist/io/objImportFns.d.ts +19 -0
- package/dist/io/objImportFns.d.ts.map +1 -0
- package/dist/io/threemfImportFns.d.ts +19 -0
- package/dist/io/threemfImportFns.d.ts.map +1 -0
- package/dist/io.cjs +5 -5
- package/dist/io.js +5 -5
- package/dist/kernel/hullOps.d.ts +23 -0
- package/dist/kernel/hullOps.d.ts.map +1 -0
- package/dist/kernel/occtAdapter.d.ts +11 -0
- package/dist/kernel/occtAdapter.d.ts.map +1 -1
- package/dist/kernel/solverAdapter.d.ts +39 -0
- package/dist/kernel/solverAdapter.d.ts.map +1 -0
- package/dist/kernel/types.d.ts +11 -0
- package/dist/kernel/types.d.ts.map +1 -1
- package/dist/{loft-PMRx9iMG.cjs → loft-BcyyvWCj.cjs} +28 -28
- package/dist/{loft-BHn7GKm8.js → loft-CJMPx1NQ.js} +16 -16
- package/dist/{measurement-BfhEneUl.js → measurement-ByOztLxb.js} +3 -3
- package/dist/{measurement-B06hNs89.cjs → measurement-DU3ry-0Q.cjs} +3 -3
- package/dist/measurement.cjs +1 -1
- package/dist/measurement.js +1 -1
- package/dist/{meshFns-BEvGVcym.js → meshFns-D2gLyLFt.js} +3 -3
- package/dist/{meshFns-CJV_k_EQ.cjs → meshFns-DawUwI3W.cjs} +3 -3
- package/dist/{occtBoundary-CoXB2xvx.js → occtBoundary-CWzWqBCm.js} +436 -7
- package/dist/{occtBoundary-BFAaUtA7.cjs → occtBoundary-DH2VO-rq.cjs} +431 -2
- package/dist/operations/assemblyFns.d.ts +1 -0
- package/dist/operations/assemblyFns.d.ts.map +1 -1
- package/dist/operations/guidedSweepFns.d.ts +25 -0
- package/dist/operations/guidedSweepFns.d.ts.map +1 -0
- package/dist/operations/mateFns.d.ts +50 -0
- package/dist/operations/mateFns.d.ts.map +1 -0
- package/dist/operations/multiSweepFns.d.ts +32 -0
- package/dist/operations/multiSweepFns.d.ts.map +1 -0
- package/dist/operations/roofFns.d.ts +16 -0
- package/dist/operations/roofFns.d.ts.map +1 -0
- package/dist/operations/straightSkeleton.d.ts +28 -0
- package/dist/operations/straightSkeleton.d.ts.map +1 -0
- package/dist/{operations-CYGNxn5D.cjs → operations-CdELWxgv.cjs} +7 -7
- package/dist/{operations-B314mytX.js → operations-DiXo_4t9.js} +15 -15
- package/dist/operations.cjs +2 -2
- package/dist/operations.js +13 -13
- package/dist/query.cjs +5 -5
- package/dist/query.js +7 -7
- package/dist/result.cjs +1 -1
- package/dist/result.js +1 -1
- package/dist/{shapeFns-Z_ScEjmn.cjs → shapeFns-3RYtsUVY.cjs} +54 -21
- package/dist/{shapeFns-CWd_ASDV.js → shapeFns-4ioRrhih.js} +52 -19
- package/dist/{shapeTypes-UqVCIO_T.cjs → shapeTypes-CMjrTv36.cjs} +1 -1
- package/dist/{shapeTypes-BU2LKv2S.js → shapeTypes-D0vfRxWb.js} +13 -13
- package/dist/sketching.cjs +2 -2
- package/dist/sketching.js +2 -2
- package/dist/{curveBuilders-CN72XaIQ.js → surfaceBuilders-B7Jxob8g.js} +106 -13
- package/dist/{curveBuilders-Du03_Yyf.cjs → surfaceBuilders-Xx9DRRxs.cjs} +96 -3
- package/dist/text/textBlueprints.d.ts +38 -0
- package/dist/text/textBlueprints.d.ts.map +1 -1
- package/dist/topology/api.d.ts +5 -0
- package/dist/topology/api.d.ts.map +1 -1
- package/dist/topology/booleanFns.d.ts +10 -1
- package/dist/topology/booleanFns.d.ts.map +1 -1
- package/dist/topology/colorFns.d.ts +38 -0
- package/dist/topology/colorFns.d.ts.map +1 -0
- package/dist/topology/curveFns.d.ts +1 -1
- package/dist/topology/curveFns.d.ts.map +1 -1
- package/dist/topology/faceTagFns.d.ts +44 -0
- package/dist/topology/faceTagFns.d.ts.map +1 -0
- package/dist/topology/hullFns.d.ts +16 -0
- package/dist/topology/hullFns.d.ts.map +1 -0
- package/dist/topology/minkowskiFns.d.ts +20 -0
- package/dist/topology/minkowskiFns.d.ts.map +1 -0
- package/dist/topology/modifierFns.d.ts.map +1 -1
- package/dist/topology/polyhedronFns.d.ts +8 -0
- package/dist/topology/polyhedronFns.d.ts.map +1 -0
- package/dist/topology/shapeFns.d.ts +4 -0
- package/dist/topology/shapeFns.d.ts.map +1 -1
- package/dist/topology/surfaceBuilders.d.ts +7 -0
- package/dist/topology/surfaceBuilders.d.ts.map +1 -1
- package/dist/topology/surfaceFns.d.ts +38 -0
- package/dist/topology/surfaceFns.d.ts.map +1 -0
- package/dist/{topology-A7-jUtHB.cjs → topology-D-nGjCzV.cjs} +19 -20
- package/dist/{topology-BupialMm.js → topology-DRP9zreU.js} +8 -9
- package/dist/topology.cjs +13 -14
- package/dist/topology.js +51 -52
- package/dist/{vectors-BhfKwL9J.js → vectors-CZV4ZrTz.js} +2 -2
- package/dist/{vectors-t1XG4LpL.cjs → vectors-DwFeX0Ja.cjs} +2 -2
- package/dist/vectors.cjs +2 -2
- package/dist/vectors.js +2 -2
- package/package.json +8 -7
- package/dist/cast-C107o5ow.cjs +0 -102
- package/dist/cast-D0OhP1nV.js +0 -103
|
@@ -15,6 +15,17 @@ export declare class OCCTAdapter implements KernelAdapter {
|
|
|
15
15
|
section(shape: OcShape, plane: OcShape, approximation?: boolean): OcShape;
|
|
16
16
|
fuseAll(shapes: OcShape[], options?: BooleanOptions): OcShape;
|
|
17
17
|
cutAll(shape: OcShape, tools: OcShape[], options?: BooleanOptions): OcShape;
|
|
18
|
+
hull(shapes: OcShape[], tolerance: number): OcShape;
|
|
19
|
+
hullFromPoints(points: Array<{
|
|
20
|
+
x: number;
|
|
21
|
+
y: number;
|
|
22
|
+
z: number;
|
|
23
|
+
}>, tolerance: number): OcShape;
|
|
24
|
+
buildSolidFromFaces(points: Array<{
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
z: number;
|
|
28
|
+
}>, faces: Array<readonly [number, number, number]>, tolerance: number): OcShape;
|
|
18
29
|
makeVertex(x: number, y: number, z: number): OcShape;
|
|
19
30
|
makeEdge(curve: OcType, start?: number, end?: number): OcShape;
|
|
20
31
|
makeWire(edges: OcShape[]): OcShape;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"occtAdapter.d.ts","sourceRoot":"","sources":["../../src/kernel/occtAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,cAAc,EACd,SAAS,EACT,WAAW,EACZ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"occtAdapter.d.ts","sourceRoot":"","sources":["../../src/kernel/occtAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constraint solver adapter — analytical solver for simple assembly mates.
|
|
3
|
+
*/
|
|
4
|
+
/** 3D vector (local alias to avoid cross-layer import). */
|
|
5
|
+
type Vec3 = readonly [number, number, number];
|
|
6
|
+
export interface SolverEntity {
|
|
7
|
+
type: 'plane' | 'axis' | 'point';
|
|
8
|
+
origin: Vec3;
|
|
9
|
+
normal?: Vec3;
|
|
10
|
+
direction?: Vec3;
|
|
11
|
+
}
|
|
12
|
+
export interface SolverConstraint {
|
|
13
|
+
type: 'coincident' | 'concentric' | 'distance' | 'angle' | 'fixed';
|
|
14
|
+
entityA?: {
|
|
15
|
+
node: string;
|
|
16
|
+
entity: SolverEntity;
|
|
17
|
+
};
|
|
18
|
+
entityB?: {
|
|
19
|
+
node: string;
|
|
20
|
+
entity: SolverEntity;
|
|
21
|
+
};
|
|
22
|
+
value?: number;
|
|
23
|
+
}
|
|
24
|
+
export interface SolverResult {
|
|
25
|
+
transforms: Map<string, {
|
|
26
|
+
position: Vec3;
|
|
27
|
+
rotation: [number, number, number, number];
|
|
28
|
+
}>;
|
|
29
|
+
dof: number;
|
|
30
|
+
converged: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Solve assembly constraints analytically.
|
|
34
|
+
*
|
|
35
|
+
* Handles: fixed, coincident planes, distance between planes, concentric axes.
|
|
36
|
+
*/
|
|
37
|
+
export declare function solveConstraints(nodes: string[], constraints: SolverConstraint[]): SolverResult;
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=solverAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solverAdapter.d.ts","sourceRoot":"","sources":["../../src/kernel/solverAdapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2DAA2D;AAC3D,KAAK,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IACjC,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;IACnE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IACjD,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC,CAAC;IACxF,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,YAAY,CA0D/F"}
|
package/dist/kernel/types.d.ts
CHANGED
|
@@ -52,6 +52,17 @@ export interface KernelAdapter {
|
|
|
52
52
|
section(shape: OcShape, plane: OcShape, approximation?: boolean): OcShape;
|
|
53
53
|
fuseAll(shapes: OcShape[], options?: BooleanOptions): OcShape;
|
|
54
54
|
cutAll(shape: OcShape, tools: OcShape[], options?: BooleanOptions): OcShape;
|
|
55
|
+
hull(shapes: OcShape[], tolerance: number): OcShape;
|
|
56
|
+
hullFromPoints(points: Array<{
|
|
57
|
+
x: number;
|
|
58
|
+
y: number;
|
|
59
|
+
z: number;
|
|
60
|
+
}>, tolerance: number): OcShape;
|
|
61
|
+
buildSolidFromFaces(points: Array<{
|
|
62
|
+
x: number;
|
|
63
|
+
y: number;
|
|
64
|
+
z: number;
|
|
65
|
+
}>, faces: Array<readonly [number, number, number]>, tolerance: number): OcShape;
|
|
55
66
|
makeVertex(x: number, y: number, z: number): OcShape;
|
|
56
67
|
makeEdge(curve: OcType, start?: number, end?: number): OcShape;
|
|
57
68
|
makeWire(edges: OcShape[]): OcShape;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/kernel/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/kernel/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const occtBoundary = require("./occtBoundary-
|
|
2
|
+
const occtBoundary = require("./occtBoundary-DH2VO-rq.cjs");
|
|
3
3
|
const vecOps = require("./vecOps-CjRL1jau.cjs");
|
|
4
|
-
const
|
|
5
|
-
const errors = require("./errors-
|
|
6
|
-
const shapeTypes = require("./shapeTypes-
|
|
7
|
-
const
|
|
4
|
+
const faceFns = require("./faceFns-DcndPHWm.cjs");
|
|
5
|
+
const errors = require("./errors-eRQu29oc.cjs");
|
|
6
|
+
const shapeTypes = require("./shapeTypes-CMjrTv36.cjs");
|
|
7
|
+
const surfaceBuilders = require("./surfaceBuilders-Xx9DRRxs.cjs");
|
|
8
8
|
function buildLawFromProfile(extrusionLength, { profile, endFactor = 1 }) {
|
|
9
9
|
const oc = occtBoundary.getKernel().oc;
|
|
10
10
|
const r = shapeTypes.gcWithScope();
|
|
@@ -24,7 +24,7 @@ function buildLawFromProfile(extrusionLength, { profile, endFactor = 1 }) {
|
|
|
24
24
|
}
|
|
25
25
|
function weldShapes(facesOrShells) {
|
|
26
26
|
const sewn = occtBoundary.getKernel().sew(facesOrShells.map((s) => s.wrapped));
|
|
27
|
-
return errors.unwrap(
|
|
27
|
+
return errors.unwrap(faceFns.cast(errors.unwrap(faceFns.downcast(sewn))));
|
|
28
28
|
}
|
|
29
29
|
function weldShellsAndFaces(facesOrShells, ignoreType = false) {
|
|
30
30
|
const shell = weldShapes(facesOrShells);
|
|
@@ -117,7 +117,7 @@ function makeEllipsoid(aLength, bLength, cLength) {
|
|
|
117
117
|
});
|
|
118
118
|
ellipsoidTrsf.transform.delete();
|
|
119
119
|
const shell = errors.unwrap(
|
|
120
|
-
|
|
120
|
+
faceFns.cast(r(new oc.BRepBuilderAPI_MakeShell_2(baseSurface.UReversed(), false)).Shell())
|
|
121
121
|
);
|
|
122
122
|
return errors.unwrap(makeSolid([shell]));
|
|
123
123
|
} finally {
|
|
@@ -148,8 +148,8 @@ function makeOffset(face, offset, tolerance = 1e-6) {
|
|
|
148
148
|
progress
|
|
149
149
|
);
|
|
150
150
|
return errors.andThen(
|
|
151
|
-
|
|
152
|
-
(downcasted) => errors.andThen(
|
|
151
|
+
faceFns.downcast(offsetBuilder.Shape()),
|
|
152
|
+
(downcasted) => errors.andThen(faceFns.cast(downcasted), (newShape) => {
|
|
153
153
|
if (!shapeTypes.isShape3D(newShape))
|
|
154
154
|
return errors.err(errors.typeCastError("OFFSET_NOT_3D", "Could not offset to a 3d shape"));
|
|
155
155
|
return errors.ok(newShape);
|
|
@@ -175,7 +175,7 @@ function makeSolid(facesOrShells) {
|
|
|
175
175
|
const r = shapeTypes.gcWithScope();
|
|
176
176
|
const oc = occtBoundary.getKernel().oc;
|
|
177
177
|
const shell = weldShapes(facesOrShells);
|
|
178
|
-
return errors.andThen(
|
|
178
|
+
return errors.andThen(faceFns.cast(r(new oc.ShapeFix_Solid_1()).SolidFromShell(shell.wrapped)), (solid) => {
|
|
179
179
|
if (!shapeTypes.isSolid(solid))
|
|
180
180
|
return errors.err(errors.typeCastError("SOLID_BUILD_FAILED", "Could not make a solid of faces and shells"));
|
|
181
181
|
return errors.ok(solid);
|
|
@@ -187,7 +187,7 @@ const basicFaceExtrusion = (face, extrusionVec) => {
|
|
|
187
187
|
const vec = occtBoundary.toVec3(extrusionVec);
|
|
188
188
|
const ocVec = r(new oc.gp_Vec_4(vec[0], vec[1], vec[2]));
|
|
189
189
|
const solidBuilder = r(new oc.BRepPrimAPI_MakePrism_1(face.wrapped, ocVec, false, true));
|
|
190
|
-
const solid = shapeTypes.createSolid(errors.unwrap(
|
|
190
|
+
const solid = shapeTypes.createSolid(errors.unwrap(faceFns.downcast(solidBuilder.Shape())));
|
|
191
191
|
gc();
|
|
192
192
|
return solid;
|
|
193
193
|
};
|
|
@@ -198,8 +198,8 @@ const revolution = (face, center = [0, 0, 0], direction = [0, 0, 1], angle = 360
|
|
|
198
198
|
const directionVec = occtBoundary.toVec3(direction);
|
|
199
199
|
const ax = r(occtBoundary.makeOcAx1(centerVec, directionVec));
|
|
200
200
|
const revolBuilder = r(new oc.BRepPrimAPI_MakeRevol_1(face.wrapped, ax, angle * vecOps.DEG2RAD, false));
|
|
201
|
-
const result = errors.andThen(
|
|
202
|
-
if (!
|
|
201
|
+
const result = errors.andThen(faceFns.cast(revolBuilder.Shape()), (shape) => {
|
|
202
|
+
if (!faceFns.isShape3D(shape))
|
|
203
203
|
return errors.err(errors.typeCastError("REVOLUTION_NOT_3D", "Revolution did not produce a 3D shape"));
|
|
204
204
|
return errors.ok(shape);
|
|
205
205
|
});
|
|
@@ -224,8 +224,8 @@ function genericSweep(wire, spine, {
|
|
|
224
224
|
if (sweepMode === "simple" && !shellMode) {
|
|
225
225
|
const kernel = occtBoundary.getKernel();
|
|
226
226
|
const resultOc = kernel.simplePipe(wire.wrapped, spine.wrapped);
|
|
227
|
-
const result = errors.andThen(
|
|
228
|
-
if (!
|
|
227
|
+
const result = errors.andThen(faceFns.cast(resultOc), (shape2) => {
|
|
228
|
+
if (!faceFns.isShape3D(shape2))
|
|
229
229
|
return errors.err(errors.typeCastError("SWEEP_NOT_3D", "Simple pipe did not produce a 3D shape"));
|
|
230
230
|
return errors.ok(shape2);
|
|
231
231
|
});
|
|
@@ -275,19 +275,19 @@ function genericSweep(wire, spine, {
|
|
|
275
275
|
if (!shellMode) {
|
|
276
276
|
sweepBuilder.MakeSolid();
|
|
277
277
|
}
|
|
278
|
-
const shape = errors.unwrap(
|
|
279
|
-
if (!
|
|
278
|
+
const shape = errors.unwrap(faceFns.cast(sweepBuilder.Shape()));
|
|
279
|
+
if (!faceFns.isShape3D(shape)) {
|
|
280
280
|
gc();
|
|
281
281
|
return errors.err(errors.typeCastError("SWEEP_NOT_3D", "Sweep did not produce a 3D shape"));
|
|
282
282
|
}
|
|
283
283
|
if (shellMode) {
|
|
284
|
-
const startWire = errors.unwrap(
|
|
285
|
-
const endWire = errors.unwrap(
|
|
286
|
-
if (!
|
|
284
|
+
const startWire = errors.unwrap(faceFns.cast(sweepBuilder.FirstShape()));
|
|
285
|
+
const endWire = errors.unwrap(faceFns.cast(sweepBuilder.LastShape()));
|
|
286
|
+
if (!faceFns.isWire(startWire)) {
|
|
287
287
|
gc();
|
|
288
288
|
return errors.err(errors.typeCastError("SWEEP_START_NOT_WIRE", "Sweep did not produce a start Wire"));
|
|
289
289
|
}
|
|
290
|
-
if (!
|
|
290
|
+
if (!faceFns.isWire(endWire)) {
|
|
291
291
|
gc();
|
|
292
292
|
return errors.err(errors.typeCastError("SWEEP_END_NOT_WIRE", "Sweep did not produce an end Wire"));
|
|
293
293
|
}
|
|
@@ -302,8 +302,8 @@ function complexExtrude(wire, center, normal, profileShape, shellMode = false) {
|
|
|
302
302
|
const centerVec = occtBoundary.toVec3(center);
|
|
303
303
|
const normalVec = occtBoundary.toVec3(normal);
|
|
304
304
|
const endVec = vecOps.vecAdd(centerVec, normalVec);
|
|
305
|
-
const mainSpineEdge = r(
|
|
306
|
-
const spine = r(errors.unwrap(
|
|
305
|
+
const mainSpineEdge = r(surfaceBuilders.makeLine(centerVec, endVec));
|
|
306
|
+
const spine = r(errors.unwrap(surfaceBuilders.assembleWire([mainSpineEdge])));
|
|
307
307
|
const law = profileShape ? r(errors.unwrap(buildLawFromProfile(vecOps.vecLength(normalVec), profileShape))) : null;
|
|
308
308
|
const result = shellMode ? genericSweep(wire, spine, { law }, shellMode) : genericSweep(wire, spine, { law }, shellMode);
|
|
309
309
|
gc();
|
|
@@ -314,12 +314,12 @@ function twistExtrude(wire, angleDegrees, center, normal, profileShape, shellMod
|
|
|
314
314
|
const centerVec = occtBoundary.toVec3(center);
|
|
315
315
|
const normalVec = occtBoundary.toVec3(normal);
|
|
316
316
|
const endVec = vecOps.vecAdd(centerVec, normalVec);
|
|
317
|
-
const mainSpineEdge = r(
|
|
318
|
-
const spine = r(errors.unwrap(
|
|
317
|
+
const mainSpineEdge = r(surfaceBuilders.makeLine(centerVec, endVec));
|
|
318
|
+
const spine = r(errors.unwrap(surfaceBuilders.assembleWire([mainSpineEdge])));
|
|
319
319
|
const extrusionLength = vecOps.vecLength(normalVec);
|
|
320
320
|
const pitch = 360 / angleDegrees * extrusionLength;
|
|
321
321
|
const radius = 1;
|
|
322
|
-
const auxiliarySpine = r(
|
|
322
|
+
const auxiliarySpine = r(surfaceBuilders.makeHelix(pitch, extrusionLength, radius, centerVec, normalVec));
|
|
323
323
|
const law = profileShape ? r(errors.unwrap(buildLawFromProfile(extrusionLength, profileShape))) : null;
|
|
324
324
|
const result = shellMode ? genericSweep(wire, spine, { auxiliarySpine, law }, shellMode) : genericSweep(wire, spine, { auxiliarySpine, law }, shellMode);
|
|
325
325
|
gc();
|
|
@@ -345,8 +345,8 @@ const loft = (wires, { ruled = true, startPoint, endPoint } = {}, returnShell =
|
|
|
345
345
|
gc();
|
|
346
346
|
return errors.err(errors.occtError("LOFT_FAILED", "Loft operation failed"));
|
|
347
347
|
}
|
|
348
|
-
const result = errors.andThen(
|
|
349
|
-
if (!
|
|
348
|
+
const result = errors.andThen(faceFns.cast(loftBuilder.Shape()), (shape) => {
|
|
349
|
+
if (!faceFns.isShape3D(shape))
|
|
350
350
|
return errors.err(errors.typeCastError("LOFT_NOT_3D", "Loft did not produce a 3D shape"));
|
|
351
351
|
return errors.ok(shape);
|
|
352
352
|
});
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { g as getKernel,
|
|
1
|
+
import { g as getKernel, d as toOcPnt, c as makeOcAx2, m as makeOcAx1, a as toVec3 } from "./occtBoundary-CWzWqBCm.js";
|
|
2
2
|
import { D as DEG2RAD, v as vecAdd, g as vecLength } from "./vecOps-ZDdZWbwT.js";
|
|
3
|
-
import { c as cast, d as downcast, a as isShape3D$1, b as isWire } from "./
|
|
4
|
-
import { e as err, x as validationError, l as ok, u as unwrap, p as typeCastError, a as andThen, o as occtError } from "./errors-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import { c as cast, d as downcast, a as isShape3D$1, b as isWire } from "./faceFns-CltrEfOo.js";
|
|
4
|
+
import { e as err, x as validationError, l as ok, u as unwrap, p as typeCastError, a as andThen, o as occtError } from "./errors-Coh_5_19.js";
|
|
5
|
+
import { n as gcWithScope, j as isShell, s as createCompound, t as createVertex, u as createSolid, h as isShape3D, k as isSolid, r as localGC } from "./shapeTypes-D0vfRxWb.js";
|
|
6
|
+
import { a as makeLine, b as assembleWire, c as makeHelix } from "./surfaceBuilders-B7Jxob8g.js";
|
|
7
7
|
function buildLawFromProfile(extrusionLength, { profile, endFactor = 1 }) {
|
|
8
8
|
const oc = getKernel().oc;
|
|
9
9
|
const r = gcWithScope();
|
|
@@ -353,17 +353,17 @@ const loft = (wires, { ruled = true, startPoint, endPoint } = {}, returnShell =
|
|
|
353
353
|
return result;
|
|
354
354
|
};
|
|
355
355
|
export {
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
356
|
+
makeSolid as a,
|
|
357
|
+
basicFaceExtrusion as b,
|
|
358
|
+
complexExtrude as c,
|
|
359
|
+
makeCone as d,
|
|
360
|
+
makeCylinder as e,
|
|
361
|
+
makeEllipsoid as f,
|
|
362
|
+
genericSweep as g,
|
|
363
|
+
makeOffset as h,
|
|
364
|
+
makeSphere as i,
|
|
365
|
+
makeTorus as j,
|
|
366
|
+
makeVertex as k,
|
|
367
367
|
loft as l,
|
|
368
368
|
makeCompound as m,
|
|
369
369
|
buildLawFromProfile as n,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as getKernel, s as surfaceCurvature } from "./occtBoundary-
|
|
2
|
-
import {
|
|
3
|
-
import { u as uvBounds } from "./faceFns-
|
|
1
|
+
import { g as getKernel, s as surfaceCurvature } from "./occtBoundary-CWzWqBCm.js";
|
|
2
|
+
import { n as gcWithScope } from "./shapeTypes-D0vfRxWb.js";
|
|
3
|
+
import { u as uvBounds } from "./faceFns-CltrEfOo.js";
|
|
4
4
|
function assertShapeNotNull(shape, fn) {
|
|
5
5
|
if (shape.wrapped.IsNull()) {
|
|
6
6
|
throw new Error(`${fn}: shape is a null shape`);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const occtBoundary = require("./occtBoundary-
|
|
3
|
-
const shapeTypes = require("./shapeTypes-
|
|
4
|
-
const faceFns = require("./faceFns-
|
|
2
|
+
const occtBoundary = require("./occtBoundary-DH2VO-rq.cjs");
|
|
3
|
+
const shapeTypes = require("./shapeTypes-CMjrTv36.cjs");
|
|
4
|
+
const faceFns = require("./faceFns-DcndPHWm.cjs");
|
|
5
5
|
function assertShapeNotNull(shape, fn) {
|
|
6
6
|
if (shape.wrapped.IsNull()) {
|
|
7
7
|
throw new Error(`${fn}: shape is a null shape`);
|
package/dist/measurement.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const measurement = require("./measurement-
|
|
3
|
+
const measurement = require("./measurement-DU3ry-0Q.cjs");
|
|
4
4
|
exports.createDistanceQuery = measurement.createDistanceQuery;
|
|
5
5
|
exports.measureArea = measurement.measureArea;
|
|
6
6
|
exports.measureDistance = measurement.measureDistance;
|
package/dist/measurement.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { g as getKernel, u as uniqueIOFilename } from "./occtBoundary-
|
|
2
|
-
import { l as ok, e as err, i as ioError } from "./errors-
|
|
3
|
-
import { g as getFaceOrigins } from "./shapeFns-
|
|
1
|
+
import { g as getKernel, u as uniqueIOFilename } from "./occtBoundary-CWzWqBCm.js";
|
|
2
|
+
import { l as ok, e as err, i as ioError } from "./errors-Coh_5_19.js";
|
|
3
|
+
import { g as getFaceOrigins } from "./shapeFns-4ioRrhih.js";
|
|
4
4
|
function buildMeshCacheKey(tolerance, angularTolerance, skipNormals) {
|
|
5
5
|
return `${tolerance}:${angularTolerance}:${skipNormals}`;
|
|
6
6
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const occtBoundary = require("./occtBoundary-
|
|
3
|
-
const errors = require("./errors-
|
|
4
|
-
const shapeFns = require("./shapeFns-
|
|
2
|
+
const occtBoundary = require("./occtBoundary-DH2VO-rq.cjs");
|
|
3
|
+
const errors = require("./errors-eRQu29oc.cjs");
|
|
4
|
+
const shapeFns = require("./shapeFns-3RYtsUVY.cjs");
|
|
5
5
|
function buildMeshCacheKey(tolerance, angularTolerance, skipNormals) {
|
|
6
6
|
return `${tolerance}:${angularTolerance}:${skipNormals}`;
|
|
7
7
|
}
|