brepjs 12.3.0 → 12.4.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/2d/blueprints/Blueprint.d.ts +1 -1
- package/dist/2d/blueprints/Blueprint.d.ts.map +1 -1
- package/dist/2d.cjs +2 -2
- package/dist/2d.js +3 -3
- package/dist/{Blueprint-Bh6166KA.cjs → Blueprint-CoFJDAQd.cjs} +6 -6
- package/dist/{Blueprint-BBLKmtl9.js → Blueprint-CtuUvzex.js} +6 -6
- package/dist/{boolean2D-Bl4iyJfa.cjs → boolean2D-Dk-vLBdl.cjs} +8 -8
- package/dist/{boolean2D-D2s-G0Wm.js → boolean2D-x2irapGj.js} +8 -8
- package/dist/{booleanFns-DdbAk1KC.cjs → booleanFns-BJjYqwJ5.cjs} +3 -3
- package/dist/{booleanFns-CKWVFBtF.js → booleanFns-DtOkwLHI.js} +3 -3
- package/dist/brepjs.cjs +218 -17
- package/dist/brepjs.js +229 -28
- package/dist/core.cjs +1 -1
- package/dist/core.js +1 -1
- package/dist/{cornerFinder-zd2oBgyp.cjs → cornerFinder-BESZIitp.cjs} +2 -2
- package/dist/{cornerFinder-C-o3TN3q.js → cornerFinder-FY38t0zq.js} +2 -2
- package/dist/{curveFns-p0x8jy0i.cjs → curveFns-Ch87sD5O.cjs} +1 -1
- package/dist/{curveFns-DyVPTb1r.js → curveFns-LRNGcHXh.js} +1 -1
- package/dist/{drawFns-DXwZzno9.cjs → drawFns-BEeoD1yO.cjs} +16 -16
- package/dist/{drawFns-DpAQM_F6.js → drawFns-D8QyY7cg.js} +16 -16
- package/dist/{faceFns-CvR-ZEQA.js → faceFns-B6ebRh5I.js} +1 -1
- package/dist/{faceFns-SVADeb01.cjs → faceFns-BLTEPBKq.cjs} +1 -1
- package/dist/{helpers-3fsqd4mW.cjs → helpers-DNzVfe-Z.cjs} +4 -4
- package/dist/{helpers-F_D1WON3.js → helpers-DeFPsrcI.js} +4 -4
- package/dist/io.cjs +3 -3
- package/dist/io.js +3 -3
- package/dist/kernel/brepkitAdapter.d.ts +30 -0
- package/dist/kernel/brepkitAdapter.d.ts.map +1 -1
- package/dist/kernel/brepkitWasmTypes.d.ts +2 -2
- package/dist/kernel/brepkitWasmTypes.d.ts.map +1 -1
- package/dist/kernel/defaultAdapter.d.ts +34 -0
- package/dist/kernel/defaultAdapter.d.ts.map +1 -1
- package/dist/kernel/types.d.ts +68 -0
- package/dist/kernel/types.d.ts.map +1 -1
- package/dist/{loft-98s9uwpg.cjs → loft-DR1UN5uN.cjs} +4 -4
- package/dist/{loft-BvZFfPqO.js → loft-DsVv4yxU.js} +4 -4
- package/dist/{measurement-g8ldN7oe.cjs → measurement-DoYXRaKI.cjs} +2 -2
- package/dist/{measurement-vbHd9lpV.js → measurement-oWvhSVZG.js} +2 -2
- package/dist/measurement.cjs +1 -1
- package/dist/measurement.js +1 -1
- package/dist/{meshFns-CF-JdX5P.cjs → meshFns-BU2l_yOm.cjs} +2 -2
- package/dist/{meshFns-RN83Wiry.js → meshFns-HNwWuM4v.js} +2 -2
- package/dist/{operations-CrLZ6fyL.cjs → operations-D-gTZNtM.cjs} +6 -6
- package/dist/{operations-CxvdnWzU.js → operations-D_3rrfrE.js} +6 -6
- package/dist/operations.cjs +2 -2
- package/dist/operations.js +2 -2
- package/dist/query.cjs +4 -4
- package/dist/query.js +5 -5
- package/dist/{shapeFns-38GljA_p.js → shapeFns-CbXxLvV_.js} +2 -2
- package/dist/{shapeFns-BoN5g5Bx.cjs → shapeFns-DHlLNHTn.cjs} +2 -2
- package/dist/{shapeTypes-DTGA0liC.cjs → shapeTypes-7xEam9Ri.cjs} +103 -0
- package/dist/{shapeTypes-5DPsHB8i.js → shapeTypes-CpSaBLDv.js} +103 -0
- package/dist/sketching.cjs +2 -2
- package/dist/sketching.js +2 -2
- package/dist/{solidBuilders-BWkneWjU.js → solidBuilders-BXhh5hP2.js} +2 -2
- package/dist/{solidBuilders-CUc2rvWv.cjs → solidBuilders-BzfRBizW.cjs} +2 -2
- package/dist/{surfaceBuilders-tYoe8sri.cjs → surfaceBuilders-Be_ENWSA.cjs} +2 -2
- package/dist/{surfaceBuilders-CXbEDGBQ.js → surfaceBuilders-D7ZH2QNS.js} +2 -2
- package/dist/topology/adjacencyFns.d.ts.map +1 -1
- package/dist/{topology-CH4LBfQg.cjs → topology-BHnY7Szr.cjs} +8 -8
- package/dist/{topology-Bq7mZh3W.js → topology-C1eZ86dI.js} +8 -8
- package/dist/topology.cjs +6 -6
- package/dist/topology.js +6 -6
- package/package.json +4 -4
|
@@ -123,7 +123,7 @@ export default class Blueprint implements DrawingInterface {
|
|
|
123
123
|
* @param origin - Optional UV origin offset (defaults to the face center).
|
|
124
124
|
* @returns A new Face bounded by the blueprint's profile.
|
|
125
125
|
*/
|
|
126
|
-
subFace
|
|
126
|
+
private subFace;
|
|
127
127
|
/**
|
|
128
128
|
* Cut a prism-shaped hole through a solid along a face using this blueprint.
|
|
129
129
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Blueprint.d.ts","sourceRoot":"","sources":["../../../src/2d/blueprints/Blueprint.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAY9C,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAQvE,OAAO,KAAK,EAAE,QAAQ,EAAc,SAAS,EAAE,IAAI,EAAQ,MAAM,0BAA0B,CAAC;AAQ5F,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAWzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,OAAO,OAAO,SAAU,YAAW,gBAAgB;IACxD,6DAA6D;IAC7D,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,SAAS,CAAC,YAAY,EAAE,IAAI,GAAG,aAAa,CAAC;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0C;IACvE,OAAO,CAAC,mBAAmB,CAA0C;IACrE;;;OAGG;gBACS,MAAM,EAAE,OAAO,EAAE;IAW7B,6EAA6E;IAC7E,MAAM;IAON,4CAA4C;IAC5C,KAAK,IAAI,SAAS;IAIlB,+DAA+D;IAC/D,IAAI,IAAI,WAEP;IAED,uEAAuE;IACvE,IAAI,WAAW,IAAI,aAAa,CAK/B;IAED;;;;OAIG;IACH,IAAI,WAAW,IAAI,WAAW,GAAG,kBAAkB,CAuBlD;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAE,OAAgB,GAAG,SAAS;IAK/E;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS;IAMvD;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS;IAKlD;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;IAClD,SAAS,CAAC,iBAAiB,EAAE,OAAO,GAAG,SAAS;IAShD;;;;;;;OAOG;IACH,MAAM,CACJ,iBAAiB,EAAE,OAAO,EAC1B,MAAM,GAAE,OAAgB,EACxB,IAAI,GAAE,QAAQ,GAAG,OAAkB,GAClC,SAAS;IAKZ;;;;;;OAMG;IACH,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,UAAU;IAgBvF;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU;IAY3D;;;;;;OAMG;IACH,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"Blueprint.d.ts","sourceRoot":"","sources":["../../../src/2d/blueprints/Blueprint.ts"],"names":[],"mappings":"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"}
|
package/dist/2d.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const Blueprint = require("./Blueprint-
|
|
4
|
-
const boolean2D = require("./boolean2D-
|
|
3
|
+
const Blueprint = require("./Blueprint-CoFJDAQd.cjs");
|
|
4
|
+
const boolean2D = require("./boolean2D-Dk-vLBdl.cjs");
|
|
5
5
|
function reverseCurve(curve) {
|
|
6
6
|
const cloned = curve.clone();
|
|
7
7
|
cloned.reverse();
|
package/dist/2d.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { B as Blueprint } from "./Blueprint-
|
|
2
|
-
import { d, C } from "./Blueprint-
|
|
3
|
-
import { e, C as C2, f, l, g, n, k, q, o, p, r } from "./boolean2D-
|
|
1
|
+
import { B as Blueprint } from "./Blueprint-CtuUvzex.js";
|
|
2
|
+
import { d, C } from "./Blueprint-CtuUvzex.js";
|
|
3
|
+
import { e, C as C2, f, l, g, n, k, q, o, p, r } from "./boolean2D-x2irapGj.js";
|
|
4
4
|
function reverseCurve(curve) {
|
|
5
5
|
const cloned = curve.clone();
|
|
6
6
|
cloned.reverse();
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const vectors = require("./vectors-TlfO1hu2.cjs");
|
|
3
3
|
const types = require("./types-CA_xrgDq.cjs");
|
|
4
|
-
const shapeTypes = require("./shapeTypes-
|
|
5
|
-
const faceFns = require("./faceFns-
|
|
6
|
-
const curveFns = require("./curveFns-
|
|
4
|
+
const shapeTypes = require("./shapeTypes-7xEam9Ri.cjs");
|
|
5
|
+
const faceFns = require("./faceFns-BLTEPBKq.cjs");
|
|
6
|
+
const curveFns = require("./curveFns-Ch87sD5O.cjs");
|
|
7
7
|
const errors = require("./errors-9fDehDNc.cjs");
|
|
8
|
-
const helpers = require("./helpers-
|
|
8
|
+
const helpers = require("./helpers-DNzVfe-Z.cjs");
|
|
9
9
|
const vecOps = require("./vecOps-CjRL1jau.cjs");
|
|
10
|
-
const surfaceBuilders = require("./surfaceBuilders-
|
|
10
|
+
const surfaceBuilders = require("./surfaceBuilders-Be_ENWSA.cjs");
|
|
11
11
|
const result = require("./result.cjs");
|
|
12
12
|
function makePlane(plane, origin) {
|
|
13
13
|
if (plane && typeof plane !== "string") {
|
|
@@ -340,7 +340,7 @@ class Curve2D {
|
|
|
340
340
|
if (Math.abs(parameters[0] - firstParam) < precision * 100) parameters = parameters.slice(1);
|
|
341
341
|
if (!parameters.length) return [this];
|
|
342
342
|
if (
|
|
343
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
343
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- parameters is non-empty
|
|
344
344
|
Math.abs(parameters[parameters.length - 1] - lastParam) < precision * 100
|
|
345
345
|
)
|
|
346
346
|
parameters = parameters.slice(0, -1);
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { r as resolvePlane } from "./vectors-cec8p8NQ.js";
|
|
2
2
|
import { a as toVec3 } from "./types-CWDdqcrq.js";
|
|
3
|
-
import { B as getKernel, J as getKernel2D, K as registerForCleanup, L as unregisterFromCleanup, H as createEdge, G as createWire } from "./shapeTypes-
|
|
4
|
-
import { u as uvBounds, f as faceGeomType, e as faceCenter, h as uvCoordinates, c as cast } from "./faceFns-
|
|
5
|
-
import { g as getOrientation } from "./curveFns-
|
|
3
|
+
import { B as getKernel, J as getKernel2D, K as registerForCleanup, L as unregisterFromCleanup, H as createEdge, G as createWire } from "./shapeTypes-CpSaBLDv.js";
|
|
4
|
+
import { u as uvBounds, f as faceGeomType, e as faceCenter, h as uvCoordinates, c as cast } from "./faceFns-B6ebRh5I.js";
|
|
5
|
+
import { g as getOrientation } from "./curveFns-LRNGcHXh.js";
|
|
6
6
|
import { o as ok, e as err, b as computationError, r as unwrap, y as validationError } from "./errors-B7kgv0cd.js";
|
|
7
|
-
import { d as distance2d, s as samePoint, b as scalarMultiply2d, c as add2d, e as subtract2d, g as getSingleFace } from "./helpers-
|
|
7
|
+
import { d as distance2d, s as samePoint, b as scalarMultiply2d, c as add2d, e as subtract2d, g as getSingleFace } from "./helpers-DeFPsrcI.js";
|
|
8
8
|
import { R as RAD2DEG, D as DEG2RAD } from "./vecOps-ZDdZWbwT.js";
|
|
9
|
-
import { m as makeFace } from "./surfaceBuilders-
|
|
9
|
+
import { m as makeFace } from "./surfaceBuilders-D7ZH2QNS.js";
|
|
10
10
|
import { bug } from "./result.js";
|
|
11
11
|
function makePlane(plane, origin) {
|
|
12
12
|
if (plane && typeof plane !== "string") {
|
|
@@ -339,7 +339,7 @@ class Curve2D {
|
|
|
339
339
|
if (Math.abs(parameters[0] - firstParam) < precision * 100) parameters = parameters.slice(1);
|
|
340
340
|
if (!parameters.length) return [this];
|
|
341
341
|
if (
|
|
342
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
342
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- parameters is non-empty
|
|
343
343
|
Math.abs(parameters[parameters.length - 1] - lastParam) < precision * 100
|
|
344
344
|
)
|
|
345
345
|
parameters = parameters.slice(0, -1);
|
|
@@ -46,16 +46,16 @@ var __callDispose = (stack, error, hasError) => {
|
|
|
46
46
|
};
|
|
47
47
|
const vectors = require("./vectors-TlfO1hu2.cjs");
|
|
48
48
|
const errors = require("./errors-9fDehDNc.cjs");
|
|
49
|
-
const faceFns = require("./faceFns-
|
|
49
|
+
const faceFns = require("./faceFns-BLTEPBKq.cjs");
|
|
50
50
|
const types = require("./types-CA_xrgDq.cjs");
|
|
51
51
|
const vecOps = require("./vecOps-CjRL1jau.cjs");
|
|
52
|
-
const loft = require("./loft-
|
|
53
|
-
const shapeTypes = require("./shapeTypes-
|
|
54
|
-
const curveFns = require("./curveFns-
|
|
55
|
-
const surfaceBuilders = require("./surfaceBuilders-
|
|
52
|
+
const loft = require("./loft-DR1UN5uN.cjs");
|
|
53
|
+
const shapeTypes = require("./shapeTypes-7xEam9Ri.cjs");
|
|
54
|
+
const curveFns = require("./curveFns-Ch87sD5O.cjs");
|
|
55
|
+
const surfaceBuilders = require("./surfaceBuilders-Be_ENWSA.cjs");
|
|
56
56
|
const result = require("./result.cjs");
|
|
57
|
-
const helpers = require("./helpers-
|
|
58
|
-
const Blueprint = require("./Blueprint-
|
|
57
|
+
const helpers = require("./helpers-DNzVfe-Z.cjs");
|
|
58
|
+
const Blueprint = require("./Blueprint-CoFJDAQd.cjs");
|
|
59
59
|
const intersectCurves = (first, second, precision = 1e-9) => {
|
|
60
60
|
if (first.boundingBox.isOut(second.boundingBox))
|
|
61
61
|
return errors.ok({ intersections: [], commonSegments: [], commonSegmentsPoints: [] });
|
|
@@ -704,7 +704,7 @@ class CompoundBlueprint {
|
|
|
704
704
|
return [
|
|
705
705
|
"Compound Blueprints",
|
|
706
706
|
"-- Outline",
|
|
707
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
707
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- compound always has outer boundary
|
|
708
708
|
this.blueprints[0].repr,
|
|
709
709
|
"-- Holes",
|
|
710
710
|
...this.blueprints.slice(1).map((b) => b.repr)
|
|
@@ -45,16 +45,16 @@ var __callDispose = (stack, error, hasError) => {
|
|
|
45
45
|
};
|
|
46
46
|
import { a as createPlane } from "./vectors-cec8p8NQ.js";
|
|
47
47
|
import { o as ok, e as err, b as computationError, r as unwrap, g as isOk } from "./errors-B7kgv0cd.js";
|
|
48
|
-
import { d as downcast, u as uvBounds, p as pointOnSurface, n as normalAt } from "./faceFns-
|
|
48
|
+
import { d as downcast, u as uvBounds, p as pointOnSurface, n as normalAt } from "./faceFns-B6ebRh5I.js";
|
|
49
49
|
import { a as toVec3 } from "./types-CWDdqcrq.js";
|
|
50
50
|
import { n as vecScale, j as vecNormalize, b as vecCross, D as DEG2RAD, R as RAD2DEG } from "./vecOps-ZDdZWbwT.js";
|
|
51
|
-
import { r as revolution, c as complexExtrude, t as twistExtrude, b as basicFaceExtrusion, g as genericSweep, l as loft } from "./loft-
|
|
52
|
-
import { J as getKernel2D, I as createFace, G as createWire, B as getKernel, H as createEdge, D as DisposalScope } from "./shapeTypes-
|
|
53
|
-
import { d as curveStartPoint, c as curveTangentAt, e as curveIsClosed } from "./curveFns-
|
|
54
|
-
import { m as makeFace, l as makeNewFaceWithinFace, b as assembleWire, z as zip } from "./surfaceBuilders-
|
|
51
|
+
import { r as revolution, c as complexExtrude, t as twistExtrude, b as basicFaceExtrusion, g as genericSweep, l as loft } from "./loft-DsVv4yxU.js";
|
|
52
|
+
import { J as getKernel2D, I as createFace, G as createWire, B as getKernel, H as createEdge, D as DisposalScope } from "./shapeTypes-CpSaBLDv.js";
|
|
53
|
+
import { d as curveStartPoint, c as curveTangentAt, e as curveIsClosed } from "./curveFns-LRNGcHXh.js";
|
|
54
|
+
import { m as makeFace, l as makeNewFaceWithinFace, b as assembleWire, z as zip } from "./surfaceBuilders-D7ZH2QNS.js";
|
|
55
55
|
import { bug } from "./result.js";
|
|
56
|
-
import { s as samePoint$1, e as subtract2d, c as add2d, i as crossProduct2d, b as scalarMultiply2d, f as polarToCartesian, r as rotate2d, j as cartesianToPolar, d as distance2d, p as polarAngle2d, k as PRECISION_INTERSECTION } from "./helpers-
|
|
57
|
-
import { C as Curve2D, a as make2dSegmentCurve, j as approximateAsBSpline, n as normalize2d, b as make2dArcFromCenter, k as isPoint2D, g as make2dCircle, l as make2dThreePointArc, d as BoundingBox2d, v as viewbox, o as asSVG, B as Blueprint, p as make2dEllipseArc, q as make2dTangentArc, r as make2dBezierCurve, s as removeDuplicatePoints } from "./Blueprint-
|
|
56
|
+
import { s as samePoint$1, e as subtract2d, c as add2d, i as crossProduct2d, b as scalarMultiply2d, f as polarToCartesian, r as rotate2d, j as cartesianToPolar, d as distance2d, p as polarAngle2d, k as PRECISION_INTERSECTION } from "./helpers-DeFPsrcI.js";
|
|
57
|
+
import { C as Curve2D, a as make2dSegmentCurve, j as approximateAsBSpline, n as normalize2d, b as make2dArcFromCenter, k as isPoint2D, g as make2dCircle, l as make2dThreePointArc, d as BoundingBox2d, v as viewbox, o as asSVG, B as Blueprint, p as make2dEllipseArc, q as make2dTangentArc, r as make2dBezierCurve, s as removeDuplicatePoints } from "./Blueprint-CtuUvzex.js";
|
|
58
58
|
const intersectCurves = (first, second, precision = 1e-9) => {
|
|
59
59
|
if (first.boundingBox.isOut(second.boundingBox))
|
|
60
60
|
return ok({ intersections: [], commonSegments: [], commonSegmentsPoints: [] });
|
|
@@ -703,7 +703,7 @@ class CompoundBlueprint {
|
|
|
703
703
|
return [
|
|
704
704
|
"Compound Blueprints",
|
|
705
705
|
"-- Outline",
|
|
706
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
706
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- compound always has outer boundary
|
|
707
707
|
this.blueprints[0].repr,
|
|
708
708
|
"-- Holes",
|
|
709
709
|
...this.blueprints.slice(1).map((b) => b.repr)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const shapeTypes = require("./shapeTypes-
|
|
2
|
+
const shapeTypes = require("./shapeTypes-7xEam9Ri.cjs");
|
|
3
3
|
const errors = require("./errors-9fDehDNc.cjs");
|
|
4
4
|
const vectors = require("./vectors-TlfO1hu2.cjs");
|
|
5
5
|
const vecOps = require("./vecOps-CjRL1jau.cjs");
|
|
6
|
-
const shapeFns = require("./shapeFns-
|
|
7
|
-
const surfaceBuilders = require("./surfaceBuilders-
|
|
6
|
+
const shapeFns = require("./shapeFns-DHlLNHTn.cjs");
|
|
7
|
+
const surfaceBuilders = require("./surfaceBuilders-Be_ENWSA.cjs");
|
|
8
8
|
const shapeTagStore = /* @__PURE__ */ new WeakMap();
|
|
9
9
|
const tagMetadataStore = /* @__PURE__ */ new WeakMap();
|
|
10
10
|
function hasFaceTags(shape) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { B as getKernel, c as castShape, p as isShape3D } from "./shapeTypes-
|
|
1
|
+
import { B as getKernel, c as castShape, p as isShape3D } from "./shapeTypes-CpSaBLDv.js";
|
|
2
2
|
import { o as ok, d as isErr, e as err, y as validationError, B as BrepErrorCode, p as typeCastError, k as kernelError } from "./errors-B7kgv0cd.js";
|
|
3
3
|
import { r as resolvePlane } from "./vectors-cec8p8NQ.js";
|
|
4
4
|
import { H as HASH_CODE_MAX, n as vecScale, v as vecAdd } from "./vecOps-ZDdZWbwT.js";
|
|
5
|
-
import { a as getFaces, p as propagateOriginsByHash, b as propagateOriginsFromEvolution, c as getWires, d as getEdges, e as getVertices, g as getFaceOrigins } from "./shapeFns-
|
|
6
|
-
import { m as makeFace } from "./surfaceBuilders-
|
|
5
|
+
import { a as getFaces, p as propagateOriginsByHash, b as propagateOriginsFromEvolution, c as getWires, d as getEdges, e as getVertices, g as getFaceOrigins } from "./shapeFns-CbXxLvV_.js";
|
|
6
|
+
import { m as makeFace } from "./surfaceBuilders-D7ZH2QNS.js";
|
|
7
7
|
const shapeTagStore = /* @__PURE__ */ new WeakMap();
|
|
8
8
|
const tagMetadataStore = /* @__PURE__ */ new WeakMap();
|
|
9
9
|
function hasFaceTags(shape) {
|
package/dist/brepjs.cjs
CHANGED
|
@@ -45,31 +45,31 @@ var __callDispose = (stack, error, hasError) => {
|
|
|
45
45
|
return next();
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
48
|
-
const shapeTypes = require("./shapeTypes-
|
|
48
|
+
const shapeTypes = require("./shapeTypes-7xEam9Ri.cjs");
|
|
49
49
|
const errors = require("./errors-9fDehDNc.cjs");
|
|
50
50
|
const vecOps = require("./vecOps-CjRL1jau.cjs");
|
|
51
|
-
const Blueprint = require("./Blueprint-
|
|
52
|
-
const loft$2 = require("./loft-
|
|
53
|
-
const operations = require("./operations-
|
|
54
|
-
const boolean2D = require("./boolean2D-
|
|
51
|
+
const Blueprint = require("./Blueprint-CoFJDAQd.cjs");
|
|
52
|
+
const loft$2 = require("./loft-DR1UN5uN.cjs");
|
|
53
|
+
const operations = require("./operations-D-gTZNtM.cjs");
|
|
54
|
+
const boolean2D = require("./boolean2D-Dk-vLBdl.cjs");
|
|
55
55
|
const _2d = require("./2d.cjs");
|
|
56
|
-
const helpers = require("./helpers-
|
|
56
|
+
const helpers = require("./helpers-DNzVfe-Z.cjs");
|
|
57
57
|
const io = require("./io.cjs");
|
|
58
|
-
const drawFns = require("./drawFns-
|
|
58
|
+
const drawFns = require("./drawFns-BEeoD1yO.cjs");
|
|
59
59
|
const types = require("./types-CA_xrgDq.cjs");
|
|
60
60
|
const vectors = require("./vectors-TlfO1hu2.cjs");
|
|
61
|
-
const shapeFns = require("./shapeFns-
|
|
62
|
-
const booleanFns = require("./booleanFns-
|
|
63
|
-
const topology = require("./topology-
|
|
64
|
-
const curveFns = require("./curveFns-
|
|
65
|
-
const faceFns = require("./faceFns-
|
|
66
|
-
const meshFns = require("./meshFns-
|
|
67
|
-
const measurement = require("./measurement-
|
|
68
|
-
const surfaceBuilders = require("./surfaceBuilders-
|
|
61
|
+
const shapeFns = require("./shapeFns-DHlLNHTn.cjs");
|
|
62
|
+
const booleanFns = require("./booleanFns-BJjYqwJ5.cjs");
|
|
63
|
+
const topology = require("./topology-BHnY7Szr.cjs");
|
|
64
|
+
const curveFns = require("./curveFns-Ch87sD5O.cjs");
|
|
65
|
+
const faceFns = require("./faceFns-BLTEPBKq.cjs");
|
|
66
|
+
const meshFns = require("./meshFns-BU2l_yOm.cjs");
|
|
67
|
+
const measurement = require("./measurement-DoYXRaKI.cjs");
|
|
68
|
+
const surfaceBuilders = require("./surfaceBuilders-Be_ENWSA.cjs");
|
|
69
69
|
const query = require("./query.cjs");
|
|
70
|
-
const solidBuilders = require("./solidBuilders-
|
|
70
|
+
const solidBuilders = require("./solidBuilders-BzfRBizW.cjs");
|
|
71
71
|
const result = require("./result.cjs");
|
|
72
|
-
const cornerFinder = require("./cornerFinder-
|
|
72
|
+
const cornerFinder = require("./cornerFinder-BESZIitp.cjs");
|
|
73
73
|
const worker = require("./worker.cjs");
|
|
74
74
|
function supportsProjection(kernel) {
|
|
75
75
|
return "projectShape" in kernel;
|
|
@@ -709,6 +709,9 @@ function dist3(x1, y1, z1, x2, y2, z2) {
|
|
|
709
709
|
const dx = x1 - x2, dy = y1 - y2, dz = z1 - z2;
|
|
710
710
|
return Math.sqrt(dx * dx + dy * dy + dz * dz);
|
|
711
711
|
}
|
|
712
|
+
function copyWasmBytes(bytes) {
|
|
713
|
+
return bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
|
|
714
|
+
}
|
|
712
715
|
function translationMatrix(x, y, z) {
|
|
713
716
|
return [
|
|
714
717
|
1,
|
|
@@ -4441,6 +4444,204 @@ class BrepkitAdapter {
|
|
|
4441
4444
|
sketchDof(sketch) {
|
|
4442
4445
|
return this.bk.sketchDof(sketch);
|
|
4443
4446
|
}
|
|
4447
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4448
|
+
// Extended I/O formats
|
|
4449
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4450
|
+
export3MF(shape2, tolerance) {
|
|
4451
|
+
const solidId = unwrapSolidOrThrow(shape2, "export3MF");
|
|
4452
|
+
return copyWasmBytes(this.bk.export3mf(solidId, tolerance));
|
|
4453
|
+
}
|
|
4454
|
+
exportGLB(shape2, tolerance) {
|
|
4455
|
+
const solidId = unwrapSolidOrThrow(shape2, "exportGLB");
|
|
4456
|
+
return copyWasmBytes(this.bk.exportGlb(solidId, tolerance));
|
|
4457
|
+
}
|
|
4458
|
+
exportOBJ(shape2, tolerance) {
|
|
4459
|
+
const solidId = unwrapSolidOrThrow(shape2, "exportOBJ");
|
|
4460
|
+
return copyWasmBytes(this.bk.exportObj(solidId, tolerance));
|
|
4461
|
+
}
|
|
4462
|
+
exportPLY(shape2, tolerance) {
|
|
4463
|
+
const solidId = unwrapSolidOrThrow(shape2, "exportPLY");
|
|
4464
|
+
return copyWasmBytes(this.bk.exportPly(solidId, tolerance));
|
|
4465
|
+
}
|
|
4466
|
+
import3MF(data) {
|
|
4467
|
+
const result2 = toArray(this.bk.import3mf(new Uint8Array(data)));
|
|
4468
|
+
return result2.map((id) => solidHandle(id));
|
|
4469
|
+
}
|
|
4470
|
+
importOBJ(data) {
|
|
4471
|
+
const result2 = this.bk.importObj(new Uint8Array(data));
|
|
4472
|
+
return solidHandle(result2);
|
|
4473
|
+
}
|
|
4474
|
+
importGLB(data) {
|
|
4475
|
+
const result2 = this.bk.importGlb(new Uint8Array(data));
|
|
4476
|
+
return solidHandle(result2);
|
|
4477
|
+
}
|
|
4478
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4479
|
+
// Advanced modeling
|
|
4480
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4481
|
+
filletVariable(shape2, spec) {
|
|
4482
|
+
const solidId = unwrapSolidOrThrow(shape2, "filletVariable");
|
|
4483
|
+
return solidHandle(this.bk.filletVariable(solidId, spec));
|
|
4484
|
+
}
|
|
4485
|
+
helicalSweep(profile, axisOrigin, axisDirection, radius, pitch, turns) {
|
|
4486
|
+
const profileId = unwrap(profile, "face");
|
|
4487
|
+
return solidHandle(
|
|
4488
|
+
this.bk.helicalSweep(
|
|
4489
|
+
profileId,
|
|
4490
|
+
axisOrigin[0],
|
|
4491
|
+
axisOrigin[1],
|
|
4492
|
+
axisOrigin[2],
|
|
4493
|
+
axisDirection[0],
|
|
4494
|
+
axisDirection[1],
|
|
4495
|
+
axisDirection[2],
|
|
4496
|
+
radius,
|
|
4497
|
+
pitch,
|
|
4498
|
+
turns
|
|
4499
|
+
)
|
|
4500
|
+
);
|
|
4501
|
+
}
|
|
4502
|
+
sweepWithOptions(profile, pathEdge, contactMode, scaleValues, segments) {
|
|
4503
|
+
const profileId = unwrap(profile, "face");
|
|
4504
|
+
const pathId = unwrap(pathEdge, "edge");
|
|
4505
|
+
return solidHandle(
|
|
4506
|
+
this.bk.sweepWithOptions(profileId, pathId, contactMode, scaleValues, segments)
|
|
4507
|
+
);
|
|
4508
|
+
}
|
|
4509
|
+
draft(shape2, faces, pullDirection, neutralPlane, angleDeg) {
|
|
4510
|
+
const solidId = unwrapSolidOrThrow(shape2, "draft");
|
|
4511
|
+
const faceIds = faces.map((f) => unwrap(f, "face"));
|
|
4512
|
+
return solidHandle(
|
|
4513
|
+
this.bk.draft(
|
|
4514
|
+
solidId,
|
|
4515
|
+
faceIds,
|
|
4516
|
+
pullDirection[0],
|
|
4517
|
+
pullDirection[1],
|
|
4518
|
+
pullDirection[2],
|
|
4519
|
+
neutralPlane[0],
|
|
4520
|
+
neutralPlane[1],
|
|
4521
|
+
neutralPlane[2],
|
|
4522
|
+
angleDeg
|
|
4523
|
+
)
|
|
4524
|
+
);
|
|
4525
|
+
}
|
|
4526
|
+
defeature(shape2, faces) {
|
|
4527
|
+
const solidId = unwrapSolidOrThrow(shape2, "defeature");
|
|
4528
|
+
const faceIds = faces.map((f) => unwrap(f, "face"));
|
|
4529
|
+
return solidHandle(this.bk.defeature(solidId, faceIds));
|
|
4530
|
+
}
|
|
4531
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4532
|
+
// Feature detection
|
|
4533
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4534
|
+
detectSmallFeatures(shape2, areaThreshold, tolerance) {
|
|
4535
|
+
const solidId = unwrapSolidOrThrow(shape2, "detectSmallFeatures");
|
|
4536
|
+
return Array.from(this.bk.detectSmallFeatures(solidId, areaThreshold, tolerance)).map(
|
|
4537
|
+
(id) => faceHandle(id)
|
|
4538
|
+
);
|
|
4539
|
+
}
|
|
4540
|
+
recognizeFeatures(shape2, tolerance) {
|
|
4541
|
+
const solidId = unwrapSolidOrThrow(shape2, "recognizeFeatures");
|
|
4542
|
+
return this.bk.recognizeFeatures(solidId, tolerance);
|
|
4543
|
+
}
|
|
4544
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4545
|
+
// Mesh boolean
|
|
4546
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4547
|
+
meshBoolean(positionsA, indicesA, positionsB, indicesB, op, tolerance) {
|
|
4548
|
+
const mesh2 = this.bk.meshBoolean(positionsA, indicesA, positionsB, indicesB, op, tolerance);
|
|
4549
|
+
return {
|
|
4550
|
+
vertices: new Float32Array(mesh2.positions),
|
|
4551
|
+
normals: new Float32Array(mesh2.normals),
|
|
4552
|
+
triangles: new Uint32Array(mesh2.indices),
|
|
4553
|
+
uvs: new Float32Array(0),
|
|
4554
|
+
faceGroups: [{ start: 0, count: mesh2.indices.length, faceHash: 0 }]
|
|
4555
|
+
};
|
|
4556
|
+
}
|
|
4557
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4558
|
+
// Topology queries
|
|
4559
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4560
|
+
edgeToFaceMap(shape2) {
|
|
4561
|
+
const solidId = unwrapSolidOrThrow(shape2, "edgeToFaceMap");
|
|
4562
|
+
return this.bk.edgeToFaceMap(solidId);
|
|
4563
|
+
}
|
|
4564
|
+
sharedEdges(faceA, faceB) {
|
|
4565
|
+
const aId = unwrap(faceA, "face");
|
|
4566
|
+
const bId = unwrap(faceB, "face");
|
|
4567
|
+
return Array.from(this.bk.sharedEdges(aId, bId)).map((id) => edgeHandle(id));
|
|
4568
|
+
}
|
|
4569
|
+
adjacentFaces(shape2, face) {
|
|
4570
|
+
const solidId = unwrapSolidOrThrow(shape2, "adjacentFaces");
|
|
4571
|
+
const faceId = unwrap(face, "face");
|
|
4572
|
+
return Array.from(this.bk.adjacentFaces(solidId, faceId)).map((id) => faceHandle(id));
|
|
4573
|
+
}
|
|
4574
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4575
|
+
// NURBS curve operations
|
|
4576
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4577
|
+
curveDegreeElevate(edge, elevateBy) {
|
|
4578
|
+
const edgeId = unwrap(edge, "edge");
|
|
4579
|
+
return edgeHandle(this.bk.curveDegreeElevate(edgeId, elevateBy));
|
|
4580
|
+
}
|
|
4581
|
+
curveKnotInsert(edge, knot, times) {
|
|
4582
|
+
const edgeId = unwrap(edge, "edge");
|
|
4583
|
+
return edgeHandle(this.bk.curveKnotInsert(edgeId, knot, times));
|
|
4584
|
+
}
|
|
4585
|
+
curveKnotRemove(edge, knot, tolerance) {
|
|
4586
|
+
const edgeId = unwrap(edge, "edge");
|
|
4587
|
+
return edgeHandle(this.bk.curveKnotRemove(edgeId, knot, tolerance));
|
|
4588
|
+
}
|
|
4589
|
+
curveSplit(edge, param) {
|
|
4590
|
+
const edgeId = unwrap(edge, "edge");
|
|
4591
|
+
const result2 = this.bk.curveSplit(edgeId, param);
|
|
4592
|
+
return [edgeHandle(result2[0]), edgeHandle(result2[1])];
|
|
4593
|
+
}
|
|
4594
|
+
approximateSurfaceLspia(coords, rows, cols, degreeU, degreeV, numCpsU, numCpsV, tolerance, maxIterations) {
|
|
4595
|
+
return faceHandle(
|
|
4596
|
+
this.bk.approximateSurfaceLspia(
|
|
4597
|
+
coords,
|
|
4598
|
+
rows,
|
|
4599
|
+
cols,
|
|
4600
|
+
degreeU,
|
|
4601
|
+
degreeV,
|
|
4602
|
+
numCpsU,
|
|
4603
|
+
numCpsV,
|
|
4604
|
+
tolerance,
|
|
4605
|
+
maxIterations
|
|
4606
|
+
)
|
|
4607
|
+
);
|
|
4608
|
+
}
|
|
4609
|
+
untrimFace(face, samplesPerCurve, interiorSamples) {
|
|
4610
|
+
const faceId = unwrap(face, "face");
|
|
4611
|
+
return faceHandle(this.bk.untrimFace(faceId, samplesPerCurve, interiorSamples));
|
|
4612
|
+
}
|
|
4613
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4614
|
+
// Validation / Repair
|
|
4615
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4616
|
+
mergeCoincidentVertices(shape2, tolerance) {
|
|
4617
|
+
const solidId = unwrapSolidOrThrow(shape2, "mergeCoincidentVertices");
|
|
4618
|
+
return this.bk.mergeCoincidentVertices(solidId, tolerance);
|
|
4619
|
+
}
|
|
4620
|
+
removeDegenerateEdges(shape2, tolerance) {
|
|
4621
|
+
const solidId = unwrapSolidOrThrow(shape2, "removeDegenerateEdges");
|
|
4622
|
+
return this.bk.removeDegenerateEdges(solidId, tolerance);
|
|
4623
|
+
}
|
|
4624
|
+
fixFaceOrientations(shape2) {
|
|
4625
|
+
const solidId = unwrapSolidOrThrow(shape2, "fixFaceOrientations");
|
|
4626
|
+
return this.bk.fixFaceOrientations(solidId);
|
|
4627
|
+
}
|
|
4628
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4629
|
+
// Classification
|
|
4630
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4631
|
+
classifyPointRobust(shape2, point, tolerance) {
|
|
4632
|
+
const solidId = unwrapSolidOrThrow(shape2, "classifyPointRobust");
|
|
4633
|
+
return this.bk.classifyPointRobust(solidId, point[0], point[1], point[2], tolerance);
|
|
4634
|
+
}
|
|
4635
|
+
classifyPointWinding(shape2, point, tolerance) {
|
|
4636
|
+
const solidId = unwrapSolidOrThrow(shape2, "classifyPointWinding");
|
|
4637
|
+
return this.bk.classifyPointWinding(solidId, point[0], point[1], point[2], tolerance);
|
|
4638
|
+
}
|
|
4639
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4640
|
+
// Batch execution
|
|
4641
|
+
// ═══════════════════════════════════════════════════════════════════════
|
|
4642
|
+
executeBatch(json) {
|
|
4643
|
+
return this.bk.executeBatch(json);
|
|
4644
|
+
}
|
|
4444
4645
|
}
|
|
4445
4646
|
function multiplyMatrices(a, b) {
|
|
4446
4647
|
const result2 = new Array(16).fill(0);
|