brepjs 18.116.0 → 18.117.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.cjs +4 -4
- package/dist/2d.js +4 -4
- package/dist/{blueprint-BwkD2qeC.cjs → blueprint-Bb6y8xmG.cjs} +1 -1
- package/dist/{blueprint-Dw0QqImu.js → blueprint-ccFH0CU4.js} +1 -1
- package/dist/{blueprintFns-B-aybpEo.cjs → blueprintFns-B7nDXYsr.cjs} +2 -2
- package/dist/{blueprintFns-BowWsZgJ.js → blueprintFns-Cvhzcmrk.js} +2 -2
- package/dist/{blueprintSketcher-RK-cH6ps.cjs → blueprintSketcher-BY6R2umG.cjs} +2 -2
- package/dist/{blueprintSketcher-7rtwqUHZ.js → blueprintSketcher-Cw_Epicg.js} +2 -2
- package/dist/{boolean2D-y0SSZfe2.js → boolean2D-BiPWJMSB.js} +3 -3
- package/dist/{boolean2D-CZUEOoAh.cjs → boolean2D-mBIMAMP3.cjs} +3 -3
- package/dist/brepjs.cjs +156 -50
- package/dist/brepjs.js +156 -51
- package/dist/{cornerFinder-DUGeBIvD.js → cornerFinder-Baa3j5Ph.js} +1 -1
- package/dist/{cornerFinder-B4q88TRb.cjs → cornerFinder-DaHVcKSL.cjs} +1 -1
- package/dist/{drawFns-SQIBls6p.js → drawFns-Blkxt9ei.js} +6 -6
- package/dist/{drawFns-DNxs7PAT.cjs → drawFns-NEdyNRo-.cjs} +6 -6
- package/dist/{healingFns-xLJ6Cp_O.cjs → healingFns-DiVnJgwh.cjs} +2 -2
- package/dist/{healingFns-2TJHHDg5.js → healingFns-TnTWI_K_.js} +2 -2
- package/dist/{helpers-DhJwFrkC.js → helpers-BuJ2542Q.js} +1 -1
- package/dist/{helpers-BSLPCflF.cjs → helpers-Cy4IH0Dc.cjs} +1 -1
- package/dist/{importFns-CgMQIi0z.cjs → importFns-2X1Bh_-e.cjs} +1 -1
- package/dist/{importFns-nR9lEx22.js → importFns-DU6m8NVC.js} +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/io.cjs +2 -2
- package/dist/io.js +2 -2
- package/dist/{meshFns-DbmidUzH.js → meshFns-DBsxqJd3.js} +1 -1
- package/dist/{meshFns-1hQSn1p2.cjs → meshFns-HyzvCIhb.cjs} +1 -1
- package/dist/operations.cjs +1 -1
- package/dist/operations.js +1 -1
- package/dist/{primitiveFns-DLIWtQWA.cjs → primitiveFns-DvGRmEox.cjs} +2 -2
- package/dist/{primitiveFns-CBrOyk5S.js → primitiveFns-LYeAjO6E.js} +2 -2
- package/dist/query.cjs +2 -2
- package/dist/query.js +2 -2
- package/dist/{refResolveFns-BiEBAREW.cjs → refResolveFns-BGcsRo5a.cjs} +1 -1
- package/dist/{refResolveFns-Ck6kJzLE.js → refResolveFns-BzIXnBrs.js} +1 -1
- package/dist/{shapeFns-DrZOVwHX.js → shapeFns-DJHbIsRX.js} +26 -1
- package/dist/{shapeFns-ybo0INGL.cjs → shapeFns-aI4Hr4XV.cjs} +31 -0
- package/dist/shapeRef.cjs +1 -1
- package/dist/shapeRef.js +1 -1
- package/dist/sketching.cjs +3 -3
- package/dist/sketching.js +3 -3
- package/dist/{solidBuilders-C32wXQWG.js → solidBuilders-CjrjwCtG.js} +1 -1
- package/dist/{solidBuilders-DiUv_mD0.cjs → solidBuilders-DSokszEg.cjs} +1 -1
- package/dist/text.cjs +2 -2
- package/dist/text.js +2 -2
- package/dist/{textBlueprints-D5lsZswr.cjs → textBlueprints-BvD0c2S0.cjs} +2 -2
- package/dist/{textBlueprints-BnkWAqwS.js → textBlueprints-gMoNCh6B.js} +2 -2
- package/dist/{textMetrics-COGYk0LE.js → textMetrics-7Je4nat3.js} +1 -1
- package/dist/{textMetrics-IC_IoI7l.cjs → textMetrics-BZwyjpX_.cjs} +1 -1
- package/dist/{threadFns-Dgr2qyJv.js → threadFns-B9udL9Zs.js} +5 -5
- package/dist/{threadFns-KrG_i9_w.cjs → threadFns-cKaZIY34.cjs} +10 -4
- package/dist/topology/api.d.ts +7 -0
- package/dist/topology/shapeFns.d.ts +1 -1
- package/dist/topology/transformFns.d.ts +15 -0
- package/dist/topology.cjs +5 -5
- package/dist/topology.js +5 -5
- package/package.json +1 -1
package/dist/brepjs.js
CHANGED
|
@@ -8,30 +8,30 @@ import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-D24Y27N
|
|
|
8
8
|
import { a as vecDot, c as vecLength, d as vecNormalize, f as vecProjectToPlane, g as vecSub, h as vecScale, i as vecDistance, l as vecLengthSq, m as vecRotate, n as vecAngle, o as vecEquals, p as vecRepr, r as vecCross, s as vecIsZero, t as vecAdd, u as vecNegate } from "./vecOps-SKPRvPH-.js";
|
|
9
9
|
import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-DSjjtrjg.js";
|
|
10
10
|
import { S as shapeType, _ as cast, a as faceOrientation, b as isCompSolid, c as innerWires, d as pointOnSurface, f as projectPointOnFace, g as asTopo, h as uvCoordinates, i as faceGeomType, l as normalAt, m as uvBounds, n as faceAxis, o as flipFaceOrientation, p as removeHolesFromFace, r as faceCenter, s as getSurfaceType, t as classifyPointOnFace, u as outerWire, v as downcast, x as iterTopo, y as fromBREP } from "./faceFns-B86WGqDg.js";
|
|
11
|
-
import { A as
|
|
11
|
+
import { A as tagFaces, C as colorShape, D as getFaceTags, E as findFacesByTag, M as setShapeOrigin, O as getTagMetadata, S as colorFaces, T as getShapeColor, a as isSameShape, c as applyMatrix$1, d as mirror$2, f as resize, g as translate$2, h as transformCopy$1, i as isEqualShape, j as getFaceOrigins, k as setTagMetadata, l as composeTransforms, m as scale$3, n as getHashCode, o as simplify$1, p as rotate$2, r as isEmpty$2, s as toBREP$1, t as clone$1, u as locate$1, v as hasAnyMetadata, w as getFaceColor, x as propagateMetadataThroughRelocation } from "./shapeFns-DJHbIsRX.js";
|
|
12
12
|
import { a as curveIsPeriodic, c as curvePointAt, d as flipOrientation, f as getCurveType, h as offsetWire2D, i as curveIsClosed, l as curveStartPoint, m as interpolateCurve, n as curveAxis, o as curveLength, p as getOrientation, r as curveEndPoint, s as curvePeriod, t as approximateCurve, u as curveTangentAt } from "./curveFns-CcSn4-Rf.js";
|
|
13
|
-
import { a as meshEdges$1, c as meshMultiLOD, d as createMeshCache, i as mesh$1, l as buildMeshCacheKey, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as clearMeshCache } from "./meshFns-
|
|
13
|
+
import { a as meshEdges$1, c as meshMultiLOD, d as createMeshCache, i as mesh$1, l as buildMeshCacheKey, n as exportSTEP, o as meshLODs, r as exportSTL, s as meshLODsProgressive, t as exportIGES, u as clearMeshCache } from "./meshFns-DBsxqJd3.js";
|
|
14
14
|
import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
|
|
15
15
|
import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-rkE-jE90.js";
|
|
16
|
-
import { _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-
|
|
17
|
-
import { A as toBufferGeometryData, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, M as toLODGeometryData, N as toLODGeometryLevels, O as getNurbsSurfaceData, P as toLineGeometryData, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, c as isValid$1, d as draft$1, f as fillet$1, g as variableFillet, h as thicken$1, i as heal$1, j as toGroupedBufferGeometryData, k as chamferDistAngle, l as solidFromShell, m as shell$1, n as fixSelfIntersection, o as healSolid, p as offset$1, r as fixShape, s as healWire, t as autoHeal, u as chamfer$1, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution } from "./healingFns-
|
|
18
|
-
import { A as setJointValue, B as
|
|
19
|
-
import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-
|
|
20
|
-
import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-
|
|
21
|
-
import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-
|
|
16
|
+
import { _ as section$1, b as split$1, d as booleanPipeline, f as cut$2, g as intersect$2, h as fuseAll$2, m as fuse$2, p as cutAll$2, r as makeCylinder, t as makeCompound, v as sectionToFace$1, y as slice$1 } from "./solidBuilders-CjrjwCtG.js";
|
|
17
|
+
import { A as toBufferGeometryData, C as shellWithEvolution, D as getNurbsCurveData, E as fuseAllBisect, M as toLODGeometryData, N as toLODGeometryLevels, O as getNurbsSurfaceData, P as toLineGeometryData, S as intersectWithEvolution, T as cutAllBisect, _ as positionOnCurve, a as healFace, b as filletWithEvolution, c as isValid$1, d as draft$1, f as fillet$1, g as variableFillet, h as thicken$1, i as heal$1, j as toGroupedBufferGeometryData, k as chamferDistAngle, l as solidFromShell, m as shell$1, n as fixSelfIntersection, o as healSolid, p as offset$1, r as fixShape, s as healWire, t as autoHeal, u as chamfer$1, v as chamferWithEvolution, w as checkBoolean, x as fuseWithEvolution, y as cutWithEvolution } from "./healingFns-TnTWI_K_.js";
|
|
18
|
+
import { A as setJointValue, B as createAssemblyNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, F as quatMultiply, G as circularPattern, H as removeChild, I as quatRotate, J as exportAssemblySTEP, K as gridPattern, L as addChild, M as sphericalJoint, N as quatFromAxisAngle, O as prismaticJoint, P as quatFromTo, R as collectShapes, S as addJoint, T as jointTransform, U as updateNode, V as findNode, W as walkAssembly, Y as createAssembly, _ as exportURDF, a as deserializeHistory, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, p as serializeHistory, q as linearPattern, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as countNodes } from "./threadFns-B9udL9Zs.js";
|
|
19
|
+
import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-Cw_Epicg.js";
|
|
20
|
+
import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-BuJ2542Q.js";
|
|
21
|
+
import { A as sketchEllipse, D as makeBaseBox, E as deserializeDrawing, F as sketchRectangle, I as sketchRoundedRectangle, L as FaceSketcher, M as sketchHelix, N as sketchParametricFunction, O as polysideInnerRadius, P as sketchPolysides, R as Sketcher, S as drawText, _ as drawPolysides, a as drawingIntersect, b as drawSingleCircle, c as rotateDrawing, d as drawFaceOutline, f as drawProjection, g as drawPointsInterpolation, h as drawParametricFunction, i as drawingFuse, j as sketchFaceOffset, k as sketchCircle, l as scaleDrawing, m as drawEllipse, n as drawingCut, o as drawingToSketchOnPlane, p as drawCircle, r as drawingFillet, s as mirrorDrawing, t as drawingChamfer, u as translateDrawing, v as drawRectangle, w as draw, x as drawSingleEllipse, y as drawRoundedRectangle } from "./drawFns-Blkxt9ei.js";
|
|
22
22
|
import { a as measureDistance, c as measureLinearProps, d as measureVolumeProps, i as measureCurvatureAtMid, l as measureSurfaceProps, n as measureArea, o as measureDistanceProps, r as measureCurvatureAt, s as measureLength, t as createDistanceQuery, u as measureVolume } from "./measureFns-a5Vx25or.js";
|
|
23
|
-
import { t as cornerFinder } from "./cornerFinder-
|
|
24
|
-
import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-
|
|
25
|
-
import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-
|
|
26
|
-
import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-
|
|
23
|
+
import { t as cornerFinder } from "./cornerFinder-Baa3j5Ph.js";
|
|
24
|
+
import { a as fuseBlueprints, c as roundedRectangleBlueprint, i as cutBlueprints, n as fuse2D, o as intersectBlueprints, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BiPWJMSB.js";
|
|
25
|
+
import { S as reverseCurve, _ as curve2dIsOnCurve, a as isInside2D, b as curve2dSplitAt, c as scale2D, d as stretch2D, f as toSVGPathD, g as curve2dFirstPoint, h as curve2dDistanceFrom, i as getOrientation2D, l as sketchOnFace2D, m as curve2dBoundingBox, n as createCompoundBlueprint, o as mirror2D, p as translate2D, r as getBounds2D, s as rotate2D, t as createBlueprint, u as sketchOnPlane2D, v as curve2dLastPoint, x as curve2dTangentAt, y as curve2dParameter } from "./blueprintFns-Cvhzcmrk.js";
|
|
26
|
+
import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-DU6m8NVC.js";
|
|
27
27
|
import { a as revolve$1, c as multiSectionSweep, d as twistExtrude, i as extrudeAll, l as supportExtrude, n as loftAll, o as complexExtrude, r as extrude$1, s as guidedSweep, t as loft$1, u as sweep$1 } from "./loftFns-CmShFQlv.js";
|
|
28
|
-
import { a as Sketch, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-
|
|
28
|
+
import { a as Sketch, c as compoundSketchLoft, d as sketchFace, f as sketchLoft, h as sketchWires, i as Sketches, l as compoundSketchRevolve, m as sketchSweep, n as getFont, o as compoundSketchExtrude, p as sketchRevolve, r as loadFont, s as compoundSketchFace, t as textBlueprints, u as sketchExtrude, v as CompoundSketch } from "./textBlueprints-gMoNCh6B.js";
|
|
29
29
|
import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-bk9e0F-T.js";
|
|
30
|
-
import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-
|
|
30
|
+
import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-7Je4nat3.js";
|
|
31
31
|
import { a as sharedEdges, c as wiresOfFace, i as facesOfVertex, n as edgesOfFace, o as verticesOfEdge, r as facesOfEdge, s as verticesOfFace, t as adjacentFaces } from "./adjacencyFns-BYnyXXqt.js";
|
|
32
|
-
import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-
|
|
32
|
+
import { _ as createRef, a as isVertexRef, b as defaultScorer, c as resolveRefParams, d as createVertexRef, f as resolveVertexRef, g as captureHint, h as assignRoles, i as isLineageRef, l as createDerivedFaceRef, m as resolveEdgeRef, n as isEdgeRef, o as resolveLineageRef, p as createEdgeRef, r as isFaceRef, s as resolveRefIn, t as isDerivedFaceRef, u as resolveDerivedFaceRef, v as resolveRef, y as updateRoles } from "./refResolveFns-BzIXnBrs.js";
|
|
33
33
|
import { _ as isSuccessResponse, a as createWorkerClient, c as enqueueTask, d as rejectAll, f as isBatchRequest, g as isOperationRequest, h as isInitRequest, i as registerHandler, l as isEmpty$1, m as isErrorResponse, n as createOperationRegistry, o as createTaskQueue, p as isDisposeRequest, r as createWorkerHandler, s as dequeueTask, t as createWorkerPool, u as pendingCount } from "./workerPool-XcYX2UZ0.js";
|
|
34
|
-
import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-
|
|
34
|
+
import { C as threePointArc, D as wireLoop, E as wire, S as tangentArc, T as vertex, _ as polygon, a as circle, b as sphere$1, c as cylinder, d as ellipsoid, f as face, g as offsetFace, h as line, i as bsplineApprox, l as ellipse, m as helix, n as bezier, o as compound, p as filledFace, r as box, s as cone, t as addHoles, u as ellipseArc, v as sewShells, w as torus$1, x as subFace, y as solid } from "./primitiveFns-LYeAjO6E.js";
|
|
35
35
|
//#region \0rolldown/runtime.js
|
|
36
36
|
var __defProp = Object.defineProperty;
|
|
37
37
|
var __exportAll = (all, no_symbols) => {
|
|
@@ -3485,6 +3485,15 @@ function applyMatrix(shape, matrix) {
|
|
|
3485
3485
|
function transformCopy(shape, composed) {
|
|
3486
3486
|
return transformCopy$1(resolve(shape), composed);
|
|
3487
3487
|
}
|
|
3488
|
+
/**
|
|
3489
|
+
* Placement-only rigid move (translate / rotate) via the kernel's cheap location
|
|
3490
|
+
* re-tag — O(1) on occt-wasm ≥3.6.0, falling back to a copy elsewhere. Same
|
|
3491
|
+
* face-metadata guarantee as `translate`, at location-swap cost. Ideal for
|
|
3492
|
+
* placing one cached cell at N positions without paying for N deep copies.
|
|
3493
|
+
*/
|
|
3494
|
+
function locate(shape, placement) {
|
|
3495
|
+
return locate$1(resolve(shape), placement);
|
|
3496
|
+
}
|
|
3488
3497
|
/** Fuse two 3D shapes (boolean union). */
|
|
3489
3498
|
function fuse(a, b, options) {
|
|
3490
3499
|
return fuse$2(resolve(a), resolve(b), {
|
|
@@ -5840,48 +5849,144 @@ function cacheKey(node, env, kernelId, tolerance) {
|
|
|
5840
5849
|
const tolHash = tolerance === void 0 ? "d" : fnvMixNumber(fnvInit(), tolerance).toString(16);
|
|
5841
5850
|
return `${toHex(node.structuralHash)}:${kernelId}:${toHex(projHash)}:${tolHash}`;
|
|
5842
5851
|
}
|
|
5852
|
+
var IDENTITY_QUAT = [
|
|
5853
|
+
1,
|
|
5854
|
+
0,
|
|
5855
|
+
0,
|
|
5856
|
+
0
|
|
5857
|
+
];
|
|
5858
|
+
/** Resolve a Rotate node's angle/axis/center in `env`, applying the same
|
|
5859
|
+
* defaults as the evaluator (Z axis, origin pivot). Null if any free param
|
|
5860
|
+
* can't be evaluated, so the caller stops peeling there. */
|
|
5861
|
+
function evalRotateParams(node, env) {
|
|
5862
|
+
const a = evalScalar(node.angle, env, "evaluateMesh.peelRigid");
|
|
5863
|
+
if (!a.ok) return null;
|
|
5864
|
+
const axis = node.axis ? evalVec3(node.axis, env, "evaluateMesh.peelRigid") : ok([
|
|
5865
|
+
0,
|
|
5866
|
+
0,
|
|
5867
|
+
1
|
|
5868
|
+
]);
|
|
5869
|
+
if (!axis.ok) return null;
|
|
5870
|
+
const center = node.at ? evalVec3(node.at, env, "evaluateMesh.peelRigid") : ok([
|
|
5871
|
+
0,
|
|
5872
|
+
0,
|
|
5873
|
+
0
|
|
5874
|
+
]);
|
|
5875
|
+
if (!center.ok) return null;
|
|
5876
|
+
return {
|
|
5877
|
+
angle: a.value,
|
|
5878
|
+
axis: axis.value,
|
|
5879
|
+
center: center.value
|
|
5880
|
+
};
|
|
5881
|
+
}
|
|
5843
5882
|
/**
|
|
5844
|
-
* Peel outer
|
|
5845
|
-
*
|
|
5846
|
-
*
|
|
5847
|
-
*
|
|
5848
|
-
*
|
|
5883
|
+
* Peel outer rigid-motion nodes (Translate / Rotate) off `node`, composing them
|
|
5884
|
+
* into a single rotation + translation. A rigid motion shares its inner
|
|
5885
|
+
* geometry's tessellation — the shape path re-tags it via `locate` (#1633) — so
|
|
5886
|
+
* the inner meshes once and the cached mesh is moved per placement instead of
|
|
5887
|
+
* re-tessellating. Stops at the first non-rigid node (Scale/Mirror/boolean/…) or
|
|
5888
|
+
* one whose parameters can't be evaluated in `env`.
|
|
5889
|
+
*
|
|
5890
|
+
* Composition is outer∘inner: peeling outward, each node's local transform acts
|
|
5891
|
+
* on points the inner nodes already placed, so it post-multiplies the
|
|
5892
|
+
* accumulator. A pure-translation chain keeps the identity rotation, so the mesh
|
|
5893
|
+
* move below degenerates to the exact vertex-shift fast path (normals untouched).
|
|
5849
5894
|
*/
|
|
5850
|
-
function
|
|
5895
|
+
function peelRigid(node, env) {
|
|
5851
5896
|
let inner = node;
|
|
5852
|
-
let
|
|
5853
|
-
let
|
|
5854
|
-
|
|
5855
|
-
|
|
5856
|
-
|
|
5897
|
+
let rot = IDENTITY_QUAT;
|
|
5898
|
+
let trans = [
|
|
5899
|
+
0,
|
|
5900
|
+
0,
|
|
5901
|
+
0
|
|
5902
|
+
];
|
|
5903
|
+
for (;;) if (inner.kind === "Translate") {
|
|
5904
|
+
const v = evalVec3(inner.vector, env, "evaluateMesh.peelRigid");
|
|
5857
5905
|
if (!v.ok) break;
|
|
5858
|
-
|
|
5859
|
-
|
|
5860
|
-
|
|
5906
|
+
const rv = quatRotate(rot, v.value);
|
|
5907
|
+
trans = [
|
|
5908
|
+
trans[0] + rv[0],
|
|
5909
|
+
trans[1] + rv[1],
|
|
5910
|
+
trans[2] + rv[2]
|
|
5911
|
+
];
|
|
5861
5912
|
inner = inner.target;
|
|
5862
|
-
}
|
|
5913
|
+
} else if (inner.kind === "Rotate") {
|
|
5914
|
+
const p = evalRotateParams(inner, env);
|
|
5915
|
+
if (!p) break;
|
|
5916
|
+
const r = quatFromAxisAngle(p.axis, p.angle * Math.PI / 180);
|
|
5917
|
+
const newRot = quatMultiply(rot, r);
|
|
5918
|
+
const rotC = quatRotate(rot, p.center);
|
|
5919
|
+
const newRotC = quatRotate(newRot, p.center);
|
|
5920
|
+
trans = [
|
|
5921
|
+
trans[0] + rotC[0] - newRotC[0],
|
|
5922
|
+
trans[1] + rotC[1] - newRotC[1],
|
|
5923
|
+
trans[2] + rotC[2] - newRotC[2]
|
|
5924
|
+
];
|
|
5925
|
+
rot = newRot;
|
|
5926
|
+
inner = inner.target;
|
|
5927
|
+
} else break;
|
|
5863
5928
|
return {
|
|
5864
5929
|
inner,
|
|
5865
|
-
|
|
5866
|
-
|
|
5867
|
-
oy,
|
|
5868
|
-
oz
|
|
5869
|
-
]
|
|
5930
|
+
rot,
|
|
5931
|
+
trans
|
|
5870
5932
|
};
|
|
5871
5933
|
}
|
|
5872
|
-
|
|
5873
|
-
|
|
5874
|
-
|
|
5875
|
-
|
|
5876
|
-
|
|
5877
|
-
|
|
5878
|
-
|
|
5879
|
-
|
|
5880
|
-
|
|
5934
|
+
function isIdentityQuat(q) {
|
|
5935
|
+
return q[0] === 1 && q[1] === 0 && q[2] === 0 && q[3] === 0;
|
|
5936
|
+
}
|
|
5937
|
+
/**
|
|
5938
|
+
* Write `src` (flat xyz) rigidly transformed by quaternion (qw,qx,qy,qz) then
|
|
5939
|
+
* translation (tx,ty,tz) into `dst`. The quaternion-rotate math is inlined with
|
|
5940
|
+
* scalar locals — no per-vertex array allocation — because this runs once per
|
|
5941
|
+
* mesh vertex/normal and helper-allocated vector math regressed the gridfinity
|
|
5942
|
+
* benchmark 17% (see `utils/vec3.ts`). Pass zero translation for normals.
|
|
5943
|
+
*/
|
|
5944
|
+
function rotateXyzBuffer(dst, src, qw, qx, qy, qz, tx, ty, tz) {
|
|
5945
|
+
for (let i = 0; i < src.length; i += 3) {
|
|
5946
|
+
const vx = src[i] ?? 0;
|
|
5947
|
+
const vy = src[i + 1] ?? 0;
|
|
5948
|
+
const vz = src[i + 2] ?? 0;
|
|
5949
|
+
const cx = 2 * (qy * vz - qz * vy);
|
|
5950
|
+
const cy = 2 * (qz * vx - qx * vz);
|
|
5951
|
+
const cz = 2 * (qx * vy - qy * vx);
|
|
5952
|
+
dst[i] = vx + qw * cx + (qy * cz - qz * cy) + tx;
|
|
5953
|
+
dst[i + 1] = vy + qw * cy + (qz * cx - qx * cz) + ty;
|
|
5954
|
+
dst[i + 2] = vz + qw * cz + (qx * cy - qy * cx) + tz;
|
|
5955
|
+
}
|
|
5956
|
+
}
|
|
5957
|
+
/**
|
|
5958
|
+
* Apply a rigid motion to a mesh: vertices get the rotation then translation,
|
|
5959
|
+
* normals get the rotation only (a unit rotation preserves length, so no
|
|
5960
|
+
* renormalization). UVs and triangles are motion-invariant. A pure translation
|
|
5961
|
+
* (identity rotation) keeps the source normals array by reference and only
|
|
5962
|
+
* shifts vertices — the exact previous translation-only fast path.
|
|
5963
|
+
*/
|
|
5964
|
+
function transformMeshRigid(m, rot, trans) {
|
|
5965
|
+
const [tx, ty, tz] = trans;
|
|
5966
|
+
const pureTranslation = isIdentityQuat(rot);
|
|
5967
|
+
if (pureTranslation && tx === 0 && ty === 0 && tz === 0) return m;
|
|
5968
|
+
const src = m.vertices;
|
|
5969
|
+
const vertices = new Float32Array(src.length);
|
|
5970
|
+
if (pureTranslation) {
|
|
5971
|
+
for (let i = 0; i < src.length; i += 3) {
|
|
5972
|
+
vertices[i] = (src[i] ?? 0) + tx;
|
|
5973
|
+
vertices[i + 1] = (src[i + 1] ?? 0) + ty;
|
|
5974
|
+
vertices[i + 2] = (src[i + 2] ?? 0) + tz;
|
|
5975
|
+
}
|
|
5976
|
+
return {
|
|
5977
|
+
...m,
|
|
5978
|
+
vertices
|
|
5979
|
+
};
|
|
5881
5980
|
}
|
|
5981
|
+
const [qw, qx, qy, qz] = rot;
|
|
5982
|
+
rotateXyzBuffer(vertices, src, qw, qx, qy, qz, tx, ty, tz);
|
|
5983
|
+
const sn = m.normals;
|
|
5984
|
+
const normals = new Float32Array(sn.length);
|
|
5985
|
+
rotateXyzBuffer(normals, sn, qw, qx, qy, qz, 0, 0, 0);
|
|
5882
5986
|
return {
|
|
5883
5987
|
...m,
|
|
5884
|
-
vertices
|
|
5988
|
+
vertices,
|
|
5989
|
+
normals
|
|
5885
5990
|
};
|
|
5886
5991
|
}
|
|
5887
5992
|
/**
|
|
@@ -5889,8 +5994,8 @@ function translateMesh(m, offset) {
|
|
|
5889
5994
|
* moved faces location-dependent hashes, so the inner mesh's `faceId`s describe
|
|
5890
5995
|
* the *unplaced* shape; remap them to the placed faces (1:1 by iteration order,
|
|
5891
5996
|
* since `locate` shares the source TShape) so face picking and metadata lookup
|
|
5892
|
-
* resolve against the placed mesh. Origins are
|
|
5893
|
-
* `faceId` changes.
|
|
5997
|
+
* resolve against the placed mesh. Origins are boolean-lineage tags, invariant
|
|
5998
|
+
* under any rigid motion, so only `faceId` changes.
|
|
5894
5999
|
*
|
|
5895
6000
|
* Takes pre-captured hash arrays (not shapes): a bounded shape cache can evict
|
|
5896
6001
|
* and dispose one shape while the other is being evaluated, so the caller reads
|
|
@@ -5986,7 +6091,7 @@ var Evaluator = class {
|
|
|
5986
6091
|
}
|
|
5987
6092
|
return ok(cached);
|
|
5988
6093
|
}
|
|
5989
|
-
const { inner,
|
|
6094
|
+
const { inner, rot, trans } = peelRigid(node, env);
|
|
5990
6095
|
if (inner !== node) {
|
|
5991
6096
|
const innerMesh = this.evaluateMesh(inner, env, meshOpts);
|
|
5992
6097
|
if (!innerMesh.ok) return innerMesh;
|
|
@@ -5996,7 +6101,7 @@ var Evaluator = class {
|
|
|
5996
6101
|
const placedShape = this.evaluate(node, env);
|
|
5997
6102
|
if (!placedShape.ok) return placedShape;
|
|
5998
6103
|
const placedHashes = getFaces(placedShape.value).map(getHashCode);
|
|
5999
|
-
const moved =
|
|
6104
|
+
const moved = transformMeshRigid(innerMesh.value, rot, trans);
|
|
6000
6105
|
const faceGroups = relocateFaceGroups(moved.faceGroups, innerHashes, placedHashes);
|
|
6001
6106
|
const placedSet = new Set(placedHashes);
|
|
6002
6107
|
if (faceGroups.every((g) => placedSet.has(g.faceId))) {
|
|
@@ -6880,4 +6985,4 @@ var csg_exports = /* @__PURE__ */ __exportAll({
|
|
|
6880
6985
|
withEvaluator: () => withEvaluator
|
|
6881
6986
|
});
|
|
6882
6987
|
//#endregion
|
|
6883
|
-
export { BaseSketcher2d, BlueprintSketcher, BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEFAULT_CAPABILITIES, DEG2RAD, DisposalScope, EXACT_BREP_CAPABILITIES, FaceSketcher, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketcher, Sketches, addChild, addHoles, addJoint, addMate, addStep, adjacentFaces, all, andThen, applyGlue, applyMatrix, approximateCurve, as2D, as3D, asTopo, assignRoles, autoHeal, bezier, blueprintToDXF, booleanPipeline, booleans_exports as booleans, boss, box, bsplineApprox, bug, cameraFromPlane, cameraLookAt, captureHint, cast, castShape, castShape3D, chamfer, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkAllInterferences, checkBoolean, checkInterference, circle, circularPattern, classifyPointOnFace, clearMeshCache, clone, closedWire, collect, collectShapes, colorFaces, colorShape, complexExtrude, composeTransforms, compound, compoundSketchExtrude, compoundSketchFace, compoundSketchLoft, compoundSketchRevolve, computationError, computeStraightSkeleton, cone, construction_exports as construction, convexHull, cornerFinder, countNodes, createAssembly, createAssemblyNode, createBlueprint, createCamera, createCompound, createCompoundBlueprint, createDerivedFaceRef, createDistanceQuery, createEdge, createEdgeRef, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createVertexRef, createWire, createWorkerClient, createWorkerHandler, createWorkerPool, csg_exports as csg, currentQuality, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveAxis, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutAllBisect, cutBlueprints, cutWithEvolution, cylinder, cylindricalJoint, defaultScorer, dequeueTask, describe, deserializeDrawing, deserializeHistory, fromBREP as deserializeShape, downcast, draft, draw, drawCircle, drawEllipse, drawFaceOutline, drawParametricFunction, drawPointsInterpolation, drawPolysides, drawProjection, drawRectangle, drawRoundedRectangle, drawSingleCircle, drawSingleEllipse, drawText, drawingChamfer, drawingCut, drawingFillet, drawingFuse, drawingIntersect, drawingToSketchOnPlane, drill, edgeFinder, edgesOfFace, ellipse, ellipseArc, ellipsoid, enqueueTask, err, exportAssemblySTEP, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, exportURDF, extrude, extrudeAll, face, faceAxis, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, facesOfVertex, fieldBoolean, fieldContour, fieldOffset, fieldReinit, fieldShell, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, forwardKinematics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseAllBisect, fuseBlueprints, fuseWithEvolution, gearGeometry, getActiveVoxelId, getBounds, getBounds2D, getCompSolids, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getKernelCapabilities, getKernelTier, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getShells, getSingleFace, getSolids, getSurfaceType, getTagMetadata, getVertices, getVoxel, getWires, gridPattern, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, importURDF, init, initFromManifold, initFromOC, initVoxel, innerWires, instance, instanceCount, instanceGrid, instancedMesh, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, inverseKinematics, ioNs_exports as io, ioError, is2D, is3D, isBatchRequest, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDerivedFaceRef, isDisposeRequest, isEdge, isEdgeRef, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFaceRef, isFilletRadius, isInitRequest, isInside2D, isInstanced, isLineageRef, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isVertexRef, isWire, iterCompSolids, iterEdges, iterFaces, iterShells, iterSolids, iterTopo, iterVertices, iterWires, jointTrajectory, jointTransform, jointsFromDH, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, latticeInfill, latticeInfillShape, line, linearPattern, loadFont, loft, loftAll, makeBaseBox, makeExternalGear, makeInternalGear, makePlane, makePlanetaryGear, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, materialize, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mechanismDOF, mesh, meshEdges, meshLODs, meshLODsProgressive, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetMesh, offsetShape, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarJoint, planarWire, planetPlacements, pocket, pointOnSurface, pointsInside, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, prismaticJoint, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerKernelTier, registerOperation, registerShape, registerVoxel, rejectAll, removeChild, removeHolesFromFace, repairMesh, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDerivedFaceRef, resolveDirection, resolveEdgeRef, resolveLineageRef, resolvePlane, resolveRef, resolveRefIn, resolveRefParams, resolveVertexRef, reverseCurve, revoluteJoint, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, box$1 as sdfBox, capsule as sdfCapsule, cone$1 as sdfCone, cylinder$1 as sdfCylinder, fieldAxialRamp as sdfFieldAxialRamp, fieldClamp as sdfFieldClamp, fieldConst as sdfFieldConst, fieldFromSdf as sdfFieldFromSdf, fieldRadialRamp as sdfFieldRadialRamp, lattice as sdfLattice, plane as sdfPlane, roundedBox as sdfRoundedBox, sphere as sdfSphere, strutLattice as sdfStrutLattice, sweep as sdfSweep, torus as sdfTorus, section, sectionToFace, serializeHistory, setJointValue, setJointValues, setShapeOrigin, setTagMetadata, sewShells, shape, shapeToMeshInput, shapeType, sharedEdges, shell, shellMesh, shellShape, shellWithEvolution, simplify, sketchCircle, sketchEllipse, sketchExtrude, sketchFace, sketchFaceOffset, sketchHelix, sketchLoft, sketchOnFace2D, sketchOnPlane2D, sketchParametricFunction, sketchPolysides, sketchRectangle, sketchRevolve, sketchRoundedRectangle, sketchSweep, sketchText, sketchWires, sketcherStateError, slice, solid, solidFromShell, solveAssembly, sphere$1 as sphere, sphericalJoint, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep$1 as sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, thread, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLODGeometryLevels, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus$1 as torus, tpmsLattice, transformCopy, transforms_exports as transforms, translate, translate2D, translateDrawing, translatePlane, tryCatch, tryCatchAsync, twistExtrude, typeCastError, undoLast, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, updateNode, updateRoles, uvBounds, uvCoordinates, validSolid, validatePlanetary, validationError, variableFillet, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, vertex, vertexFinder, vertexPosition, verticesOfEdge, verticesOfFace, voxelBoolean, voxelBooleanField, voxelBooleanFieldShapes, voxelBooleanShapes, voxelField, voxelFieldFromShape, walkAssembly, windingNumbers, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withQuality, withScope, withScopeResult, withScopeResultAsync, withTier, zip as zipResults };
|
|
6988
|
+
export { BaseSketcher2d, BlueprintSketcher, BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEFAULT_CAPABILITIES, DEG2RAD, DisposalScope, EXACT_BREP_CAPABILITIES, FaceSketcher, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketcher, Sketches, addChild, addHoles, addJoint, addMate, addStep, adjacentFaces, all, andThen, applyGlue, applyMatrix, approximateCurve, as2D, as3D, asTopo, assignRoles, autoHeal, bezier, blueprintToDXF, booleanPipeline, booleans_exports as booleans, boss, box, bsplineApprox, bug, cameraFromPlane, cameraLookAt, captureHint, cast, castShape, castShape3D, chamfer, chamferDistAngle as chamferDistAngleShape, chamferWithEvolution, checkAllInterferences, checkBoolean, checkInterference, circle, circularPattern, classifyPointOnFace, clearMeshCache, clone, closedWire, collect, collectShapes, colorFaces, colorShape, complexExtrude, composeTransforms, compound, compoundSketchExtrude, compoundSketchFace, compoundSketchLoft, compoundSketchRevolve, computationError, computeStraightSkeleton, cone, construction_exports as construction, convexHull, cornerFinder, countNodes, createAssembly, createAssemblyNode, createBlueprint, createCamera, createCompound, createCompoundBlueprint, createDerivedFaceRef, createDistanceQuery, createEdge, createEdgeRef, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createVertexRef, createWire, createWorkerClient, createWorkerHandler, createWorkerPool, csg_exports as csg, currentQuality, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveAxis, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutAllBisect, cutBlueprints, cutWithEvolution, cylinder, cylindricalJoint, defaultScorer, dequeueTask, describe, deserializeDrawing, deserializeHistory, fromBREP as deserializeShape, downcast, draft, draw, drawCircle, drawEllipse, drawFaceOutline, drawParametricFunction, drawPointsInterpolation, drawPolysides, drawProjection, drawRectangle, drawRoundedRectangle, drawSingleCircle, drawSingleEllipse, drawText, drawingChamfer, drawingCut, drawingFillet, drawingFuse, drawingIntersect, drawingToSketchOnPlane, drill, edgeFinder, edgesOfFace, ellipse, ellipseArc, ellipsoid, enqueueTask, err, exportAssemblySTEP, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, exportURDF, extrude, extrudeAll, face, faceAxis, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, facesOfVertex, fieldBoolean, fieldContour, fieldOffset, fieldReinit, fieldShell, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, forwardKinematics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseAllBisect, fuseBlueprints, fuseWithEvolution, gearGeometry, getActiveVoxelId, getBounds, getBounds2D, getCompSolids, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getKernelCapabilities, getKernelTier, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getShells, getSingleFace, getSolids, getSurfaceType, getTagMetadata, getVertices, getVoxel, getWires, gridPattern, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, importURDF, init, initFromManifold, initFromOC, initVoxel, innerWires, instance, instanceCount, instanceGrid, instancedMesh, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, inverseKinematics, ioNs_exports as io, ioError, is2D, is3D, isBatchRequest, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDerivedFaceRef, isDisposeRequest, isEdge, isEdgeRef, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFaceRef, isFilletRadius, isInitRequest, isInside2D, isInstanced, isLineageRef, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isVertexRef, isWire, iterCompSolids, iterEdges, iterFaces, iterShells, iterSolids, iterTopo, iterVertices, iterWires, jointTrajectory, jointTransform, jointsFromDH, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, latticeInfill, latticeInfillShape, line, linearPattern, loadFont, locate, loft, loftAll, makeBaseBox, makeExternalGear, makeInternalGear, makePlane, makePlanetaryGear, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, materialize, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mechanismDOF, mesh, meshEdges, meshLODs, meshLODsProgressive, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetMesh, offsetShape, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarJoint, planarWire, planetPlacements, pocket, pointOnSurface, pointsInside, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, prismaticJoint, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerKernelTier, registerOperation, registerShape, registerVoxel, rejectAll, removeChild, removeHolesFromFace, repairMesh, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDerivedFaceRef, resolveDirection, resolveEdgeRef, resolveLineageRef, resolvePlane, resolveRef, resolveRefIn, resolveRefParams, resolveVertexRef, reverseCurve, revoluteJoint, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, box$1 as sdfBox, capsule as sdfCapsule, cone$1 as sdfCone, cylinder$1 as sdfCylinder, fieldAxialRamp as sdfFieldAxialRamp, fieldClamp as sdfFieldClamp, fieldConst as sdfFieldConst, fieldFromSdf as sdfFieldFromSdf, fieldRadialRamp as sdfFieldRadialRamp, lattice as sdfLattice, plane as sdfPlane, roundedBox as sdfRoundedBox, sphere as sdfSphere, strutLattice as sdfStrutLattice, sweep as sdfSweep, torus as sdfTorus, section, sectionToFace, serializeHistory, setJointValue, setJointValues, setShapeOrigin, setTagMetadata, sewShells, shape, shapeToMeshInput, shapeType, sharedEdges, shell, shellMesh, shellShape, shellWithEvolution, simplify, sketchCircle, sketchEllipse, sketchExtrude, sketchFace, sketchFaceOffset, sketchHelix, sketchLoft, sketchOnFace2D, sketchOnPlane2D, sketchParametricFunction, sketchPolysides, sketchRectangle, sketchRevolve, sketchRoundedRectangle, sketchSweep, sketchText, sketchWires, sketcherStateError, slice, solid, solidFromShell, solveAssembly, sphere$1 as sphere, sphericalJoint, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep$1 as sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, thread, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLODGeometryLevels, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus$1 as torus, tpmsLattice, transformCopy, transforms_exports as transforms, translate, translate2D, translateDrawing, translatePlane, tryCatch, tryCatchAsync, twistExtrude, typeCastError, undoLast, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, updateNode, updateRoles, uvBounds, uvCoordinates, validSolid, validatePlanetary, validationError, variableFillet, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, vertex, vertexFinder, vertexPosition, verticesOfEdge, verticesOfFace, voxelBoolean, voxelBooleanField, voxelBooleanFieldShapes, voxelBooleanShapes, voxelField, voxelFieldFromShape, walkAssembly, windingNumbers, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withQuality, withScope, withScopeResult, withScopeResultAsync, withTier, zip as zipResults };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
|
|
2
2
|
import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
|
|
3
|
-
import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-
|
|
3
|
+
import { _ as samePoint, p as distance2d, u as angle2d } from "./helpers-BuJ2542Q.js";
|
|
4
4
|
//#region src/query/cornerFinder.ts
|
|
5
5
|
var PI_2 = 2 * Math.PI;
|
|
6
6
|
function positiveHalfAngle(angle) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const require_constants = require("./constants-BOVyEYGH.cjs");
|
|
2
2
|
const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
|
|
3
|
-
const require_helpers = require("./helpers-
|
|
3
|
+
const require_helpers = require("./helpers-Cy4IH0Dc.cjs");
|
|
4
4
|
//#region src/query/cornerFinder.ts
|
|
5
5
|
var PI_2 = 2 * Math.PI;
|
|
6
6
|
function positiveHalfAngle(angle) {
|
|
@@ -10,12 +10,12 @@ import { d as pointOnSurface, l as normalAt, m as uvBounds, r as faceCenter, u a
|
|
|
10
10
|
import { h as offsetWire2D, i as curveIsClosed, l as curveStartPoint } from "./curveFns-CcSn4-Rf.js";
|
|
11
11
|
import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
|
|
12
12
|
import { c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, m as makeHelix, r as makeFace, s as assembleWire } from "./surfaceBuilders-rkE-jE90.js";
|
|
13
|
-
import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-
|
|
14
|
-
import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-
|
|
15
|
-
import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-
|
|
16
|
-
import { t as cornerFinder } from "./cornerFinder-
|
|
17
|
-
import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-
|
|
18
|
-
import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-
|
|
13
|
+
import { a as Blueprints, c as make2dOffset, i as CompoundBlueprint, l as intersectCurves, n as BaseSketcher2d, o as chamferCurves, s as filletCurves, u as Flatbush } from "./blueprintSketcher-Cw_Epicg.js";
|
|
14
|
+
import { _ as samePoint$1, b as subtract2d, c as PRECISION_OFFSET, l as add2d, y as squareDistance2d } from "./helpers-BuJ2542Q.js";
|
|
15
|
+
import { _ as Curve2D, a as edgeToCurve, c as make2dCircle, d as make2dInerpolatedBSplineCurve, f as make2dSegmentCurve, g as approximateAsSvgCompatibleCurve, i as curvesAsEdgesOnPlane, l as make2dEllipse, o as make2dArcFromCenter, t as Blueprint, v as deserializeCurve2D, y as BoundingBox2d } from "./blueprint-ccFH0CU4.js";
|
|
16
|
+
import { t as cornerFinder } from "./cornerFinder-Baa3j5Ph.js";
|
|
17
|
+
import { c as roundedRectangleBlueprint, n as fuse2D, r as intersect2D, s as polysidesBlueprint, t as cut2D } from "./boolean2D-BiPWJMSB.js";
|
|
18
|
+
import { _ as wrapSketchDataArray, a as Sketch, g as wrapSketchData, i as Sketches, t as textBlueprints } from "./textBlueprints-gMoNCh6B.js";
|
|
19
19
|
import { i as projectEdges, t as cameraFromPlane } from "./cameraFns-bk9e0F-T.js";
|
|
20
20
|
//#region src/2d/lib/stitching.ts
|
|
21
21
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const require_textBlueprints = require("./textBlueprints-
|
|
1
|
+
const require_textBlueprints = require("./textBlueprints-BvD0c2S0.cjs");
|
|
2
2
|
const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
|
|
3
3
|
const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
|
|
4
4
|
const require_errors = require("./errors-CXJtc4I7.cjs");
|
|
@@ -11,11 +11,11 @@ const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
|
|
|
11
11
|
const require_curveFns = require("./curveFns-DgUJpH4z.cjs");
|
|
12
12
|
const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
|
|
13
13
|
const require_surfaceBuilders = require("./surfaceBuilders-UyyfZy8w.cjs");
|
|
14
|
-
const require_blueprintSketcher = require("./blueprintSketcher-
|
|
15
|
-
const require_helpers = require("./helpers-
|
|
16
|
-
const require_blueprint = require("./blueprint-
|
|
17
|
-
const require_cornerFinder = require("./cornerFinder-
|
|
18
|
-
const require_boolean2D = require("./boolean2D-
|
|
14
|
+
const require_blueprintSketcher = require("./blueprintSketcher-BY6R2umG.cjs");
|
|
15
|
+
const require_helpers = require("./helpers-Cy4IH0Dc.cjs");
|
|
16
|
+
const require_blueprint = require("./blueprint-Bb6y8xmG.cjs");
|
|
17
|
+
const require_cornerFinder = require("./cornerFinder-DaHVcKSL.cjs");
|
|
18
|
+
const require_boolean2D = require("./boolean2D-mBIMAMP3.cjs");
|
|
19
19
|
const require_cameraFns = require("./cameraFns-uo1sZbBT.cjs");
|
|
20
20
|
//#region src/2d/lib/stitching.ts
|
|
21
21
|
/**
|
|
@@ -3,9 +3,9 @@ const require_errors = require("./errors-CXJtc4I7.cjs");
|
|
|
3
3
|
const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
|
|
4
4
|
const require_constants = require("./constants-BOVyEYGH.cjs");
|
|
5
5
|
const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
|
|
6
|
-
const require_shapeFns = require("./shapeFns-
|
|
6
|
+
const require_shapeFns = require("./shapeFns-aI4Hr4XV.cjs");
|
|
7
7
|
const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
|
|
8
|
-
const require_solidBuilders = require("./solidBuilders-
|
|
8
|
+
const require_solidBuilders = require("./solidBuilders-DSokszEg.cjs");
|
|
9
9
|
//#region src/topology/threeHelpers.ts
|
|
10
10
|
/**
|
|
11
11
|
* Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
|
|
@@ -3,9 +3,9 @@ import { A as ok, T as isOk, b as err, d as validationError, i as kernelError, l
|
|
|
3
3
|
import { c as getFaces, i as getCachedIsValid, m as invalidateShapeCache, p as getWires, s as getEdges } from "./topologyQueryFns-BeKaWpNm.js";
|
|
4
4
|
import { n as HASH_CODE_MAX } from "./constants-ITRzCnCp.js";
|
|
5
5
|
import { v as downcast } from "./faceFns-B86WGqDg.js";
|
|
6
|
-
import {
|
|
6
|
+
import { _ as collectInputFaceHashes, y as propagateAllMetadata } from "./shapeFns-DJHbIsRX.js";
|
|
7
7
|
import { t as firstOrThrow } from "./arrayAccess-DrUGPADn.js";
|
|
8
|
-
import { f as cut, h as fuseAll, m as fuse, p as cutAll } from "./solidBuilders-
|
|
8
|
+
import { f as cut, h as fuseAll, m as fuse, p as cutAll } from "./solidBuilders-CjrjwCtG.js";
|
|
9
9
|
//#region src/topology/threeHelpers.ts
|
|
10
10
|
/**
|
|
11
11
|
* Convert a ShapeMesh into BufferGeometry-compatible typed arrays.
|
|
@@ -4,7 +4,7 @@ import { c as getFaces, f as getVertices, p as getWires, s as getEdges } from ".
|
|
|
4
4
|
import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
|
|
5
5
|
import { a as vecDot, d as vecNormalize } from "./vecOps-SKPRvPH-.js";
|
|
6
6
|
import { l as normalAt, s as getSurfaceType } from "./faceFns-B86WGqDg.js";
|
|
7
|
-
import { a as isSameShape, n as getHashCode } from "./shapeFns-
|
|
7
|
+
import { a as isSameShape, n as getHashCode } from "./shapeFns-DJHbIsRX.js";
|
|
8
8
|
import { f as getCurveType, i as curveIsClosed, o as curveLength } from "./curveFns-CcSn4-Rf.js";
|
|
9
9
|
import { n as measureArea } from "./measureFns-a5Vx25or.js";
|
|
10
10
|
//#region src/utils/vec2d.ts
|
|
@@ -4,7 +4,7 @@ const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
|
|
|
4
4
|
const require_constants = require("./constants-BOVyEYGH.cjs");
|
|
5
5
|
const require_vecOps = require("./vecOps-CCnJt-yH.cjs");
|
|
6
6
|
const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
|
|
7
|
-
const require_shapeFns = require("./shapeFns-
|
|
7
|
+
const require_shapeFns = require("./shapeFns-aI4Hr4XV.cjs");
|
|
8
8
|
const require_curveFns = require("./curveFns-DgUJpH4z.cjs");
|
|
9
9
|
const require_measureFns = require("./measureFns-DblG0Yaz.cjs");
|
|
10
10
|
//#region src/utils/vec2d.ts
|
|
@@ -2,7 +2,7 @@ const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
|
|
|
2
2
|
const require_vec3 = require("./vec3-CFwOI0ZI.cjs");
|
|
3
3
|
const require_errors = require("./errors-CXJtc4I7.cjs");
|
|
4
4
|
const require_arrayAccess = require("./arrayAccess-e4H9cBfh.cjs");
|
|
5
|
-
const require_blueprint = require("./blueprint-
|
|
5
|
+
const require_blueprint = require("./blueprint-Bb6y8xmG.cjs");
|
|
6
6
|
//#region src/io/objExportFns.ts
|
|
7
7
|
/** Read a vec3 from a typed array at the given vertex index. */
|
|
8
8
|
function vec3At(arr, i) {
|
|
@@ -2,7 +2,7 @@ import { Z as getKernel, t as castShape } from "./shapeTypes-Dpu6mD3m.js";
|
|
|
2
2
|
import { n as wasmIndex, t as vec3At$1 } from "./vec3-Dpha8d5k.js";
|
|
3
3
|
import { A as ok, b as err, r as ioError, t as BrepErrorCode } from "./errors-DNWJsfVU.js";
|
|
4
4
|
import { n as getAtOrThrow } from "./arrayAccess-DrUGPADn.js";
|
|
5
|
-
import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-
|
|
5
|
+
import { f as make2dSegmentCurve, m as make2dThreePointArc, s as make2dBezierCurve, t as Blueprint } from "./blueprint-ccFH0CU4.js";
|
|
6
6
|
//#region src/io/objExportFns.ts
|
|
7
7
|
/** Read a vec3 from a typed array at the given vertex index. */
|
|
8
8
|
function vec3At(arr, i) {
|
package/dist/index.d.ts
CHANGED
|
@@ -142,7 +142,7 @@ export type { Shapeable, WrappedMarker, FinderFn, FilletRadius, ChamferDistance,
|
|
|
142
142
|
export { resolve, resolve3D } from './topology/apiTypes.js';
|
|
143
143
|
export { box, cylinder, sphere, cone, torus, ellipsoid, line, circle, ellipse, helix, threePointArc, ellipseArc, bsplineApprox, bezier, tangentArc, wire, wireLoop, face, filledFace, subFace, polygon, vertex, compound, solid, offsetFace, sewShells, addHoles, type BoxOptions, type CylinderOptions, type SphereOptions, type ConeOptions, type TorusOptions, type EllipsoidOptions, type CircleOptions, type EllipseOptions, type HelixOptions, type EllipseArcOptions, } from './topology/primitiveFns.js';
|
|
144
144
|
export { fill } from './topology/surfaceBuilders.js';
|
|
145
|
-
export { translate, rotate, mirror, scale, clone, applyMatrix, composeTransforms, transformCopy, type TransformOp, type ComposedTransform, fuse, cut, fuseAll, cutAll, intersect, section, sectionToFace, split, slice, fillet, chamfer, shell, offset, thicken, draft, heal, simplify, mesh, meshEdges, describe, toBREP, fromBREP, isValid, isEmpty, type RotateOptions, type MirrorOptions, type ScaleOptions, } from './topology/api.js';
|
|
145
|
+
export { translate, rotate, mirror, scale, clone, locate, applyMatrix, composeTransforms, transformCopy, type TransformOp, type ComposedTransform, fuse, cut, fuseAll, cutAll, intersect, section, sectionToFace, split, slice, fillet, chamfer, shell, offset, thicken, draft, heal, simplify, mesh, meshEdges, describe, toBREP, fromBREP, isValid, isEmpty, type RotateOptions, type MirrorOptions, type ScaleOptions, } from './topology/api.js';
|
|
146
146
|
export { extrude, revolve, loft, type RevolveOptions, type LoftOptions as CleanLoftOptions, type SweepOptions as CleanSweepOptions, } from './operations/api.js';
|
|
147
147
|
export { loftAll, type LoftAllEntry } from './operations/loftFns.js';
|
|
148
148
|
export { thread, type ThreadOptions } from './operations/threadFns.js';
|
package/dist/io.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_meshFns = require("./meshFns-
|
|
3
|
-
const require_importFns = require("./importFns-
|
|
2
|
+
const require_meshFns = require("./meshFns-HyzvCIhb.cjs");
|
|
3
|
+
const require_importFns = require("./importFns-2X1Bh_-e.cjs");
|
|
4
4
|
exports.blueprintToDXF = require_importFns.blueprintToDXF;
|
|
5
5
|
exports.exportDXF = require_importFns.exportDXF;
|
|
6
6
|
exports.exportGlb = require_importFns.exportGlb;
|
package/dist/io.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-
|
|
2
|
-
import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-
|
|
1
|
+
import { n as exportSTEP, r as exportSTL, t as exportIGES } from "./meshFns-DBsxqJd3.js";
|
|
2
|
+
import { a as importSVG, c as blueprintToDXF, d as exportGltf, f as exportOBJ, i as exportSTEPConfigured, l as exportDXF, n as importSTEP, o as importSVGPathD, r as importSTL, s as exportThreeMF, t as importIGES, u as exportGlb } from "./importFns-DU6m8NVC.js";
|
|
3
3
|
export { blueprintToDXF, exportDXF, exportGlb, exportGltf, exportIGES, exportOBJ, exportSTEP, exportSTEPConfigured, exportSTL, exportThreeMF, importIGES, importSTEP, importSTL, importSVG, importSVGPathD };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Z as getKernel, gt as qualityDeflection } from "./shapeTypes-Dpu6mD3m.js";
|
|
2
2
|
import { A as ok, b as err, r as ioError } from "./errors-DNWJsfVU.js";
|
|
3
3
|
import { d as getSolids, n as getBounds } from "./topologyQueryFns-BeKaWpNm.js";
|
|
4
|
-
import {
|
|
4
|
+
import { j as getFaceOrigins } from "./shapeFns-DJHbIsRX.js";
|
|
5
5
|
//#region src/topology/meshCache.ts
|
|
6
6
|
/**
|
|
7
7
|
* Build a parameter key for the inner cache map (excludes shape identity).
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
|
|
2
2
|
const require_errors = require("./errors-CXJtc4I7.cjs");
|
|
3
3
|
const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
|
|
4
|
-
const require_shapeFns = require("./shapeFns-
|
|
4
|
+
const require_shapeFns = require("./shapeFns-aI4Hr4XV.cjs");
|
|
5
5
|
//#region src/topology/meshCache.ts
|
|
6
6
|
/**
|
|
7
7
|
* Build a parameter key for the inner cache map (excludes shape identity).
|
package/dist/operations.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_threadFns = require("./threadFns-
|
|
2
|
+
const require_threadFns = require("./threadFns-cKaZIY34.cjs");
|
|
3
3
|
const require_loftFns = require("./loftFns-fpTmrIdd.cjs");
|
|
4
4
|
exports.addChild = require_threadFns.addChild;
|
|
5
5
|
exports.addJoint = require_threadFns.addJoint;
|
package/dist/operations.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { A as setJointValue, B as
|
|
1
|
+
import { A as setJointValue, B as createAssemblyNode, C as cylindricalJoint, D as planarJoint, E as mechanismDOF, G as circularPattern, H as removeChild, J as exportAssemblySTEP, K as gridPattern, L as addChild, M as sphericalJoint, O as prismaticJoint, R as collectShapes, S as addJoint, T as jointTransform, U as updateNode, V as findNode, W as walkAssembly, Y as createAssembly, _ as exportURDF, b as inverseKinematics, c as modifyStep, d as replayFrom, f as replayHistory, g as undoLast, h as stepsFrom, i as createRegistry, j as setJointValues, k as revoluteJoint, l as registerOperation, m as stepCount, n as addStep, o as findStep, q as linearPattern, r as createHistory, s as getShape, t as thread, u as registerShape, v as importURDF, w as forwardKinematics, x as jointTrajectory, y as jointsFromDH, z as countNodes } from "./threadFns-B9udL9Zs.js";
|
|
2
2
|
import { d as twistExtrude, l as supportExtrude, o as complexExtrude, u as sweep } from "./loftFns-CmShFQlv.js";
|
|
3
3
|
export { addChild, addJoint, addStep, circularPattern, collectShapes, complexExtrude, countNodes, createAssembly, createAssemblyNode, createHistory, createRegistry, cylindricalJoint, exportAssemblySTEP, exportURDF, findNode, findStep, forwardKinematics, getShape as getHistoryShape, gridPattern, importURDF, inverseKinematics, jointTrajectory, jointTransform, jointsFromDH, linearPattern, mechanismDOF, modifyStep, planarJoint, prismaticJoint, registerOperation, registerShape, removeChild, replayFrom, replayHistory, revoluteJoint, setJointValue, setJointValues, sphericalJoint, stepCount, stepsFrom, supportExtrude, sweep, thread, twistExtrude, undoLast, updateNode, walkAssembly };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
const require_shapeTypes = require("./shapeTypes-BTTwjHy5.cjs");
|
|
2
2
|
const require_errors = require("./errors-CXJtc4I7.cjs");
|
|
3
3
|
const require_constants = require("./constants-BOVyEYGH.cjs");
|
|
4
|
-
const require_shapeFns = require("./shapeFns-
|
|
4
|
+
const require_shapeFns = require("./shapeFns-aI4Hr4XV.cjs");
|
|
5
5
|
const require_surfaceBuilders = require("./surfaceBuilders-UyyfZy8w.cjs");
|
|
6
|
-
const require_solidBuilders = require("./solidBuilders-
|
|
6
|
+
const require_solidBuilders = require("./solidBuilders-DSokszEg.cjs");
|
|
7
7
|
//#region src/topology/primitiveFns.ts
|
|
8
8
|
/**
|
|
9
9
|
* Create a box with the given dimensions.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Z as getKernel, c as createSolid, x as isClosedWire } from "./shapeTypes-Dpu6mD3m.js";
|
|
2
2
|
import { A as ok, b as err, d as validationError, v as andThen } from "./errors-DNWJsfVU.js";
|
|
3
3
|
import { t as DEG2RAD } from "./constants-ITRzCnCp.js";
|
|
4
|
-
import {
|
|
4
|
+
import { g as translate } from "./shapeFns-DJHbIsRX.js";
|
|
5
5
|
import { _ as makeThreePointArc, a as makeNonPlanarFace, c as makeBSplineApproximation, d as makeCircle, f as makeEllipse, g as makeTangentArc, h as makeLine, i as makeNewFaceWithinFace, m as makeHelix, o as makePolygon, p as makeEllipseArc, r as makeFace, s as assembleWire, t as addHolesInFace, u as makeBezierCurve } from "./surfaceBuilders-rkE-jE90.js";
|
|
6
|
-
import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-
|
|
6
|
+
import { a as makeOffset, c as makeTorus, i as makeEllipsoid, l as makeVertex, n as makeCone, o as makeSolid, r as makeCylinder, s as makeSphere, t as makeCompound, u as weldShellsAndFaces } from "./solidBuilders-CjrjwCtG.js";
|
|
7
7
|
//#region src/topology/primitiveFns.ts
|
|
8
8
|
/**
|
|
9
9
|
* Create a box with the given dimensions.
|
package/dist/query.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_helpers = require("./helpers-
|
|
3
|
-
const require_cornerFinder = require("./cornerFinder-
|
|
2
|
+
const require_helpers = require("./helpers-Cy4IH0Dc.cjs");
|
|
3
|
+
const require_cornerFinder = require("./cornerFinder-DaHVcKSL.cjs");
|
|
4
4
|
exports.cornerFinder = require_cornerFinder.cornerFinder;
|
|
5
5
|
exports.edgeFinder = require_helpers.edgeFinder;
|
|
6
6
|
exports.faceFinder = require_helpers.faceFinder;
|
package/dist/query.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-
|
|
2
|
-
import { t as cornerFinder } from "./cornerFinder-
|
|
1
|
+
import { n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-BuJ2542Q.js";
|
|
2
|
+
import { t as cornerFinder } from "./cornerFinder-Baa3j5Ph.js";
|
|
3
3
|
export { cornerFinder, edgeFinder, faceFinder, getSingleFace };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const require_topologyQueryFns = require("./topologyQueryFns-CoXVHuN7.cjs");
|
|
2
2
|
const require_faceFns = require("./faceFns-BV0GnTlt.cjs");
|
|
3
|
-
const require_shapeFns = require("./shapeFns-
|
|
3
|
+
const require_shapeFns = require("./shapeFns-aI4Hr4XV.cjs");
|
|
4
4
|
const require_measureFns = require("./measureFns-DblG0Yaz.cjs");
|
|
5
5
|
const require_adjacencyFns = require("./adjacencyFns-d8ZabkvX.cjs");
|
|
6
6
|
//#region src/topology/shapeRef/scoring.ts
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { S as vertexPosition, c as getFaces } from "./topologyQueryFns-BeKaWpNm.js";
|
|
2
2
|
import { i as faceGeomType, l as normalAt, r as faceCenter } from "./faceFns-B86WGqDg.js";
|
|
3
|
-
import { n as getHashCode } from "./shapeFns-
|
|
3
|
+
import { n as getHashCode } from "./shapeFns-DJHbIsRX.js";
|
|
4
4
|
import { n as measureArea, s as measureLength } from "./measureFns-a5Vx25or.js";
|
|
5
5
|
import { a as sharedEdges, i as facesOfVertex, o as verticesOfEdge, r as facesOfEdge, s as verticesOfFace, t as adjacentFaces } from "./adjacencyFns-BYnyXXqt.js";
|
|
6
6
|
//#region src/topology/shapeRef/scoring.ts
|