brepjs 18.6.0 → 18.14.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/{sketching/sketcher2d.d.ts → 2d/blueprints/baseSketcher2d.d.ts} +4 -91
- package/dist/2d/blueprints/blueprint.d.ts +0 -1
- package/dist/2d/blueprints/blueprintApproximations.d.ts +0 -1
- package/dist/2d/blueprints/blueprintCustomCorners.d.ts +0 -1
- package/dist/2d/blueprints/blueprintFns.d.ts +0 -1
- package/dist/2d/blueprints/blueprintOffset.d.ts +0 -1
- package/dist/2d/blueprints/blueprintSketcher.d.ts +29 -0
- package/dist/2d/blueprints/blueprints.d.ts +0 -1
- package/dist/2d/blueprints/boolean2D.d.ts +0 -1
- package/dist/2d/blueprints/booleanHelpers.d.ts +0 -1
- package/dist/2d/blueprints/booleanOperations.d.ts +0 -1
- package/dist/2d/blueprints/cannedBlueprints.d.ts +0 -1
- package/dist/2d/blueprints/compoundBlueprint.d.ts +0 -1
- package/dist/{sketching → 2d/blueprints}/ellipseUtils.d.ts +19 -2
- package/dist/{sketching/sketcherlib.d.ts → 2d/blueprints/genericSketcher.d.ts} +1 -20
- package/dist/2d/blueprints/index.d.ts +0 -1
- package/dist/2d/blueprints/intersectionSegments.d.ts +0 -1
- package/dist/2d/blueprints/lib.d.ts +0 -1
- package/dist/2d/blueprints/segmentAssembly.d.ts +0 -1
- package/dist/2d/blueprints/svg.d.ts +0 -1
- package/dist/2d/curve2dGeometryFns.d.ts +0 -1
- package/dist/2d/curves.d.ts +0 -1
- package/dist/2d/lib/approximations.d.ts +0 -1
- package/dist/2d/lib/boundingBox2d.d.ts +0 -1
- package/dist/2d/lib/curve2D.d.ts +0 -1
- package/dist/2d/lib/curve2dFns.d.ts +0 -1
- package/dist/2d/lib/customCorners.d.ts +0 -1
- package/dist/2d/lib/definitions.d.ts +0 -1
- package/dist/2d/lib/index.d.ts +0 -1
- package/dist/2d/lib/intersections.d.ts +0 -1
- package/dist/2d/lib/makeCurves.d.ts +0 -1
- package/dist/2d/lib/offset.d.ts +0 -1
- package/dist/2d/lib/precision.d.ts +0 -1
- package/dist/2d/lib/stitching.d.ts +0 -1
- package/dist/2d/lib/svgPath.d.ts +0 -1
- package/dist/2d/lib/utils.d.ts +0 -1
- package/dist/2d/lib/vectorOperations.d.ts +0 -1
- package/dist/2d.cjs +20 -19
- package/dist/2d.d.ts +0 -1
- package/dist/2d.js +7 -6
- package/dist/{blueprint-CscZ0-wr.cjs → blueprint-B8ogGJiQ.cjs} +16 -15
- package/dist/{blueprint-BCoJbaQN.js → blueprint-Dv45Evnu.js} +16 -15
- package/dist/{blueprintFns-DQP4KQHE.cjs → blueprintFns-BK3FYYjO.cjs} +4 -4
- package/dist/{blueprintFns-BZlx6BjG.js → blueprintFns-a9C2g8_E.js} +3 -3
- package/dist/{boolean2D-k1AJmCMp.cjs → blueprintSketcher-Bei866Bt.cjs} +65 -1383
- package/dist/{boolean2D-JvgjbESt.js → blueprintSketcher-xDsl9GXO.js} +70 -1316
- package/dist/boolean2D-DGuiEJHA.cjs +902 -0
- package/dist/boolean2D-Z7P0c012.js +855 -0
- package/dist/{booleanFns-D13Pb-NO.js → booleanFns-CRa80qMX.js} +9 -9
- package/dist/{booleanFns-DQW4lt7H.cjs → booleanFns-qmgMQyDl.cjs} +12 -12
- package/dist/brepjs.cjs +772 -112
- package/dist/brepjs.js +692 -42
- package/dist/cameraFns-1y1NyACI.cjs +315 -0
- package/dist/cameraFns-CUzI5RKS.js +274 -0
- package/dist/core/constants.d.ts +0 -1
- package/dist/core/curve2dHandle.d.ts +0 -1
- package/dist/core/dimensionTypes.d.ts +0 -1
- package/dist/core/disposal.d.ts +0 -1
- package/dist/core/errors.d.ts +0 -1
- package/dist/core/kernelBoundary.d.ts +0 -1
- package/dist/core/kernelCall.d.ts +0 -1
- package/dist/core/kernelErrorTranslation.d.ts +0 -1
- package/dist/core/planeOps.d.ts +0 -1
- package/dist/core/planeTypes.d.ts +0 -1
- package/dist/core/result.d.ts +0 -1
- package/dist/core/shapeTypeCache.d.ts +0 -1
- package/dist/core/shapeTypes.d.ts +0 -1
- package/dist/core/typeDiscriminants.d.ts +0 -1
- package/dist/core/types.d.ts +0 -1
- package/dist/core/validityTypes.d.ts +0 -1
- package/dist/core/vecOps.d.ts +0 -1
- package/dist/core.cjs +6 -6
- package/dist/core.d.ts +0 -1
- package/dist/core.js +6 -6
- package/dist/{cornerFinder-5BYE2cbd.cjs → cornerFinder-CC8EBRCR.cjs} +3 -3
- package/dist/{cornerFinder-Zg7pf2s0.js → cornerFinder-Dix2ghke.js} +3 -3
- package/dist/{curveFns-DhqUp0EI.js → curveFns-B4tWuinR.js} +2 -2
- package/dist/{curveFns-DrT54cm8.cjs → curveFns-CD20-4fM.cjs} +2 -2
- package/dist/{drawFns-lUXjhTYL.js → drawFns-BsarLfUN.js} +163 -769
- package/dist/{drawFns-DmP2o1oF.cjs → drawFns-LlOZoFyp.cjs} +203 -985
- package/dist/{errors-DboJwVCf.js → errors-0fYW_YnO.js} +2 -1
- package/dist/{errors-CXRNVCec.cjs → errors-Dv6pfNct.cjs} +2 -1
- package/dist/{extrudeFns-B9bVCt3C.js → extrudeFns-7pE8dIWz.js} +3 -3
- package/dist/{extrudeFns-BtblHdaJ.cjs → extrudeFns-DD36mWKv.cjs} +3 -3
- package/dist/faceFns-BFWz17_E.js +218 -0
- package/dist/faceFns-DP7i60yJ.cjs +343 -0
- package/dist/gear/gearFns.d.ts +129 -0
- package/dist/gear/gearMath.d.ts +88 -0
- package/dist/gear/gearProfile.d.ts +16 -0
- package/dist/gear/index.d.ts +3 -0
- package/dist/{helpers-BpXNcxuJ.cjs → helpers-Cyj6gaqy.cjs} +14 -13
- package/dist/{helpers-S_Ht6gwX.js → helpers-vV2ONZwD.js} +9 -8
- package/dist/{historyFns-B01hrkcJ.js → historyFns-DGb61ETW.js} +6 -6
- package/dist/{historyFns-RHO-QvEZ.cjs → historyFns-DfyrPjnK.cjs} +6 -6
- package/dist/{importFns-CG49lyTm.cjs → importFns-C-p0vl_h.cjs} +11 -19
- package/dist/{importFns-C0tUyeiW.js → importFns-Ci-L2iB3.js} +11 -19
- package/dist/index.d.ts +16 -8
- package/dist/io/dxfExportFns.d.ts +0 -1
- package/dist/io/dxfImportFns.d.ts +0 -1
- package/dist/io/gltfExportFns.d.ts +0 -1
- package/dist/io/gltfImportFns.d.ts +0 -1
- package/dist/io/importFns.d.ts +0 -1
- package/dist/io/ioUtils.d.ts +0 -1
- package/dist/io/objExportFns.d.ts +0 -1
- package/dist/io/objImportFns.d.ts +0 -1
- package/dist/io/stepConfigFns.d.ts +0 -1
- package/dist/io/svgImportFns.d.ts +0 -1
- package/dist/io/threemfExportFns.d.ts +0 -1
- package/dist/io/threemfImportFns.d.ts +0 -1
- package/dist/io.cjs +2 -2
- package/dist/io.d.ts +0 -1
- package/dist/io.js +2 -2
- package/dist/kernel/brepkit/booleanOps.d.ts +23 -1
- package/dist/kernel/brepkit/brepkitAdapter.d.ts +21 -408
- package/dist/kernel/brepkit/brepkitWasmTypes.d.ts +0 -1
- package/dist/kernel/brepkit/constructionOps.d.ts +51 -1
- package/dist/kernel/brepkit/evolutionOps.d.ts +34 -3
- package/dist/kernel/brepkit/geometryOps.d.ts +63 -2
- package/dist/kernel/brepkit/helpers.d.ts +6 -1
- package/dist/kernel/brepkit/internalOps.d.ts +0 -1
- package/dist/kernel/brepkit/ioOps.d.ts +47 -9
- package/dist/kernel/brepkit/kernel2dOps.d.ts +113 -1
- package/dist/kernel/brepkit/measureOps.d.ts +39 -1
- package/dist/kernel/brepkit/meshOps.d.ts +7 -1
- package/dist/kernel/brepkit/modifierOps.d.ts +15 -1
- package/dist/kernel/brepkit/repairOps.d.ts +14 -1
- package/dist/kernel/brepkit/sketchOps.d.ts +3 -1
- package/dist/kernel/brepkit/sweepOps.d.ts +37 -1
- package/dist/kernel/brepkit/topologyOps.d.ts +16 -1
- package/dist/kernel/brepkit/transformOps.d.ts +18 -1
- package/dist/kernel/geometry2d.d.ts +0 -1
- package/dist/kernel/index.d.ts +0 -1
- package/dist/kernel/interfaces/booleanOps.d.ts +0 -1
- package/dist/kernel/interfaces/builderOps.d.ts +0 -1
- package/dist/kernel/interfaces/core.d.ts +0 -1
- package/dist/kernel/interfaces/curveOps.d.ts +0 -1
- package/dist/kernel/interfaces/evolutionOps.d.ts +0 -1
- package/dist/kernel/interfaces/index.d.ts +0 -1
- package/dist/kernel/interfaces/ioOps.d.ts +0 -1
- package/dist/kernel/interfaces/measureOps.d.ts +0 -1
- package/dist/kernel/interfaces/meshOps.d.ts +0 -1
- package/dist/kernel/interfaces/modifierOps.d.ts +0 -1
- package/dist/kernel/interfaces/primitiveOps.d.ts +0 -1
- package/dist/kernel/interfaces/repairOps.d.ts +0 -1
- package/dist/kernel/interfaces/surfaceOps.d.ts +0 -1
- package/dist/kernel/interfaces/sweepOps.d.ts +0 -1
- package/dist/kernel/interfaces/topologyOps.d.ts +0 -1
- package/dist/kernel/interfaces/transformOps.d.ts +0 -1
- package/dist/kernel/kernel2dTypes.d.ts +0 -1
- package/dist/kernel/occt/advancedOps.d.ts +126 -24
- package/dist/kernel/occt/booleanBatchOps.d.ts +0 -1
- package/dist/kernel/occt/booleanOps.d.ts +11 -1
- package/dist/kernel/occt/booleanPipelineOps.d.ts +10 -1
- package/dist/kernel/occt/constructorOps.d.ts +14 -1
- package/dist/kernel/occt/curveOps.d.ts +13 -1
- package/dist/kernel/occt/defaultAdapter.d.ts +10 -441
- package/dist/kernel/occt/evolutionOps.d.ts +0 -1
- package/dist/kernel/occt/extendedConstructorOps.d.ts +31 -1
- package/dist/kernel/occt/geometryQueryOps.d.ts +40 -1
- package/dist/kernel/occt/healingOps.d.ts +6 -1
- package/dist/kernel/occt/historyOps.d.ts +17 -1
- package/dist/kernel/occt/hullOps.d.ts +14 -1
- package/dist/kernel/occt/ioOps.d.ts +9 -1
- package/dist/kernel/occt/kernel2dOps.d.ts +113 -1
- package/dist/kernel/occt/measureOps.d.ts +19 -1
- package/dist/kernel/occt/meshOps.d.ts +5 -1
- package/dist/kernel/occt/modifierOps.d.ts +24 -1
- package/dist/kernel/occt/nurbsQueryOps.d.ts +5 -1
- package/dist/kernel/occt/sweepOps.d.ts +23 -1
- package/dist/kernel/occt/topologyOps.d.ts +10 -1
- package/dist/kernel/occt/transformOps.d.ts +14 -4
- package/dist/kernel/occt/wasmTypes/externals.d.ts +0 -1
- package/dist/kernel/occt/wasmTypes/index.d.ts +0 -1
- package/dist/kernel/occt/wasmTypes/occtBuilders.d.ts +0 -1
- package/dist/kernel/occtWasm/adapterShims.d.ts +4 -0
- package/dist/kernel/occtWasm/booleanOps.d.ts +11 -0
- package/dist/kernel/occtWasm/constructionOps.d.ts +36 -0
- package/dist/kernel/occtWasm/curveOps.d.ts +23 -0
- package/dist/kernel/occtWasm/evolutionOps.d.ts +17 -0
- package/dist/kernel/occtWasm/helpers.d.ts +31 -0
- package/dist/kernel/occtWasm/hullOps.d.ts +12 -0
- package/dist/kernel/occtWasm/ioOps.d.ts +52 -0
- package/dist/kernel/occtWasm/kernel2dOps.d.ts +90 -0
- package/dist/kernel/occtWasm/measureOps.d.ts +31 -0
- package/dist/kernel/occtWasm/meshOps.d.ts +6 -0
- package/dist/kernel/occtWasm/modifierOps.d.ts +14 -0
- package/dist/kernel/occtWasm/occtWasmAdapter.cjs +1 -1
- package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +30 -31
- package/dist/kernel/occtWasm/occtWasmAdapter.js +1 -1
- package/dist/kernel/occtWasm/occtWasmTypes.d.ts +0 -1
- package/dist/kernel/occtWasm/primitiveOps.d.ts +10 -0
- package/dist/kernel/occtWasm/repairOps.d.ts +10 -0
- package/dist/kernel/occtWasm/surfaceOps.d.ts +28 -0
- package/dist/kernel/occtWasm/sweepOps.d.ts +38 -0
- package/dist/kernel/occtWasm/topologyOps.d.ts +14 -0
- package/dist/kernel/occtWasm/transformOps.d.ts +27 -0
- package/dist/kernel/perfStats.d.ts +0 -1
- package/dist/kernel/solverAdapter.d.ts +0 -1
- package/dist/kernel/types.d.ts +0 -1
- package/dist/{measureFns-C751QGI1.cjs → measureFns-6ifSQfJt.cjs} +6 -5
- package/dist/{measureFns-B8C85hbT.js → measureFns-Io2nHE1k.js} +4 -3
- package/dist/measurement/interferenceFns.d.ts +0 -1
- package/dist/measurement/measureCache.d.ts +0 -1
- package/dist/measurement/measureFns.d.ts +0 -1
- package/dist/measurement/measureTypes.d.ts +0 -1
- package/dist/measurement.cjs +1 -1
- package/dist/measurement.d.ts +0 -1
- package/dist/measurement.js +1 -1
- package/dist/{meshFns-Cdhtbrhm.cjs → meshFns-BCRVZgPi.cjs} +3 -3
- package/dist/{meshFns-BgvsA-xA.js → meshFns-DSdkRFWq.js} +3 -3
- package/dist/ns/booleans.d.ts +0 -1
- package/dist/ns/construction.d.ts +0 -1
- package/dist/ns/ioNs.d.ts +0 -1
- package/dist/ns/measurement.d.ts +0 -1
- package/dist/ns/modifiers.d.ts +0 -1
- package/dist/ns/patterns.d.ts +0 -1
- package/dist/ns/primitives.d.ts +0 -1
- package/dist/ns/query.d.ts +0 -1
- package/dist/ns/transforms.d.ts +0 -1
- package/dist/occtWasmAdapter--TZGP9DX.js +4606 -0
- package/dist/occtWasmAdapter-C2VW-uYg.cjs +4719 -0
- package/dist/operations/api.d.ts +0 -1
- package/dist/operations/assemblyFns.d.ts +0 -1
- package/dist/operations/compoundOpsFns.d.ts +0 -1
- package/dist/operations/convexHullFns.d.ts +0 -1
- package/dist/operations/exporterFns.d.ts +0 -1
- package/dist/operations/exporterUtils.d.ts +0 -1
- package/dist/operations/exporters.d.ts +0 -1
- package/dist/operations/extrudeFns.d.ts +0 -1
- package/dist/operations/extrudeUtils.d.ts +0 -1
- package/dist/operations/guidedSweepFns.d.ts +0 -1
- package/dist/operations/historyFns.d.ts +0 -1
- package/dist/operations/loftFns.d.ts +0 -1
- package/dist/operations/mateFns.d.ts +0 -1
- package/dist/operations/multiSweepFns.d.ts +0 -1
- package/dist/operations/patternFns.d.ts +0 -1
- package/dist/operations/roofFns.d.ts +0 -1
- package/dist/operations/straightSkeleton.d.ts +0 -1
- package/dist/operations/sweepFns.d.ts +0 -1
- package/dist/operations.cjs +2 -2
- package/dist/operations.d.ts +0 -1
- package/dist/operations.js +2 -2
- package/dist/{planeOps-sTrM3dcQ.js → planeOps-4i2qEraD.js} +4 -4
- package/dist/{planeOps-BJOIbn4K.cjs → planeOps-CH4ruLuj.cjs} +4 -4
- package/dist/{primitiveFns-BLxaJ40A.cjs → primitiveFns-BH-JQPzh.cjs} +20 -19
- package/dist/{primitiveFns-fR9sWOEb.js → primitiveFns-C1p92ZcD.js} +8 -7
- package/dist/projection/cameraFns.d.ts +0 -1
- package/dist/projection/makeProjectedEdges.d.ts +0 -1
- package/dist/projection/projectionPlanes.d.ts +0 -1
- package/dist/projection.cjs +9 -0
- package/dist/projection.d.ts +11 -0
- package/dist/projection.js +2 -0
- package/dist/query/cornerFinder.d.ts +0 -1
- package/dist/query/directionUtils.d.ts +0 -1
- package/dist/query/edgeFinder.d.ts +0 -1
- package/dist/query/faceFinder.d.ts +0 -1
- package/dist/query/finderCore.d.ts +0 -1
- package/dist/query/finderFns.d.ts +0 -1
- package/dist/query/helpers.d.ts +0 -1
- package/dist/query/shapeDistanceFilter.d.ts +0 -1
- package/dist/query/shapeFinders.d.ts +0 -1
- package/dist/query/vertexFinder.d.ts +0 -1
- package/dist/query/wireFinder.d.ts +0 -1
- package/dist/query.cjs +2 -2
- package/dist/query.d.ts +0 -1
- package/dist/query.js +2 -2
- package/dist/result.cjs +1 -1
- package/dist/result.d.ts +0 -1
- package/dist/result.js +1 -1
- package/dist/{shapeFns-183zCtMc.cjs → shapeFns-B7x82K11.cjs} +17 -17
- package/dist/{shapeFns-2X3VOi1a.js → shapeFns-BhZ9weSI.js} +4 -4
- package/dist/shapeRef.cjs +1 -1
- package/dist/shapeRef.d.ts +0 -1
- package/dist/shapeRef.js +1 -1
- package/dist/{shapeRefFns-CU1Jwq9C.js → shapeRefFns-B9PsEqWf.js} +6 -4
- package/dist/{shapeRefFns-CFyv5cdW.cjs → shapeRefFns-wDY88A8u.cjs} +8 -6
- package/dist/{shapeTypes-C0MDggKf.cjs → shapeTypes-BTt_LLbk.cjs} +6922 -7884
- package/dist/{shapeTypes-CN0GUoHr.js → shapeTypes-C--1jaT1.js} +6900 -7862
- package/dist/sketching/cannedSketches.d.ts +0 -1
- package/dist/sketching/compoundSketch.d.ts +8 -7
- package/dist/sketching/draw3d.d.ts +1 -2
- package/dist/sketching/drawFns.d.ts +4 -3
- package/dist/sketching/{draw.d.ts → drawing.d.ts} +2 -127
- package/dist/sketching/drawingFactories.d.ts +94 -0
- package/dist/sketching/drawingPen.d.ts +34 -0
- package/dist/sketching/faceSketcher.d.ts +52 -0
- package/dist/sketching/shortcuts.d.ts +0 -1
- package/dist/sketching/sketch.d.ts +64 -10
- package/dist/sketching/sketchFns.d.ts +42 -95
- package/dist/sketching/sketcher.d.ts +2 -3
- package/dist/sketching/sketches.d.ts +5 -6
- package/dist/sketching.cjs +19 -18
- package/dist/sketching.d.ts +8 -5
- package/dist/sketching.js +3 -2
- package/dist/{solidBuilders-DACzFqvX.cjs → solidBuilders-CX_197Xm.cjs} +3 -3
- package/dist/{solidBuilders-BuS5ByIl.js → solidBuilders-Xs7VDMGD.js} +3 -3
- package/dist/{surfaceBuilders-CbH4FIW5.cjs → surfaceBuilders-CYeTNW33.cjs} +25 -3
- package/dist/{surfaceBuilders-BVH2SL-z.js → surfaceBuilders-CinmHCbZ.js} +20 -4
- package/dist/text/fontRegistry.d.ts +22 -0
- package/dist/text/sketchText.d.ts +30 -0
- package/dist/text/textBlueprints.d.ts +0 -91
- package/dist/text/textMetrics.d.ts +39 -0
- package/dist/text.cjs +9 -0
- package/dist/text.d.ts +12 -0
- package/dist/text.js +3 -0
- package/dist/textBlueprints-Do6xNsLt.js +643 -0
- package/dist/textBlueprints-oWhiABaY.cjs +800 -0
- package/dist/textMetrics-BjJ8sn_e.js +69 -0
- package/dist/textMetrics-CUvtglQE.cjs +86 -0
- package/dist/topology/adjacencyFns.d.ts +0 -1
- package/dist/topology/api.d.ts +0 -1
- package/dist/topology/apiTypes.d.ts +0 -1
- package/dist/topology/booleanDiagnosticFns.d.ts +0 -1
- package/dist/topology/booleanFns.d.ts +0 -1
- package/dist/topology/cast.d.ts +0 -1
- package/dist/topology/chamferAngleFns.d.ts +0 -1
- package/dist/topology/compoundOpsFns.d.ts +0 -1
- package/dist/topology/curveBuilders.d.ts +12 -1
- package/dist/topology/curveFns.d.ts +0 -1
- package/dist/topology/evolutionFns.d.ts +0 -1
- package/dist/topology/faceFns.d.ts +0 -1
- package/dist/topology/healingFns.d.ts +0 -1
- package/dist/topology/hullFns.d.ts +0 -1
- package/dist/topology/index.d.ts +0 -1
- package/dist/topology/meshCache.d.ts +0 -1
- package/dist/topology/meshFns.d.ts +0 -1
- package/dist/topology/metadata/colorFns.d.ts +0 -1
- package/dist/topology/metadata/faceTagFns.d.ts +0 -1
- package/dist/topology/metadata/metadataPropagation.d.ts +0 -1
- package/dist/topology/metadata/originTrackingFns.d.ts +0 -1
- package/dist/topology/minkowskiFns.d.ts +0 -1
- package/dist/topology/modifierFns.d.ts +0 -1
- package/dist/topology/nurbsFns.d.ts +0 -1
- package/dist/topology/polyhedronFns.d.ts +0 -1
- package/dist/topology/positionFns.d.ts +0 -1
- package/dist/topology/primitiveFns.d.ts +0 -1
- package/dist/topology/shapeBooleans.d.ts +0 -1
- package/dist/topology/shapeFns.d.ts +0 -1
- package/dist/topology/shapeHelpers.d.ts +0 -1
- package/dist/topology/shapeModifiers.d.ts +0 -1
- package/dist/topology/shapeRef/index.d.ts +0 -1
- package/dist/topology/shapeRef/scoring.d.ts +0 -1
- package/dist/topology/shapeRef/shapeRefFns.d.ts +0 -1
- package/dist/topology/shapeRef/shapeRefTypes.d.ts +0 -1
- package/dist/topology/shapeUtils.d.ts +0 -1
- package/dist/topology/solidBuilders.d.ts +0 -1
- package/dist/topology/surfaceBuilders.d.ts +0 -1
- package/dist/topology/surfaceFns.d.ts +0 -1
- package/dist/topology/threeHelpers.d.ts +0 -1
- package/dist/topology/topologyQueryFns.d.ts +0 -1
- package/dist/topology/transformFns.d.ts +0 -1
- package/dist/topology/wrapperFns.d.ts +0 -1
- package/dist/topology.cjs +18 -17
- package/dist/topology.d.ts +0 -1
- package/dist/topology.js +7 -6
- package/dist/{faceFns-22idS-ht.cjs → topologyQueryFns-BU0qdNJP.cjs} +2 -342
- package/dist/{faceFns-NbWd8-iR.js → topologyQueryFns-Dhf85ZBK.js} +3 -217
- package/dist/utils/arrayAccess.d.ts +0 -1
- package/dist/utils/bug.d.ts +0 -1
- package/dist/utils/ioFilename.d.ts +0 -1
- package/dist/utils/precisionRound.d.ts +0 -1
- package/dist/utils/range.d.ts +0 -1
- package/dist/utils/uuid.d.ts +0 -1
- package/dist/utils/vec2d.d.ts +0 -1
- package/dist/utils/vec3.d.ts +8 -1
- package/dist/utils/zip.d.ts +0 -1
- package/dist/vec3-BRj3eI54.js +25 -0
- package/dist/vec3-S4Oh59IX.cjs +36 -0
- package/dist/vectors.cjs +4 -4
- package/dist/vectors.d.ts +0 -1
- package/dist/vectors.js +4 -4
- package/dist/worker/index.d.ts +0 -1
- package/dist/worker/protocol.d.ts +0 -1
- package/dist/worker/taskQueue.d.ts +0 -1
- package/dist/worker/workerClient.d.ts +0 -1
- package/dist/worker/workerHandler.d.ts +0 -1
- package/dist/worker.cjs +1 -1
- package/dist/worker.d.ts +0 -1
- package/dist/worker.js +1 -1
- package/package.json +35 -14
- package/dist/2d/blueprints/blueprint.d.ts.map +0 -1
- package/dist/2d/blueprints/blueprintApproximations.d.ts.map +0 -1
- package/dist/2d/blueprints/blueprintCustomCorners.d.ts.map +0 -1
- package/dist/2d/blueprints/blueprintFns.d.ts.map +0 -1
- package/dist/2d/blueprints/blueprintOffset.d.ts.map +0 -1
- package/dist/2d/blueprints/blueprints.d.ts.map +0 -1
- package/dist/2d/blueprints/boolean2D.d.ts.map +0 -1
- package/dist/2d/blueprints/booleanHelpers.d.ts.map +0 -1
- package/dist/2d/blueprints/booleanOperations.d.ts.map +0 -1
- package/dist/2d/blueprints/cannedBlueprints.d.ts.map +0 -1
- package/dist/2d/blueprints/compoundBlueprint.d.ts.map +0 -1
- package/dist/2d/blueprints/index.d.ts.map +0 -1
- package/dist/2d/blueprints/intersectionSegments.d.ts.map +0 -1
- package/dist/2d/blueprints/lib.d.ts.map +0 -1
- package/dist/2d/blueprints/segmentAssembly.d.ts.map +0 -1
- package/dist/2d/blueprints/svg.d.ts.map +0 -1
- package/dist/2d/curve2dGeometryFns.d.ts.map +0 -1
- package/dist/2d/curves.d.ts.map +0 -1
- package/dist/2d/lib/approximations.d.ts.map +0 -1
- package/dist/2d/lib/boundingBox2d.d.ts.map +0 -1
- package/dist/2d/lib/curve2D.d.ts.map +0 -1
- package/dist/2d/lib/curve2dFns.d.ts.map +0 -1
- package/dist/2d/lib/customCorners.d.ts.map +0 -1
- package/dist/2d/lib/definitions.d.ts.map +0 -1
- package/dist/2d/lib/index.d.ts.map +0 -1
- package/dist/2d/lib/intersections.d.ts.map +0 -1
- package/dist/2d/lib/makeCurves.d.ts.map +0 -1
- package/dist/2d/lib/offset.d.ts.map +0 -1
- package/dist/2d/lib/precision.d.ts.map +0 -1
- package/dist/2d/lib/stitching.d.ts.map +0 -1
- package/dist/2d/lib/svgPath.d.ts.map +0 -1
- package/dist/2d/lib/utils.d.ts.map +0 -1
- package/dist/2d/lib/vectorOperations.d.ts.map +0 -1
- package/dist/2d.d.ts.map +0 -1
- package/dist/core/constants.d.ts.map +0 -1
- package/dist/core/curve2dHandle.d.ts.map +0 -1
- package/dist/core/dimensionTypes.d.ts.map +0 -1
- package/dist/core/disposal.d.ts.map +0 -1
- package/dist/core/errors.d.ts.map +0 -1
- package/dist/core/kernelBoundary.d.ts.map +0 -1
- package/dist/core/kernelCall.d.ts.map +0 -1
- package/dist/core/kernelErrorTranslation.d.ts.map +0 -1
- package/dist/core/planeOps.d.ts.map +0 -1
- package/dist/core/planeTypes.d.ts.map +0 -1
- package/dist/core/result.d.ts.map +0 -1
- package/dist/core/shapeTypeCache.d.ts.map +0 -1
- package/dist/core/shapeTypes.d.ts.map +0 -1
- package/dist/core/typeDiscriminants.d.ts.map +0 -1
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/validityTypes.d.ts.map +0 -1
- package/dist/core/vecOps.d.ts.map +0 -1
- package/dist/core.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/io/dxfExportFns.d.ts.map +0 -1
- package/dist/io/dxfImportFns.d.ts.map +0 -1
- package/dist/io/gltfExportFns.d.ts.map +0 -1
- package/dist/io/gltfImportFns.d.ts.map +0 -1
- package/dist/io/importFns.d.ts.map +0 -1
- package/dist/io/ioUtils.d.ts.map +0 -1
- package/dist/io/objExportFns.d.ts.map +0 -1
- package/dist/io/objImportFns.d.ts.map +0 -1
- package/dist/io/stepConfigFns.d.ts.map +0 -1
- package/dist/io/svgImportFns.d.ts.map +0 -1
- package/dist/io/threemfExportFns.d.ts.map +0 -1
- package/dist/io/threemfImportFns.d.ts.map +0 -1
- package/dist/io.d.ts.map +0 -1
- package/dist/kernel/brepkit/booleanOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/brepkitAdapter.d.ts.map +0 -1
- package/dist/kernel/brepkit/brepkitWasmTypes.d.ts.map +0 -1
- package/dist/kernel/brepkit/constructionOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/evolutionOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/geometryOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/helpers.d.ts.map +0 -1
- package/dist/kernel/brepkit/internalOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/ioOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/kernel2dOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/measureOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/meshOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/modifierOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/repairOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/sketchOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/sweepOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/topologyOps.d.ts.map +0 -1
- package/dist/kernel/brepkit/transformOps.d.ts.map +0 -1
- package/dist/kernel/geometry2d.d.ts.map +0 -1
- package/dist/kernel/index.d.ts.map +0 -1
- package/dist/kernel/interfaces/booleanOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/builderOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/core.d.ts.map +0 -1
- package/dist/kernel/interfaces/curveOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/evolutionOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/index.d.ts.map +0 -1
- package/dist/kernel/interfaces/ioOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/measureOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/meshOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/modifierOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/primitiveOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/repairOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/surfaceOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/sweepOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/topologyOps.d.ts.map +0 -1
- package/dist/kernel/interfaces/transformOps.d.ts.map +0 -1
- package/dist/kernel/kernel2dTypes.d.ts.map +0 -1
- package/dist/kernel/occt/advancedOps.d.ts.map +0 -1
- package/dist/kernel/occt/booleanBatchOps.d.ts.map +0 -1
- package/dist/kernel/occt/booleanOps.d.ts.map +0 -1
- package/dist/kernel/occt/booleanPipelineOps.d.ts.map +0 -1
- package/dist/kernel/occt/constructorOps.d.ts.map +0 -1
- package/dist/kernel/occt/curveOps.d.ts.map +0 -1
- package/dist/kernel/occt/defaultAdapter.d.ts.map +0 -1
- package/dist/kernel/occt/evolutionOps.d.ts.map +0 -1
- package/dist/kernel/occt/extendedConstructorOps.d.ts.map +0 -1
- package/dist/kernel/occt/geometryQueryOps.d.ts.map +0 -1
- package/dist/kernel/occt/healingOps.d.ts.map +0 -1
- package/dist/kernel/occt/historyOps.d.ts.map +0 -1
- package/dist/kernel/occt/hullOps.d.ts.map +0 -1
- package/dist/kernel/occt/ioOps.d.ts.map +0 -1
- package/dist/kernel/occt/kernel2dOps.d.ts.map +0 -1
- package/dist/kernel/occt/measureOps.d.ts.map +0 -1
- package/dist/kernel/occt/meshOps.d.ts.map +0 -1
- package/dist/kernel/occt/modifierOps.d.ts.map +0 -1
- package/dist/kernel/occt/nurbsQueryOps.d.ts.map +0 -1
- package/dist/kernel/occt/sweepOps.d.ts.map +0 -1
- package/dist/kernel/occt/topologyOps.d.ts.map +0 -1
- package/dist/kernel/occt/transformOps.d.ts.map +0 -1
- package/dist/kernel/occt/wasmTypes/externals.d.ts.map +0 -1
- package/dist/kernel/occt/wasmTypes/index.d.ts.map +0 -1
- package/dist/kernel/occt/wasmTypes/occtBuilders.d.ts.map +0 -1
- package/dist/kernel/occtWasm/occtWasmAdapter.d.ts.map +0 -1
- package/dist/kernel/occtWasm/occtWasmTypes.d.ts.map +0 -1
- package/dist/kernel/perfStats.d.ts.map +0 -1
- package/dist/kernel/solverAdapter.d.ts.map +0 -1
- package/dist/kernel/types.d.ts.map +0 -1
- package/dist/measurement/interferenceFns.d.ts.map +0 -1
- package/dist/measurement/measureCache.d.ts.map +0 -1
- package/dist/measurement/measureFns.d.ts.map +0 -1
- package/dist/measurement/measureTypes.d.ts.map +0 -1
- package/dist/measurement.d.ts.map +0 -1
- package/dist/ns/booleans.d.ts.map +0 -1
- package/dist/ns/construction.d.ts.map +0 -1
- package/dist/ns/ioNs.d.ts.map +0 -1
- package/dist/ns/measurement.d.ts.map +0 -1
- package/dist/ns/modifiers.d.ts.map +0 -1
- package/dist/ns/patterns.d.ts.map +0 -1
- package/dist/ns/primitives.d.ts.map +0 -1
- package/dist/ns/query.d.ts.map +0 -1
- package/dist/ns/transforms.d.ts.map +0 -1
- package/dist/occtWasmAdapter-CuZRRioz.cjs +0 -3947
- package/dist/occtWasmAdapter-DIhUXubY.js +0 -3834
- package/dist/operations/api.d.ts.map +0 -1
- package/dist/operations/assemblyFns.d.ts.map +0 -1
- package/dist/operations/compoundOpsFns.d.ts.map +0 -1
- package/dist/operations/convexHullFns.d.ts.map +0 -1
- package/dist/operations/exporterFns.d.ts.map +0 -1
- package/dist/operations/exporterUtils.d.ts.map +0 -1
- package/dist/operations/exporters.d.ts.map +0 -1
- package/dist/operations/extrudeFns.d.ts.map +0 -1
- package/dist/operations/extrudeUtils.d.ts.map +0 -1
- package/dist/operations/guidedSweepFns.d.ts.map +0 -1
- package/dist/operations/historyFns.d.ts.map +0 -1
- package/dist/operations/loftFns.d.ts.map +0 -1
- package/dist/operations/mateFns.d.ts.map +0 -1
- package/dist/operations/multiSweepFns.d.ts.map +0 -1
- package/dist/operations/patternFns.d.ts.map +0 -1
- package/dist/operations/roofFns.d.ts.map +0 -1
- package/dist/operations/straightSkeleton.d.ts.map +0 -1
- package/dist/operations/sweepFns.d.ts.map +0 -1
- package/dist/operations.d.ts.map +0 -1
- package/dist/projection/cameraFns.d.ts.map +0 -1
- package/dist/projection/makeProjectedEdges.d.ts.map +0 -1
- package/dist/projection/projectionPlanes.d.ts.map +0 -1
- package/dist/query/cornerFinder.d.ts.map +0 -1
- package/dist/query/directionUtils.d.ts.map +0 -1
- package/dist/query/edgeFinder.d.ts.map +0 -1
- package/dist/query/faceFinder.d.ts.map +0 -1
- package/dist/query/finderCore.d.ts.map +0 -1
- package/dist/query/finderFns.d.ts.map +0 -1
- package/dist/query/helpers.d.ts.map +0 -1
- package/dist/query/shapeDistanceFilter.d.ts.map +0 -1
- package/dist/query/shapeFinders.d.ts.map +0 -1
- package/dist/query/vertexFinder.d.ts.map +0 -1
- package/dist/query/wireFinder.d.ts.map +0 -1
- package/dist/query.d.ts.map +0 -1
- package/dist/quick.d.ts.map +0 -1
- package/dist/result.d.ts.map +0 -1
- package/dist/shapeRef.d.ts.map +0 -1
- package/dist/sketching/cannedSketches.d.ts.map +0 -1
- package/dist/sketching/compoundSketch.d.ts.map +0 -1
- package/dist/sketching/draw.d.ts.map +0 -1
- package/dist/sketching/draw3d.d.ts.map +0 -1
- package/dist/sketching/drawFns.d.ts.map +0 -1
- package/dist/sketching/ellipseUtils.d.ts.map +0 -1
- package/dist/sketching/shortcuts.d.ts.map +0 -1
- package/dist/sketching/sketch.d.ts.map +0 -1
- package/dist/sketching/sketchFns.d.ts.map +0 -1
- package/dist/sketching/sketchLib.d.ts +0 -47
- package/dist/sketching/sketchLib.d.ts.map +0 -1
- package/dist/sketching/sketchUtils.d.ts +0 -8
- package/dist/sketching/sketchUtils.d.ts.map +0 -1
- package/dist/sketching/sketcher.d.ts.map +0 -1
- package/dist/sketching/sketcher2d.d.ts.map +0 -1
- package/dist/sketching/sketcherlib.d.ts.map +0 -1
- package/dist/sketching/sketches.d.ts.map +0 -1
- package/dist/sketching.d.ts.map +0 -1
- package/dist/text/textBlueprints.d.ts.map +0 -1
- package/dist/topology/adjacencyFns.d.ts.map +0 -1
- package/dist/topology/api.d.ts.map +0 -1
- package/dist/topology/apiTypes.d.ts.map +0 -1
- package/dist/topology/booleanDiagnosticFns.d.ts.map +0 -1
- package/dist/topology/booleanFns.d.ts.map +0 -1
- package/dist/topology/cast.d.ts.map +0 -1
- package/dist/topology/chamferAngleFns.d.ts.map +0 -1
- package/dist/topology/compoundOpsFns.d.ts.map +0 -1
- package/dist/topology/curveBuilders.d.ts.map +0 -1
- package/dist/topology/curveFns.d.ts.map +0 -1
- package/dist/topology/evolutionFns.d.ts.map +0 -1
- package/dist/topology/faceFns.d.ts.map +0 -1
- package/dist/topology/healingFns.d.ts.map +0 -1
- package/dist/topology/hullFns.d.ts.map +0 -1
- package/dist/topology/index.d.ts.map +0 -1
- package/dist/topology/meshCache.d.ts.map +0 -1
- package/dist/topology/meshFns.d.ts.map +0 -1
- package/dist/topology/metadata/colorFns.d.ts.map +0 -1
- package/dist/topology/metadata/faceTagFns.d.ts.map +0 -1
- package/dist/topology/metadata/metadataPropagation.d.ts.map +0 -1
- package/dist/topology/metadata/originTrackingFns.d.ts.map +0 -1
- package/dist/topology/minkowskiFns.d.ts.map +0 -1
- package/dist/topology/modifierFns.d.ts.map +0 -1
- package/dist/topology/nurbsFns.d.ts.map +0 -1
- package/dist/topology/polyhedronFns.d.ts.map +0 -1
- package/dist/topology/positionFns.d.ts.map +0 -1
- package/dist/topology/primitiveFns.d.ts.map +0 -1
- package/dist/topology/shapeBooleans.d.ts.map +0 -1
- package/dist/topology/shapeFns.d.ts.map +0 -1
- package/dist/topology/shapeHelpers.d.ts.map +0 -1
- package/dist/topology/shapeModifiers.d.ts.map +0 -1
- package/dist/topology/shapeRef/index.d.ts.map +0 -1
- package/dist/topology/shapeRef/scoring.d.ts.map +0 -1
- package/dist/topology/shapeRef/shapeRefFns.d.ts.map +0 -1
- package/dist/topology/shapeRef/shapeRefTypes.d.ts.map +0 -1
- package/dist/topology/shapeUtils.d.ts.map +0 -1
- package/dist/topology/solidBuilders.d.ts.map +0 -1
- package/dist/topology/surfaceBuilders.d.ts.map +0 -1
- package/dist/topology/surfaceFns.d.ts.map +0 -1
- package/dist/topology/threeHelpers.d.ts.map +0 -1
- package/dist/topology/topologyQueryFns.d.ts.map +0 -1
- package/dist/topology/transformFns.d.ts.map +0 -1
- package/dist/topology/wrapperFns.d.ts.map +0 -1
- package/dist/topology.d.ts.map +0 -1
- package/dist/utils/arrayAccess.d.ts.map +0 -1
- package/dist/utils/bug.d.ts.map +0 -1
- package/dist/utils/ioFilename.d.ts.map +0 -1
- package/dist/utils/precisionRound.d.ts.map +0 -1
- package/dist/utils/range.d.ts.map +0 -1
- package/dist/utils/uuid.d.ts.map +0 -1
- package/dist/utils/vec2d.d.ts.map +0 -1
- package/dist/utils/vec3.d.ts.map +0 -1
- package/dist/utils/zip.d.ts.map +0 -1
- package/dist/vectors.d.ts.map +0 -1
- package/dist/worker/index.d.ts.map +0 -1
- package/dist/worker/protocol.d.ts.map +0 -1
- package/dist/worker/taskQueue.d.ts.map +0 -1
- package/dist/worker/workerClient.d.ts.map +0 -1
- package/dist/worker/workerHandler.d.ts.map +0 -1
- package/dist/worker.d.ts.map +0 -1
- /package/dist/{arrayAccess-DsnQpdSD.cjs → arrayAccess-7pTWqkJu.cjs} +0 -0
- /package/dist/{arrayAccess-tCIbjLs5.js → arrayAccess-C5IWcxs9.js} +0 -0
- /package/dist/{constants-csSEYddm.js → constants-Ci5CA3aZ.js} +0 -0
- /package/dist/{constants-BNP_xnBN.cjs → constants-DTorLmes.cjs} +0 -0
- /package/dist/{types--GD-LVc6.js → types-BIdk_GJY.js} +0 -0
- /package/dist/{types-gLi9wL0N.cjs → types-CDkxah-M.cjs} +0 -0
- /package/dist/{vecOps-CODplJp3.cjs → vecOps-D7xplSx8.cjs} +0 -0
- /package/dist/{vecOps-B-PCHgyB.js → vecOps-DVROrqTV.js} +0 -0
- /package/dist/{workerHandler-C-3cFcsQ.cjs → workerHandler-C7seK7H-.cjs} +0 -0
- /package/dist/{workerHandler-Dm0_0F8Z.js → workerHandler-DaulgMax.js} +0 -0
package/dist/brepjs.js
CHANGED
|
@@ -1,30 +1,36 @@
|
|
|
1
|
-
import { $ as initFromOC, A as planarWire, B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as as3D, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, P as as2D, Q as init, R as DisposalScope, S as isManifoldShell, T as isPlanarWire, V as getDisposalStats, W as resetDisposalStats, X as getKernel, _ as isSolid, a as createEdge, at as BrepkitAdapter, b as closedWire, c as createSolid, d as isCompound, et as prewarm, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as supportsProjection, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as withKernel, o as createFace, ot as getPerformanceStats, p as isFace, q as withScopeResult, rt as supportsConstraintSketch, s as createShell, st as resetPerformanceStats, t as castShape, tt as registerKernel, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { A as
|
|
5
|
-
import { n as
|
|
6
|
-
import { n as
|
|
7
|
-
import {
|
|
8
|
-
import { i as
|
|
9
|
-
import {
|
|
10
|
-
import { a as
|
|
11
|
-
import { a as
|
|
12
|
-
import { n as
|
|
13
|
-
import { n as
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { a as
|
|
18
|
-
import { a as
|
|
19
|
-
import {
|
|
20
|
-
import { r as
|
|
21
|
-
import { a as
|
|
22
|
-
import {
|
|
23
|
-
import { a as
|
|
24
|
-
import {
|
|
25
|
-
import { a as
|
|
26
|
-
import { a as
|
|
27
|
-
import { a as
|
|
1
|
+
import { $ as initFromOC, A as planarWire, B as createKernelHandle, C as isOrientedFace, D as manifoldShell, E as isValidSolid, F as as3D, H as isLive, I as is2D, J as withScopeResultAsync, K as withScope, L as is3D, M as getShapeKind, O as orientedFace, P as as2D, Q as init, R as DisposalScope, S as isManifoldShell, T as isPlanarWire, V as getDisposalStats, W as resetDisposalStats, X as getKernel, Y as _usingCtx, _ as isSolid, a as createEdge, at as BrepkitAdapter, b as closedWire, c as createSolid, d as isCompound, et as prewarm, f as isEdge, g as isShell, h as isShape3D, i as createCompound, it as supportsProjection, j as validSolid, k as planarFace, l as createVertex, m as isShape1D, n as castShape3D, nt as withKernel, o as createFace, ot as getPerformanceStats, p as isFace, q as withScopeResult, rt as supportsConstraintSketch, s as createShell, st as resetPerformanceStats, t as castShape, tt as registerKernel, u as createWire, v as isVertex, w as isPlanarFace, x as isClosedWire, y as isWire, z as createHandle } from "./shapeTypes-C--1jaT1.js";
|
|
2
|
+
import { n as wasmIndex } from "./vec3-BRj3eI54.js";
|
|
3
|
+
import { t as OcctWasmAdapter } from "./occtWasmAdapter--TZGP9DX.js";
|
|
4
|
+
import { A as ok, B as unwrapOr, C as fromNullable, D as mapBoth, E as map, F as tapErr, H as zip, I as tryCatch, L as tryCatchAsync, M as orElse, N as pipeline, O as mapErr, P as tap, R as unwrap, S as flatten, T as isOk, V as unwrapOrElse, _ as all, a as moduleInitError, b as err, c as sketcherStateError, d as validationError, g as OK, h as bug, i as kernelError, j as or, k as match, l as typeCastError, m as BrepBugError, n as computationError, o as queryError, r as ioError, t as BrepErrorCode, u as unsupportedError, v as andThen, w as isErr, x as flatMap, y as collect, z as unwrapErr } from "./errors-0fYW_YnO.js";
|
|
5
|
+
import { _ as kernelCall, a as getCachedSurfaceType, d as invalidateShapeCache, f as iterEdges, g as vertexPosition, h as iterWires, l as getVertices, m as iterVertices, n as getBounds, o as getEdges, p as iterFaces, s as getFaces, t as describe$1, u as getWires, v as kernelCallRaw, y as kernelCallScoped } from "./topologyQueryFns-Dhf85ZBK.js";
|
|
6
|
+
import { n as HASH_CODE_MAX, r as RAD2DEG, t as DEG2RAD } from "./constants-Ci5CA3aZ.js";
|
|
7
|
+
import { n as toVec2, r as toVec3, t as resolveDirection } from "./types-BIdk_GJY.js";
|
|
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-DVROrqTV.js";
|
|
9
|
+
import { i as pivotPlane, n as createPlane, o as resolvePlane, r as makePlane, s as translatePlane, t as createNamedPlane } from "./planeOps-4i2qEraD.js";
|
|
10
|
+
import { _ as downcast, a as flipFaceOrientation, b as iterTopo, c as normalAt, d as projectPointOnFace, f as removeHolesFromFace, g as cast, h as asTopo, i as faceOrientation, l as outerWire, m as uvCoordinates, n as faceCenter, o as getSurfaceType, p as uvBounds, r as faceGeomType, s as innerWires, t as classifyPointOnFace, u as pointOnSurface, v as fromBREP, x as shapeType, y as isCompSolid } from "./faceFns-BFWz17_E.js";
|
|
11
|
+
import { C as findFacesByTag, D as tagFaces, E as setTagMetadata, O as getFaceOrigins, S as getShapeColor, T as getTagMetadata, a as isSameShape, b as colorShape, c as applyMatrix$1, d as resize, f as rotate$1, h as translate$1, i as isEqualShape, k as setShapeOrigin, l as composeTransforms, m as transformCopy$1, n as getHashCode, o as simplify$1, p as scale$1, r as isEmpty$2, s as toBREP$1, t as clone$1, u as mirror$1, w as getFaceTags, x as getFaceColor, y as colorFaces } from "./shapeFns-BhZ9weSI.js";
|
|
12
|
+
import { a as curveLength, c as curveStartPoint, d as getCurveType, f as getOrientation, i as curveIsPeriodic, l as curveTangentAt, m as offsetWire2D, n as curveEndPoint, o as curvePeriod, p as interpolateCurve, r as curveIsClosed, s as curvePointAt, t as approximateCurve, u as flipOrientation } from "./curveFns-B4tWuinR.js";
|
|
13
|
+
import { a as meshEdges$1, c as createMeshCache, i as mesh$1, n as exportSTEP, o as meshMultiLOD, r as exportSTL, s as clearMeshCache, t as exportIGES } from "./meshFns-DSdkRFWq.js";
|
|
14
|
+
import { n as getAtOrThrow, r as lastOrThrow, t as firstOrThrow } from "./arrayAccess-C5IWcxs9.js";
|
|
15
|
+
import { _ as makeThreePointArc, d as makeCircle, h as makeLine, l as makeBSplineInterpolation, n as fill, r as makeFace, s as assembleWire } from "./surfaceBuilders-CinmHCbZ.js";
|
|
16
|
+
import { a as fuseAll, c as sectionToFace$1, i as fuse$1, l as slice$1, n as cut$1, o as intersect$1, r as cutAll, s as section$1, t as booleanPipeline, u as split$1 } from "./booleanFns-CRa80qMX.js";
|
|
17
|
+
import { $ as getNurbsSurfaceData, A as fixShape, B as offset$1, C as threePointArc, D as wireLoop, E as wire, F as isValid$1, G as chamferWithEvolution, H as thicken$1, I as solidFromShell, J as fuseWithEvolution, K as cutWithEvolution, L as chamfer$1, M as healFace, N as healSolid, O as autoHeal, P as healWire, Q as getNurbsCurveData, R as draft$1, S as tangentArc, T as vertex, U as variableFillet, V as shell$1, W as positionOnCurve, X as shellWithEvolution, Y as intersectWithEvolution, Z as checkBoolean, _ as polygon, a as circle, at as wiresOfFace, b as sphere, c as cylinder, ct as toGroupedBufferGeometryData, d as ellipsoid, et as adjacentFaces, f as face, g as offsetFace, h as line, i as bsplineApprox, it as verticesOfEdge, j as heal$1, k as fixSelfIntersection, l as ellipse, lt as toLODGeometryData, m as helix, n as bezier, nt as facesOfEdge, o as compound, ot as chamferDistAngle, p as filledFace, q as filletWithEvolution, r as box, rt as sharedEdges, s as cone, st as toBufferGeometryData, t as addHoles, tt as edgesOfFace, u as ellipseArc, ut as toLineGeometryData, v as sewShells, w as torus, x as subFace, y as solid, z as fillet$1 } from "./primitiveFns-C1p92ZcD.js";
|
|
18
|
+
import { C as walkAssembly, D as exportAssemblySTEP, E as linearPattern, O as createAssembly, S as updateNode, _ as collectShapes, a as findStep, b as findNode, c as registerOperation, d as replayHistory, f as serializeHistory, g as addChild, h as undoLast, i as deserializeHistory, l as registerShape, m as stepsFrom, n as createHistory, o as getShape, p as stepCount, r as createRegistry, s as modifyStep, t as addStep, u as replayFrom, v as countNodes, w as circularPattern, x as removeChild, y as createAssemblyNode } from "./historyFns-DGb61ETW.js";
|
|
19
|
+
import { n as BaseSketcher2d, r as organiseBlueprints, t as BlueprintSketcher } from "./blueprintSketcher-xDsl9GXO.js";
|
|
20
|
+
import { a as createTypedFinder, i as wireFinder, n as edgeFinder, r as faceFinder, t as getSingleFace } from "./helpers-vV2ONZwD.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-BsarLfUN.js";
|
|
22
|
+
import { r as makeCylinder } from "./solidBuilders-Xs7VDMGD.js";
|
|
23
|
+
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-Io2nHE1k.js";
|
|
24
|
+
import { t as cornerFinder } from "./cornerFinder-Dix2ghke.js";
|
|
25
|
+
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-Z7P0c012.js";
|
|
26
|
+
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-a9C2g8_E.js";
|
|
27
|
+
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-Ci-L2iB3.js";
|
|
28
|
+
import { a as guidedSweep, c as sweep, i as complexExtrude, l as twistExtrude, n as extrudeAll, o as multiSectionSweep, r as revolve$1, s as supportExtrude, t as extrude$1 } from "./extrudeFns-7pE8dIWz.js";
|
|
29
|
+
import { a as Sketch, b as loftAll, 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, y as loft$1 } from "./textBlueprints-Do6xNsLt.js";
|
|
30
|
+
import { a as makeProjectedEdges, i as projectEdges, n as cameraLookAt, r as createCamera, s as isProjectionPlane, t as cameraFromPlane } from "./cameraFns-CUzI5RKS.js";
|
|
31
|
+
import { n as textMetrics, r as sketchText, t as fontMetrics } from "./textMetrics-BjJ8sn_e.js";
|
|
32
|
+
import { a as updateRoles, i as resolveRef, n as captureHint, o as defaultScorer, r as createRef, t as assignRoles } from "./shapeRefFns-B9PsEqWf.js";
|
|
33
|
+
import { a as createTaskQueue, c as isEmpty$1, d as isDisposeRequest, f as isErrorResponse, h as isSuccessResponse, i as createWorkerClient, l as pendingCount, m as isOperationRequest, n as createWorkerHandler, o as dequeueTask, p as isInitRequest, r as registerHandler, s as enqueueTask, t as createOperationRegistry, u as rejectAll } from "./workerHandler-DaulgMax.js";
|
|
28
34
|
//#region \0rolldown/runtime.js
|
|
29
35
|
var __defProp = Object.defineProperty;
|
|
30
36
|
var __exportAll = (all, no_symbols) => {
|
|
@@ -424,7 +430,7 @@ function convexHull(points) {
|
|
|
424
430
|
function detectSphere(shape) {
|
|
425
431
|
const faces = getFaces(shape);
|
|
426
432
|
if (faces.length !== 1) return null;
|
|
427
|
-
const face = faces
|
|
433
|
+
const face = wasmIndex(faces, 0);
|
|
428
434
|
if (getCachedSurfaceType(face) !== "sphere") return null;
|
|
429
435
|
const faceArea = getKernel().area(face.wrapped);
|
|
430
436
|
return Math.sqrt(faceArea / (4 * Math.PI));
|
|
@@ -1424,8 +1430,8 @@ function checkAllInterferences(shapes, tolerance = 1e-6) {
|
|
|
1424
1430
|
const boxes = shapes.map((s) => getBounds(s));
|
|
1425
1431
|
shapes.forEach((si, i) => {
|
|
1426
1432
|
for (let j = i + 1; j < shapes.length; j++) {
|
|
1427
|
-
if (aabbDisjoint(boxes
|
|
1428
|
-
const result = unwrap(checkInterference(si, shapes
|
|
1433
|
+
if (aabbDisjoint(wasmIndex(boxes, i), wasmIndex(boxes, j), tolerance)) continue;
|
|
1434
|
+
const result = unwrap(checkInterference(si, wasmIndex(shapes, j), tolerance));
|
|
1429
1435
|
if (result.hasInterference) pairs.push({
|
|
1430
1436
|
i,
|
|
1431
1437
|
j,
|
|
@@ -2250,7 +2256,7 @@ function resolveTargetFace(shape, faceSpec) {
|
|
|
2250
2256
|
if (typeof faceSpec === "function") {
|
|
2251
2257
|
const found = faceSpec(faceFinder()).findAll(shape);
|
|
2252
2258
|
if (found.length === 0) return err(queryError(BrepErrorCode.COMPOUND_FACE_NOT_FOUND, "compoundOps: face finder matched no faces"));
|
|
2253
|
-
return ok(found
|
|
2259
|
+
return ok(wasmIndex(found, 0));
|
|
2254
2260
|
}
|
|
2255
2261
|
return ok(faceSpec);
|
|
2256
2262
|
}
|
|
@@ -2460,6 +2466,15 @@ function unwrapOrThrow(result) {
|
|
|
2460
2466
|
if (isErr(result)) throw new BrepWrapperError(result.error);
|
|
2461
2467
|
return result.value;
|
|
2462
2468
|
}
|
|
2469
|
+
function asValidSolid(s) {
|
|
2470
|
+
return s;
|
|
2471
|
+
}
|
|
2472
|
+
function asOrientedPlanarFace(f) {
|
|
2473
|
+
return f;
|
|
2474
|
+
}
|
|
2475
|
+
function asClosedWire(w) {
|
|
2476
|
+
return w;
|
|
2477
|
+
}
|
|
2463
2478
|
function createWrappedBase(val) {
|
|
2464
2479
|
return {
|
|
2465
2480
|
val,
|
|
@@ -2541,16 +2556,16 @@ function createWrapped3D(val) {
|
|
|
2541
2556
|
split: (tools) => wrapAny(unwrapOrThrow(split(val, tools))),
|
|
2542
2557
|
slice: (planes, opts) => unwrapOrThrow(slice(val, planes, opts)),
|
|
2543
2558
|
fillet(...args) {
|
|
2544
|
-
if (args.length === 1) return wrap3D(unwrapOrThrow(fillet(val, args[0])));
|
|
2545
|
-
return wrap3D(unwrapOrThrow(fillet(val, args[0], args[1])));
|
|
2559
|
+
if (args.length === 1) return wrap3D(unwrapOrThrow(fillet(asValidSolid(val), args[0])));
|
|
2560
|
+
return wrap3D(unwrapOrThrow(fillet(asValidSolid(val), args[0], args[1])));
|
|
2546
2561
|
},
|
|
2547
2562
|
chamfer(...args) {
|
|
2548
|
-
if (args.length === 1) return wrap3D(unwrapOrThrow(chamfer(val, args[0])));
|
|
2549
|
-
return wrap3D(unwrapOrThrow(chamfer(val, args[0], args[1])));
|
|
2563
|
+
if (args.length === 1) return wrap3D(unwrapOrThrow(chamfer(asValidSolid(val), args[0])));
|
|
2564
|
+
return wrap3D(unwrapOrThrow(chamfer(asValidSolid(val), args[0], args[1])));
|
|
2550
2565
|
},
|
|
2551
|
-
shell: (faces, thickness, opts) => wrap3D(unwrapOrThrow(shell(val, faces, thickness, opts))),
|
|
2552
|
-
offset: (distance, opts) => wrap3D(unwrapOrThrow(offset(val, distance, opts))),
|
|
2553
|
-
draft: (faces, opts) => wrap3D(unwrapOrThrow(draft(val, faces, opts))),
|
|
2566
|
+
shell: (faces, thickness, opts) => wrap3D(unwrapOrThrow(shell(asValidSolid(val), faces, thickness, opts))),
|
|
2567
|
+
offset: (distance, opts) => wrap3D(unwrapOrThrow(offset(asValidSolid(val), distance, opts))),
|
|
2568
|
+
draft: (faces, opts) => wrap3D(unwrapOrThrow(draft(asValidSolid(val), faces, opts))),
|
|
2554
2569
|
drill: (opts) => wrap3D(unwrapOrThrow(drill(val, opts))),
|
|
2555
2570
|
pocket: (opts) => wrap3D(unwrapOrThrow(pocket(val, opts))),
|
|
2556
2571
|
boss: (opts) => wrap3D(unwrapOrThrow(boss(val, opts))),
|
|
@@ -2579,7 +2594,7 @@ function createWrappedCurve(val) {
|
|
|
2579
2594
|
isClosed: () => curveIsClosed(val),
|
|
2580
2595
|
sweep(spine, opts) {
|
|
2581
2596
|
if (!isWire(val)) throw new Error("sweep requires a Wire");
|
|
2582
|
-
const result = unwrapOrThrow(sweep(val, resolve(spine), opts));
|
|
2597
|
+
const result = unwrapOrThrow(sweep(asClosedWire(val), resolve(spine), opts));
|
|
2583
2598
|
return wrap3D(Array.isArray(result) ? result[0] : result);
|
|
2584
2599
|
}
|
|
2585
2600
|
};
|
|
@@ -2593,8 +2608,8 @@ function createWrappedFace(val) {
|
|
|
2593
2608
|
surfaceType: () => unwrapOrThrow(getSurfaceType(val)),
|
|
2594
2609
|
outerWire: () => outerWire(val),
|
|
2595
2610
|
innerWires: () => innerWires(val),
|
|
2596
|
-
extrude: (height) => wrap3D(unwrapOrThrow(extrude(val, height))),
|
|
2597
|
-
revolve: (opts) => wrap3D(unwrapOrThrow(revolve(val, opts)))
|
|
2611
|
+
extrude: (height) => wrap3D(unwrapOrThrow(extrude(asOrientedPlanarFace(val), height))),
|
|
2612
|
+
revolve: (opts) => wrap3D(unwrapOrThrow(revolve(asOrientedPlanarFace(val), opts)))
|
|
2598
2613
|
};
|
|
2599
2614
|
}
|
|
2600
2615
|
function wrapAny(val) {
|
|
@@ -2616,6 +2631,641 @@ function shape(s) {
|
|
|
2616
2631
|
}
|
|
2617
2632
|
throw new Error("shape() requires a Sketch or branded shape type");
|
|
2618
2633
|
}
|
|
2634
|
+
var DEFAULT_CLEARANCE = .25;
|
|
2635
|
+
var inv = (alpha) => Math.tan(alpha) - alpha;
|
|
2636
|
+
function involutePoint(rb, alpha, theta0, sign) {
|
|
2637
|
+
const r = rb / Math.cos(alpha);
|
|
2638
|
+
const theta = theta0 + sign * (Math.tan(alpha) - alpha);
|
|
2639
|
+
return [
|
|
2640
|
+
r * Math.cos(theta),
|
|
2641
|
+
r * Math.sin(theta),
|
|
2642
|
+
0
|
|
2643
|
+
];
|
|
2644
|
+
}
|
|
2645
|
+
function cosineSpaceFlankSamples(rb, alphaMax, theta0, count, sign) {
|
|
2646
|
+
const pts = [];
|
|
2647
|
+
for (let i = 0; i <= count; i++) {
|
|
2648
|
+
const t = .5 - .5 * Math.cos(i / count * Math.PI);
|
|
2649
|
+
pts.push(involutePoint(rb, t * alphaMax, theta0, sign));
|
|
2650
|
+
}
|
|
2651
|
+
return pts;
|
|
2652
|
+
}
|
|
2653
|
+
function adaptiveSampleCount(moduleSize) {
|
|
2654
|
+
return Math.max(16, Math.round(8 * Math.sqrt(moduleSize)));
|
|
2655
|
+
}
|
|
2656
|
+
function gearGeometry(z, moduleSize, alpha, shift, clearance, backlashHalf, isInternal) {
|
|
2657
|
+
const rPitch = z * moduleSize / 2;
|
|
2658
|
+
const rb = rPitch * Math.cos(alpha);
|
|
2659
|
+
const addendum = moduleSize * (1 + shift);
|
|
2660
|
+
const dedendum = moduleSize * (1 + clearance - shift);
|
|
2661
|
+
const rTip = isInternal ? rPitch - moduleSize * (1 - shift) : rPitch + addendum;
|
|
2662
|
+
const rRoot = isInternal ? rPitch + moduleSize * (1 + clearance + shift) : rPitch - dedendum;
|
|
2663
|
+
const blAng = backlashHalf / rPitch;
|
|
2664
|
+
const halfToothAngle = (Math.PI / 2 + 2 * shift * Math.tan(alpha)) / z + (isInternal ? blAng : -blAng);
|
|
2665
|
+
const rOuter = isInternal ? rRoot : rTip;
|
|
2666
|
+
return {
|
|
2667
|
+
rPitch,
|
|
2668
|
+
rb,
|
|
2669
|
+
rTip,
|
|
2670
|
+
rRoot,
|
|
2671
|
+
alphaPitch: alpha,
|
|
2672
|
+
halfToothAngle,
|
|
2673
|
+
alphaTip: rOuter <= rb ? 0 : Math.acos(Math.min(1, rb / rOuter)),
|
|
2674
|
+
toothPitch: 2 * Math.PI / z,
|
|
2675
|
+
isInternal
|
|
2676
|
+
};
|
|
2677
|
+
}
|
|
2678
|
+
/**
|
|
2679
|
+
* Solve `inv(αw) = inv(α) + 2·(summedShift)·tan α / totalTeeth` by bisection.
|
|
2680
|
+
*
|
|
2681
|
+
* For external-external mesh: summedShift = x1 + x2, totalTeeth = z1 + z2.
|
|
2682
|
+
* For external-internal mesh: summedShift = xInternal − xExternal, totalTeeth = zInternal − zExternal.
|
|
2683
|
+
*
|
|
2684
|
+
* Returns Err for shifts that push αw outside (epsilon, π/2).
|
|
2685
|
+
*/
|
|
2686
|
+
function solveWorkingPressureAngle(alpha, summedShift, totalTeeth) {
|
|
2687
|
+
if (summedShift === 0) return ok(alpha);
|
|
2688
|
+
const target = inv(alpha) + 2 * summedShift * Math.tan(alpha) / totalTeeth;
|
|
2689
|
+
const epsilon = 1e-4;
|
|
2690
|
+
let lo, hi;
|
|
2691
|
+
if (target > inv(alpha)) {
|
|
2692
|
+
lo = alpha;
|
|
2693
|
+
hi = Math.PI / 2 - 1e-6;
|
|
2694
|
+
} else {
|
|
2695
|
+
lo = epsilon;
|
|
2696
|
+
hi = alpha;
|
|
2697
|
+
}
|
|
2698
|
+
if (target > inv(hi) || target < inv(lo)) return err(validationError("GEAR_PA_OUT_OF_RANGE", `working pressure angle out of range — target inv(αw)=${target.toFixed(4)} not in [${inv(lo).toFixed(4)}, ${inv(hi).toFixed(4)}]`, void 0, {
|
|
2699
|
+
target,
|
|
2700
|
+
invLo: inv(lo),
|
|
2701
|
+
invHi: inv(hi)
|
|
2702
|
+
}));
|
|
2703
|
+
for (let i = 0; i < 50; i++) {
|
|
2704
|
+
const mid = .5 * (lo + hi);
|
|
2705
|
+
if (inv(mid) < target) lo = mid;
|
|
2706
|
+
else hi = mid;
|
|
2707
|
+
}
|
|
2708
|
+
return ok(.5 * (lo + hi));
|
|
2709
|
+
}
|
|
2710
|
+
/** Convenience: working PA for an external-external mesh (sun-planet). */
|
|
2711
|
+
function solveSunPlanetWorkingPressureAngle(alpha, xSun, xPlanet, zSun, zPlanet) {
|
|
2712
|
+
return solveWorkingPressureAngle(alpha, xSun + xPlanet, zSun + zPlanet);
|
|
2713
|
+
}
|
|
2714
|
+
/** Convenience: working PA for an external-internal mesh (planet-ring). */
|
|
2715
|
+
function solvePlanetRingWorkingPressureAngle(alpha, xPlanet, xRing, zPlanet, zRing) {
|
|
2716
|
+
return solveWorkingPressureAngle(alpha, xRing - xPlanet, zRing - zPlanet);
|
|
2717
|
+
}
|
|
2718
|
+
function workingCenterDistance(zs, zp, moduleSize, alpha, alphaW) {
|
|
2719
|
+
return (zs + zp) * moduleSize * Math.cos(alpha) / (2 * Math.cos(alphaW));
|
|
2720
|
+
}
|
|
2721
|
+
function validatePlanetary(zs, zp, n, planetShift) {
|
|
2722
|
+
if (!Number.isInteger(zs) || !Number.isInteger(zp) || !Number.isInteger(n)) return err(validationError("GEAR_NON_INTEGER_TEETH", "tooth counts and planet count must be integers"));
|
|
2723
|
+
if (zs < 4 || zp < 4 || n < 2) return err(validationError("GEAR_TEETH_TOO_FEW", "zs ≥ 4, zp ≥ 4, N ≥ 2 required"));
|
|
2724
|
+
if ((2 * zs + 2 * zp) % n !== 0) return err(validationError("GEAR_ASSEMBLY", `(2·zs + 2·zp) must be divisible by N — got ${2 * zs + 2 * zp} mod ${n} = ${(2 * zs + 2 * zp) % n}`));
|
|
2725
|
+
const planetTipDiameter = zp + 2 + 2 * planetShift;
|
|
2726
|
+
const minClearance = (zs + zp) * Math.sin(Math.PI / n);
|
|
2727
|
+
if (minClearance <= planetTipDiameter) return err(validationError("GEAR_PLANET_COLLISION", `planet tips would collide: (zs+zp)·sin(π/N) = ${minClearance.toFixed(3)} ≤ planet tip = ${planetTipDiameter.toFixed(3)}`));
|
|
2728
|
+
return ok(void 0);
|
|
2729
|
+
}
|
|
2730
|
+
function externalExternalContactRatio(ra1, rb1, ra2, rb2, centerDistance, moduleSize, alpha, alphaW) {
|
|
2731
|
+
return (Math.sqrt(Math.max(0, ra1 * ra1 - rb1 * rb1)) + Math.sqrt(Math.max(0, ra2 * ra2 - rb2 * rb2)) - centerDistance * Math.sin(alphaW)) / (Math.PI * moduleSize * Math.cos(alpha));
|
|
2732
|
+
}
|
|
2733
|
+
function externalInternalContactRatio(ra_p, rb_p, ra_r, rb_r, centerDistance, moduleSize, alpha, alphaW) {
|
|
2734
|
+
return (Math.sqrt(Math.max(0, ra_p * ra_p - rb_p * rb_p)) - Math.sqrt(Math.max(0, ra_r * ra_r - rb_r * rb_r)) + centerDistance * Math.sin(alphaW)) / (Math.PI * moduleSize * Math.cos(alpha));
|
|
2735
|
+
}
|
|
2736
|
+
function undercutMinimumShift(z, alpha) {
|
|
2737
|
+
return 1 - z * Math.sin(alpha) * Math.sin(alpha) / 2;
|
|
2738
|
+
}
|
|
2739
|
+
function undercutDeficit(z, alpha, shift) {
|
|
2740
|
+
return Math.max(0, undercutMinimumShift(z, alpha) - shift);
|
|
2741
|
+
}
|
|
2742
|
+
function lewisYFactor(z) {
|
|
2743
|
+
if (z < 8) return .2;
|
|
2744
|
+
return .485 - 2.88 / z;
|
|
2745
|
+
}
|
|
2746
|
+
function lewisRootStress(appliedTorqueNm, moduleSize, faceWidth, z) {
|
|
2747
|
+
const torqueNmm = appliedTorqueNm * 1e3;
|
|
2748
|
+
const Y = lewisYFactor(z);
|
|
2749
|
+
if (Y <= 0 || faceWidth <= 0 || moduleSize <= 0) return Infinity;
|
|
2750
|
+
return 2 * torqueNmm / (z * moduleSize * moduleSize * faceWidth * Y);
|
|
2751
|
+
}
|
|
2752
|
+
/**
|
|
2753
|
+
* Dolan-Broghamer fit is for *external* spur teeth. Set `isInternal=true` on
|
|
2754
|
+
* ring gears to apply Niemann's 0.85× reduction — the concave root fillet has
|
|
2755
|
+
* a gentler geometric riser (matches AGMA 908-B89 trend).
|
|
2756
|
+
*/
|
|
2757
|
+
function filletStressConcentrationFactor(z, alpha, isInternal = false) {
|
|
2758
|
+
const kf20 = 1.4 + 6.5 / z;
|
|
2759
|
+
const alphaDeg = alpha * 180 / Math.PI;
|
|
2760
|
+
const kf = kf20 * Math.pow(20 / alphaDeg, .15);
|
|
2761
|
+
return isInternal ? kf * .85 : kf;
|
|
2762
|
+
}
|
|
2763
|
+
function lewisRootStressCorrected(appliedTorqueNm, moduleSize, faceWidth, z, alpha, isInternal = false) {
|
|
2764
|
+
return lewisRootStress(appliedTorqueNm, moduleSize, faceWidth, z) * filletStressConcentrationFactor(z, alpha, isInternal);
|
|
2765
|
+
}
|
|
2766
|
+
function backlashHalf(totalBacklash) {
|
|
2767
|
+
return totalBacklash / 2;
|
|
2768
|
+
}
|
|
2769
|
+
function ringTeeth(zs, zp) {
|
|
2770
|
+
return zs + 2 * zp;
|
|
2771
|
+
}
|
|
2772
|
+
function evenToothPhaseOffset(z) {
|
|
2773
|
+
return z % 2 === 0 ? Math.PI / z : 0;
|
|
2774
|
+
}
|
|
2775
|
+
function planetSelfRotationAngle(orbitalAngle, zs, zp) {
|
|
2776
|
+
return orbitalAngle * (1 + zs / zp) + evenToothPhaseOffset(zp);
|
|
2777
|
+
}
|
|
2778
|
+
/**
|
|
2779
|
+
* Compute the rigid placement of each planet without building any solid.
|
|
2780
|
+
*
|
|
2781
|
+
* Pairs with one materialized planet from `makeExternalGear` to support
|
|
2782
|
+
* GPU-instanced rendering: mesh once, draw N times under these transforms.
|
|
2783
|
+
* Defaults match {@link PlanetaryGearParams}.
|
|
2784
|
+
*/
|
|
2785
|
+
function planetPlacements(params = {}) {
|
|
2786
|
+
const moduleSize = params.moduleSize ?? 3;
|
|
2787
|
+
const sunTeeth = params.sunTeeth ?? 15;
|
|
2788
|
+
const planetTeeth = params.planetTeeth ?? 12;
|
|
2789
|
+
const numPlanets = params.numPlanets ?? 3;
|
|
2790
|
+
const alpha = (params.pressureAngleDeg ?? 20) * Math.PI / 180;
|
|
2791
|
+
const sunShift = params.sunShift ?? 0;
|
|
2792
|
+
const planetShift = params.planetShift ?? 0;
|
|
2793
|
+
const validation = validatePlanetary(sunTeeth, planetTeeth, numPlanets, planetShift);
|
|
2794
|
+
if (isErr(validation)) return validation;
|
|
2795
|
+
const sp = solveSunPlanetWorkingPressureAngle(alpha, sunShift, planetShift, sunTeeth, planetTeeth);
|
|
2796
|
+
if (isErr(sp)) return sp;
|
|
2797
|
+
const centerDistance = workingCenterDistance(sunTeeth, planetTeeth, moduleSize, alpha, sp.value);
|
|
2798
|
+
const placements = [];
|
|
2799
|
+
for (let i = 0; i < numPlanets; i++) {
|
|
2800
|
+
const orbital = i * 2 * Math.PI / numPlanets;
|
|
2801
|
+
const selfRot = planetSelfRotationAngle(orbital, sunTeeth, planetTeeth);
|
|
2802
|
+
placements.push({
|
|
2803
|
+
rotationDeg: selfRot * 180 / Math.PI,
|
|
2804
|
+
position: [
|
|
2805
|
+
centerDistance * Math.cos(orbital),
|
|
2806
|
+
centerDistance * Math.sin(orbital),
|
|
2807
|
+
0
|
|
2808
|
+
]
|
|
2809
|
+
});
|
|
2810
|
+
}
|
|
2811
|
+
return ok(placements);
|
|
2812
|
+
}
|
|
2813
|
+
//#endregion
|
|
2814
|
+
//#region src/gear/gearProfile.ts
|
|
2815
|
+
function buildToothPeriodEdges(tm, toothIndex, totalTeeth, samples, scope) {
|
|
2816
|
+
const center = toothIndex * tm.toothPitch;
|
|
2817
|
+
const nextCenter = (toothIndex + 1) % totalTeeth * tm.toothPitch;
|
|
2818
|
+
const invPitch = inv(tm.alphaPitch);
|
|
2819
|
+
const thetaLeft = center - tm.halfToothAngle - invPitch;
|
|
2820
|
+
const thetaRight = center + tm.halfToothAngle + invPitch;
|
|
2821
|
+
const leftFlank = cosineSpaceFlankSamples(tm.rb, tm.alphaTip, thetaLeft, samples, 1);
|
|
2822
|
+
const rightFlank = cosineSpaceFlankSamples(tm.rb, tm.alphaTip, thetaRight, samples, -1).reverse();
|
|
2823
|
+
const leftBase = firstOrThrow(leftFlank);
|
|
2824
|
+
const leftTip = lastOrThrow(leftFlank);
|
|
2825
|
+
const rightTip = firstOrThrow(rightFlank);
|
|
2826
|
+
const rightBase = lastOrThrow(rightFlank);
|
|
2827
|
+
const edges = [];
|
|
2828
|
+
const push = (e) => {
|
|
2829
|
+
scope.register(e);
|
|
2830
|
+
edges.push(e);
|
|
2831
|
+
};
|
|
2832
|
+
const needsRadialBridge = tm.isInternal ? tm.rb < tm.rRoot : tm.rb > tm.rRoot;
|
|
2833
|
+
if (needsRadialBridge) push(makeLine([
|
|
2834
|
+
tm.rRoot * Math.cos(thetaLeft),
|
|
2835
|
+
tm.rRoot * Math.sin(thetaLeft),
|
|
2836
|
+
0
|
|
2837
|
+
], leftBase));
|
|
2838
|
+
const interpTol = tm.rPitch * 1e-5;
|
|
2839
|
+
const leftEdge = makeBSplineInterpolation(leftFlank, { tolerance: interpTol });
|
|
2840
|
+
if (isErr(leftEdge)) return leftEdge;
|
|
2841
|
+
push(leftEdge.value);
|
|
2842
|
+
push(makeThreePointArc(leftTip, [
|
|
2843
|
+
tm.rTip * Math.cos(center),
|
|
2844
|
+
tm.rTip * Math.sin(center),
|
|
2845
|
+
0
|
|
2846
|
+
], rightTip));
|
|
2847
|
+
const rightEdge = makeBSplineInterpolation(rightFlank, { tolerance: interpTol });
|
|
2848
|
+
if (isErr(rightEdge)) return rightEdge;
|
|
2849
|
+
push(rightEdge.value);
|
|
2850
|
+
if (needsRadialBridge) push(makeLine(rightBase, [
|
|
2851
|
+
tm.rRoot * Math.cos(thetaRight),
|
|
2852
|
+
tm.rRoot * Math.sin(thetaRight),
|
|
2853
|
+
0
|
|
2854
|
+
]));
|
|
2855
|
+
const rootEndAngle = nextCenter - tm.halfToothAngle - invPitch;
|
|
2856
|
+
let midAngle = .5 * (thetaRight + rootEndAngle);
|
|
2857
|
+
if (rootEndAngle < thetaRight) midAngle += Math.PI;
|
|
2858
|
+
push(makeThreePointArc(needsRadialBridge ? [
|
|
2859
|
+
tm.rRoot * Math.cos(thetaRight),
|
|
2860
|
+
tm.rRoot * Math.sin(thetaRight),
|
|
2861
|
+
0
|
|
2862
|
+
] : rightBase, [
|
|
2863
|
+
tm.rRoot * Math.cos(midAngle),
|
|
2864
|
+
tm.rRoot * Math.sin(midAngle),
|
|
2865
|
+
0
|
|
2866
|
+
], needsRadialBridge ? [
|
|
2867
|
+
tm.rRoot * Math.cos(rootEndAngle),
|
|
2868
|
+
tm.rRoot * Math.sin(rootEndAngle),
|
|
2869
|
+
0
|
|
2870
|
+
] : [
|
|
2871
|
+
tm.rb * Math.cos(rootEndAngle),
|
|
2872
|
+
tm.rb * Math.sin(rootEndAngle),
|
|
2873
|
+
0
|
|
2874
|
+
]));
|
|
2875
|
+
return ok(edges);
|
|
2876
|
+
}
|
|
2877
|
+
function makeExternalGearProfileWire(params) {
|
|
2878
|
+
return makeProfileWire(params, false);
|
|
2879
|
+
}
|
|
2880
|
+
function makeInternalGearProfileWire(params) {
|
|
2881
|
+
return makeProfileWire(params, true);
|
|
2882
|
+
}
|
|
2883
|
+
function makeProfileWire(params, isInternal) {
|
|
2884
|
+
try {
|
|
2885
|
+
var _usingCtx$2 = _usingCtx();
|
|
2886
|
+
const { teeth, moduleSize, pressureAngle, shift, clearance, flankThinning, samples = adaptiveSampleCount(moduleSize) } = params;
|
|
2887
|
+
if (teeth < 4) return err(validationError("GEAR_TEETH_TOO_FEW", `gear needs ≥ 4 teeth, got ${teeth}`));
|
|
2888
|
+
if (moduleSize <= 0) return err(validationError("GEAR_MODULE_NONPOSITIVE", `module must be > 0, got ${moduleSize}`));
|
|
2889
|
+
const tm = gearGeometry(teeth, moduleSize, pressureAngle, shift, clearance, flankThinning, isInternal);
|
|
2890
|
+
const scope = _usingCtx$2.u(new DisposalScope());
|
|
2891
|
+
const allEdges = [];
|
|
2892
|
+
for (let i = 0; i < teeth; i++) {
|
|
2893
|
+
const periodEdges = buildToothPeriodEdges(tm, i, teeth, samples, scope);
|
|
2894
|
+
if (isErr(periodEdges)) return periodEdges;
|
|
2895
|
+
allEdges.push(...periodEdges.value);
|
|
2896
|
+
}
|
|
2897
|
+
const wireResult = assembleWire(allEdges);
|
|
2898
|
+
if (isErr(wireResult)) return wireResult;
|
|
2899
|
+
return ok(wireResult.value);
|
|
2900
|
+
} catch (_) {
|
|
2901
|
+
_usingCtx$2.e = _;
|
|
2902
|
+
} finally {
|
|
2903
|
+
_usingCtx$2.d();
|
|
2904
|
+
}
|
|
2905
|
+
}
|
|
2906
|
+
//#endregion
|
|
2907
|
+
//#region src/gear/gearFns.ts
|
|
2908
|
+
function makeExternalGear(params) {
|
|
2909
|
+
const { teeth, moduleSize, thickness, pressureAngleDeg = 20, shift = 0, clearance = DEFAULT_CLEARANCE, flankThinning = 0, bore = 0, samples } = params;
|
|
2910
|
+
if (thickness <= 0) return err(validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
2911
|
+
if (samples !== void 0 && (!Number.isInteger(samples) || samples < 1)) return err(validationError("GEAR_SAMPLES_INVALID", `samples must be a positive integer; got ${String(samples)}`));
|
|
2912
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
2913
|
+
const geom = gearGeometry(teeth, moduleSize, alpha, shift, clearance, flankThinning, false);
|
|
2914
|
+
if (bore > 0 && bore >= 2 * geom.rRoot) return err(validationError("GEAR_BORE_TOO_LARGE", `bore diameter ${bore.toFixed(2)} ≥ root diameter ${(2 * geom.rRoot).toFixed(2)} — would erase the gear teeth`));
|
|
2915
|
+
const wireResult = makeExternalGearProfileWire({
|
|
2916
|
+
teeth,
|
|
2917
|
+
moduleSize,
|
|
2918
|
+
pressureAngle: alpha,
|
|
2919
|
+
shift,
|
|
2920
|
+
clearance,
|
|
2921
|
+
flankThinning,
|
|
2922
|
+
...samples !== void 0 ? { samples } : {}
|
|
2923
|
+
});
|
|
2924
|
+
if (isErr(wireResult)) return wireResult;
|
|
2925
|
+
const diagnostics = externalGearDiagnostics(teeth, alpha, shift);
|
|
2926
|
+
return finalizeExternalSolid(wireResult.value, thickness, bore, geom, diagnostics);
|
|
2927
|
+
}
|
|
2928
|
+
function makeInternalGear(params) {
|
|
2929
|
+
const { teeth, moduleSize, thickness, pressureAngleDeg = 20, shift = 0, clearance = DEFAULT_CLEARANCE, flankThinning = 0, ringWallThickness = 2 * params.moduleSize, samples } = params;
|
|
2930
|
+
if (thickness <= 0) return err(validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
2931
|
+
if (ringWallThickness <= 0) return err(validationError("GEAR_WALL_NONPOSITIVE", "ringWallThickness must be > 0"));
|
|
2932
|
+
if (samples !== void 0 && (!Number.isInteger(samples) || samples < 1)) return err(validationError("GEAR_SAMPLES_INVALID", `samples must be a positive integer; got ${String(samples)}`));
|
|
2933
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
2934
|
+
const innerWireResult = makeInternalGearProfileWire({
|
|
2935
|
+
teeth,
|
|
2936
|
+
moduleSize,
|
|
2937
|
+
pressureAngle: alpha,
|
|
2938
|
+
shift,
|
|
2939
|
+
clearance,
|
|
2940
|
+
flankThinning,
|
|
2941
|
+
...samples !== void 0 ? { samples } : {}
|
|
2942
|
+
});
|
|
2943
|
+
if (isErr(innerWireResult)) return innerWireResult;
|
|
2944
|
+
const geom = gearGeometry(teeth, moduleSize, alpha, shift, clearance, flankThinning, true);
|
|
2945
|
+
const outerWireResult = makeOuterCircleWire(geom.rPitch + ringWallThickness);
|
|
2946
|
+
if (isErr(outerWireResult)) return outerWireResult;
|
|
2947
|
+
return finalizeInternalSolid(outerWireResult.value, innerWireResult.value, thickness, geom, []);
|
|
2948
|
+
}
|
|
2949
|
+
/** Diagnostics for an external (rack-cut) gear in isolation. Not valid for internal gears. */
|
|
2950
|
+
function externalGearDiagnostics(teeth, alpha, shift) {
|
|
2951
|
+
const deficit = undercutDeficit(teeth, alpha, shift);
|
|
2952
|
+
if (deficit <= 0) return [];
|
|
2953
|
+
return [{
|
|
2954
|
+
code: "UNDERCUT_RISK",
|
|
2955
|
+
severity: "warning",
|
|
2956
|
+
message: `gear is undercut: increase shift by ${deficit.toFixed(3)} to avoid (z=${teeth})`,
|
|
2957
|
+
context: {
|
|
2958
|
+
deficit,
|
|
2959
|
+
teeth
|
|
2960
|
+
}
|
|
2961
|
+
}];
|
|
2962
|
+
}
|
|
2963
|
+
function makePlanetaryGear(params) {
|
|
2964
|
+
const resolved = resolvePlanetaryParams(params);
|
|
2965
|
+
if (isErr(resolved)) return resolved;
|
|
2966
|
+
const cfg = resolved.value;
|
|
2967
|
+
const stages = buildPlanetaryStages(cfg);
|
|
2968
|
+
if (isErr(stages)) return stages;
|
|
2969
|
+
const { sun, planet, ring } = stages.value;
|
|
2970
|
+
const metrics = computeMeshMetrics(cfg, sun, planet, ring);
|
|
2971
|
+
const planets = placePlanets(planet.solid, cfg);
|
|
2972
|
+
planet.solid.delete();
|
|
2973
|
+
const ringPhased = applyRingPhase(ring.solid, cfg.zr);
|
|
2974
|
+
const diagnostics = collectDiagnostics(cfg, metrics);
|
|
2975
|
+
return ok({
|
|
2976
|
+
sun: sun.solid,
|
|
2977
|
+
planets,
|
|
2978
|
+
ring: ringPhased,
|
|
2979
|
+
ringTeeth: cfg.zr,
|
|
2980
|
+
workingPressureAngle: cfg.alphaW_sp,
|
|
2981
|
+
centerDistance: cfg.centerDistance,
|
|
2982
|
+
contactRatio: {
|
|
2983
|
+
sunPlanet: metrics.crSunPlanet,
|
|
2984
|
+
planetRing: metrics.crPlanetRing
|
|
2985
|
+
},
|
|
2986
|
+
undercutDeficit: {
|
|
2987
|
+
sun: metrics.undercutSun,
|
|
2988
|
+
planet: metrics.undercutPlanet
|
|
2989
|
+
},
|
|
2990
|
+
...metrics.lewisStress ? { lewisStress: metrics.lewisStress } : {},
|
|
2991
|
+
...metrics.stressConcentrationFactor ? { stressConcentrationFactor: metrics.stressConcentrationFactor } : {},
|
|
2992
|
+
diagnostics
|
|
2993
|
+
});
|
|
2994
|
+
}
|
|
2995
|
+
function buildPlanetaryStages(cfg) {
|
|
2996
|
+
const samplesField = cfg.samples !== void 0 ? { samples: cfg.samples } : {};
|
|
2997
|
+
const common = {
|
|
2998
|
+
moduleSize: cfg.moduleSize,
|
|
2999
|
+
thickness: cfg.thickness,
|
|
3000
|
+
pressureAngleDeg: cfg.pressureAngleDeg,
|
|
3001
|
+
clearance: cfg.clearance,
|
|
3002
|
+
flankThinning: cfg.bHalf,
|
|
3003
|
+
...samplesField
|
|
3004
|
+
};
|
|
3005
|
+
const sun = makeExternalGear({
|
|
3006
|
+
...common,
|
|
3007
|
+
teeth: cfg.sunTeeth,
|
|
3008
|
+
shift: cfg.sunShift,
|
|
3009
|
+
bore: cfg.sunBore
|
|
3010
|
+
});
|
|
3011
|
+
if (isErr(sun)) return sun;
|
|
3012
|
+
const planet = makeExternalGear({
|
|
3013
|
+
...common,
|
|
3014
|
+
teeth: cfg.planetTeeth,
|
|
3015
|
+
shift: cfg.planetShift,
|
|
3016
|
+
bore: cfg.planetBore
|
|
3017
|
+
});
|
|
3018
|
+
if (isErr(planet)) {
|
|
3019
|
+
sun.value.solid.delete();
|
|
3020
|
+
return planet;
|
|
3021
|
+
}
|
|
3022
|
+
const ring = makeInternalGear({
|
|
3023
|
+
...common,
|
|
3024
|
+
teeth: cfg.zr,
|
|
3025
|
+
shift: cfg.ringShift,
|
|
3026
|
+
ringWallThickness: cfg.ringWallThickness
|
|
3027
|
+
});
|
|
3028
|
+
if (isErr(ring)) {
|
|
3029
|
+
sun.value.solid.delete();
|
|
3030
|
+
planet.value.solid.delete();
|
|
3031
|
+
return ring;
|
|
3032
|
+
}
|
|
3033
|
+
return ok({
|
|
3034
|
+
sun: sun.value,
|
|
3035
|
+
planet: planet.value,
|
|
3036
|
+
ring: ring.value
|
|
3037
|
+
});
|
|
3038
|
+
}
|
|
3039
|
+
function resolvePlanetaryParams(params) {
|
|
3040
|
+
const moduleSize = params.moduleSize ?? 3;
|
|
3041
|
+
const sunTeeth = params.sunTeeth ?? 15;
|
|
3042
|
+
const planetTeeth = params.planetTeeth ?? 12;
|
|
3043
|
+
const numPlanets = params.numPlanets ?? 3;
|
|
3044
|
+
const pressureAngleDeg = params.pressureAngleDeg ?? 20;
|
|
3045
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
3046
|
+
const sunShift = params.sunShift ?? 0;
|
|
3047
|
+
const planetShift = params.planetShift ?? 0;
|
|
3048
|
+
const ringShift = params.ringShift ?? 0;
|
|
3049
|
+
if (params.thickness <= 0) return err(validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
3050
|
+
const validation = validatePlanetary(sunTeeth, planetTeeth, numPlanets, planetShift);
|
|
3051
|
+
if (isErr(validation)) return validation;
|
|
3052
|
+
const zr = ringTeeth(sunTeeth, planetTeeth);
|
|
3053
|
+
const sp = solveSunPlanetWorkingPressureAngle(alpha, sunShift, planetShift, sunTeeth, planetTeeth);
|
|
3054
|
+
if (isErr(sp)) return sp;
|
|
3055
|
+
const pr = solvePlanetRingWorkingPressureAngle(alpha, planetShift, ringShift, planetTeeth, zr);
|
|
3056
|
+
if (isErr(pr)) return pr;
|
|
3057
|
+
const centerDistance = workingCenterDistance(sunTeeth, planetTeeth, moduleSize, alpha, sp.value);
|
|
3058
|
+
return ok({
|
|
3059
|
+
moduleSize,
|
|
3060
|
+
sunTeeth,
|
|
3061
|
+
planetTeeth,
|
|
3062
|
+
numPlanets,
|
|
3063
|
+
pressureAngleDeg,
|
|
3064
|
+
alpha,
|
|
3065
|
+
alphaW_sp: sp.value,
|
|
3066
|
+
alphaW_pr: pr.value,
|
|
3067
|
+
clearance: params.clearance ?? .25,
|
|
3068
|
+
bHalf: backlashHalf(params.backlash ?? 0),
|
|
3069
|
+
sunShift,
|
|
3070
|
+
planetShift,
|
|
3071
|
+
ringShift,
|
|
3072
|
+
ringWallThickness: params.ringWallThickness ?? 2 * moduleSize,
|
|
3073
|
+
thickness: params.thickness,
|
|
3074
|
+
sunBore: params.sunBore ?? 0,
|
|
3075
|
+
planetBore: params.planetBore ?? 0,
|
|
3076
|
+
...params.appliedTorque !== void 0 ? { appliedTorque: params.appliedTorque } : {},
|
|
3077
|
+
...params.samples !== void 0 ? { samples: params.samples } : {},
|
|
3078
|
+
zr,
|
|
3079
|
+
centerDistance
|
|
3080
|
+
});
|
|
3081
|
+
}
|
|
3082
|
+
function makeOuterCircleWire(radius) {
|
|
3083
|
+
try {
|
|
3084
|
+
var _usingCtx$1 = _usingCtx();
|
|
3085
|
+
const wireResult = assembleWire([_usingCtx$1.u(new DisposalScope()).register(makeCircle(radius, [
|
|
3086
|
+
0,
|
|
3087
|
+
0,
|
|
3088
|
+
0
|
|
3089
|
+
], [
|
|
3090
|
+
0,
|
|
3091
|
+
0,
|
|
3092
|
+
1
|
|
3093
|
+
]))]);
|
|
3094
|
+
if (isErr(wireResult)) return wireResult;
|
|
3095
|
+
return ok(wireResult.value);
|
|
3096
|
+
} catch (_) {
|
|
3097
|
+
_usingCtx$1.e = _;
|
|
3098
|
+
} finally {
|
|
3099
|
+
_usingCtx$1.d();
|
|
3100
|
+
}
|
|
3101
|
+
}
|
|
3102
|
+
function finalizeExternalSolid(wire, thickness, bore, geom, diagnostics) {
|
|
3103
|
+
try {
|
|
3104
|
+
var _usingCtx3 = _usingCtx();
|
|
3105
|
+
const faceResult = makeFace(wire);
|
|
3106
|
+
if (isErr(faceResult)) return faceResult;
|
|
3107
|
+
const solidResult = extrude$1(faceResult.value, [
|
|
3108
|
+
0,
|
|
3109
|
+
0,
|
|
3110
|
+
thickness
|
|
3111
|
+
]);
|
|
3112
|
+
if (isErr(solidResult)) return solidResult;
|
|
3113
|
+
if (bore <= 0) return ok(buildGearResult(solidResult.value, geom, diagnostics));
|
|
3114
|
+
const boreScope = _usingCtx3.u(new DisposalScope());
|
|
3115
|
+
const boreFaceResult = makeBoreFace(bore / 2);
|
|
3116
|
+
if (isErr(boreFaceResult)) return boreFaceResult;
|
|
3117
|
+
boreScope.register(boreFaceResult.value);
|
|
3118
|
+
const boreRaw = extrude$1(boreFaceResult.value, [
|
|
3119
|
+
0,
|
|
3120
|
+
0,
|
|
3121
|
+
thickness + 1
|
|
3122
|
+
]);
|
|
3123
|
+
if (isErr(boreRaw)) return boreRaw;
|
|
3124
|
+
boreScope.register(boreRaw.value);
|
|
3125
|
+
const boreSolid = boreScope.register(translate$1(boreRaw.value, [
|
|
3126
|
+
0,
|
|
3127
|
+
0,
|
|
3128
|
+
-.5
|
|
3129
|
+
]));
|
|
3130
|
+
const cutResult = cut$1(solidResult.value, boreSolid);
|
|
3131
|
+
if (isErr(cutResult)) return cutResult;
|
|
3132
|
+
return ok(buildGearResult(cutResult.value, geom, diagnostics));
|
|
3133
|
+
} catch (_) {
|
|
3134
|
+
_usingCtx3.e = _;
|
|
3135
|
+
} finally {
|
|
3136
|
+
_usingCtx3.d();
|
|
3137
|
+
}
|
|
3138
|
+
}
|
|
3139
|
+
function makeBoreFace(radius) {
|
|
3140
|
+
const wireResult = makeOuterCircleWire(radius);
|
|
3141
|
+
if (isErr(wireResult)) return wireResult;
|
|
3142
|
+
return makeFace(wireResult.value);
|
|
3143
|
+
}
|
|
3144
|
+
function finalizeInternalSolid(outerWire, innerToothedWire, thickness, geom, diagnostics) {
|
|
3145
|
+
const faceResult = makeFace(outerWire, [innerToothedWire]);
|
|
3146
|
+
if (isErr(faceResult)) return faceResult;
|
|
3147
|
+
const solidResult = extrude$1(faceResult.value, [
|
|
3148
|
+
0,
|
|
3149
|
+
0,
|
|
3150
|
+
thickness
|
|
3151
|
+
]);
|
|
3152
|
+
if (isErr(solidResult)) return solidResult;
|
|
3153
|
+
return ok(buildGearResult(solidResult.value, geom, diagnostics));
|
|
3154
|
+
}
|
|
3155
|
+
function buildGearResult(solid, geom, diagnostics = []) {
|
|
3156
|
+
return {
|
|
3157
|
+
solid,
|
|
3158
|
+
diagnostics,
|
|
3159
|
+
pitchDiameter: 2 * geom.rPitch,
|
|
3160
|
+
baseDiameter: 2 * geom.rb,
|
|
3161
|
+
tipDiameter: 2 * geom.rTip,
|
|
3162
|
+
rootDiameter: 2 * geom.rRoot
|
|
3163
|
+
};
|
|
3164
|
+
}
|
|
3165
|
+
function placePlanets(planetProto, cfg) {
|
|
3166
|
+
const planets = [];
|
|
3167
|
+
try {
|
|
3168
|
+
for (let i = 0; i < cfg.numPlanets; i++) {
|
|
3169
|
+
const orbital = i * 2 * Math.PI / cfg.numPlanets;
|
|
3170
|
+
const rotated = rotate$1(planetProto, planetSelfRotationAngle(orbital, cfg.sunTeeth, cfg.planetTeeth) * 180 / Math.PI);
|
|
3171
|
+
try {
|
|
3172
|
+
const offset = [
|
|
3173
|
+
cfg.centerDistance * Math.cos(orbital),
|
|
3174
|
+
cfg.centerDistance * Math.sin(orbital),
|
|
3175
|
+
0
|
|
3176
|
+
];
|
|
3177
|
+
planets.push(translate$1(rotated, offset));
|
|
3178
|
+
} finally {
|
|
3179
|
+
rotated.delete();
|
|
3180
|
+
}
|
|
3181
|
+
}
|
|
3182
|
+
return planets;
|
|
3183
|
+
} catch (e) {
|
|
3184
|
+
for (const p of planets) p.delete();
|
|
3185
|
+
throw e;
|
|
3186
|
+
}
|
|
3187
|
+
}
|
|
3188
|
+
function applyRingPhase(ring, zr) {
|
|
3189
|
+
const phaseRad = evenToothPhaseOffset(zr);
|
|
3190
|
+
if (phaseRad === 0) return ring;
|
|
3191
|
+
const rotated = rotate$1(ring, phaseRad * 180 / Math.PI);
|
|
3192
|
+
ring.delete();
|
|
3193
|
+
return rotated;
|
|
3194
|
+
}
|
|
3195
|
+
function computeMeshMetrics(cfg, sun, planet, ring) {
|
|
3196
|
+
const metrics = {
|
|
3197
|
+
crSunPlanet: externalExternalContactRatio(sun.tipDiameter / 2, sun.baseDiameter / 2, planet.tipDiameter / 2, planet.baseDiameter / 2, cfg.centerDistance, cfg.moduleSize, cfg.alpha, cfg.alphaW_sp),
|
|
3198
|
+
crPlanetRing: externalInternalContactRatio(planet.tipDiameter / 2, planet.baseDiameter / 2, ring.tipDiameter / 2, ring.baseDiameter / 2, cfg.centerDistance, cfg.moduleSize, cfg.alpha, cfg.alphaW_pr),
|
|
3199
|
+
undercutSun: undercutDeficit(cfg.sunTeeth, cfg.alpha, cfg.sunShift),
|
|
3200
|
+
undercutPlanet: undercutDeficit(cfg.planetTeeth, cfg.alpha, cfg.planetShift)
|
|
3201
|
+
};
|
|
3202
|
+
if (cfg.appliedTorque !== void 0) {
|
|
3203
|
+
const tSun = cfg.appliedTorque;
|
|
3204
|
+
metrics.lewisStress = {
|
|
3205
|
+
sun: lewisRootStressCorrected(tSun, cfg.moduleSize, cfg.thickness, cfg.sunTeeth, cfg.alpha),
|
|
3206
|
+
planet: lewisRootStressCorrected(tSun * cfg.planetTeeth / cfg.sunTeeth, cfg.moduleSize, cfg.thickness, cfg.planetTeeth, cfg.alpha),
|
|
3207
|
+
ring: lewisRootStressCorrected(tSun * cfg.zr / cfg.sunTeeth, cfg.moduleSize, cfg.thickness, cfg.zr, cfg.alpha, true)
|
|
3208
|
+
};
|
|
3209
|
+
metrics.stressConcentrationFactor = {
|
|
3210
|
+
sun: filletStressConcentrationFactor(cfg.sunTeeth, cfg.alpha),
|
|
3211
|
+
planet: filletStressConcentrationFactor(cfg.planetTeeth, cfg.alpha),
|
|
3212
|
+
ring: filletStressConcentrationFactor(cfg.zr, cfg.alpha, true)
|
|
3213
|
+
};
|
|
3214
|
+
}
|
|
3215
|
+
return metrics;
|
|
3216
|
+
}
|
|
3217
|
+
function collectDiagnostics(cfg, metrics) {
|
|
3218
|
+
const diagnostics = [];
|
|
3219
|
+
if (metrics.crSunPlanet < 1.2) diagnostics.push({
|
|
3220
|
+
code: "CONTACT_RATIO_LOW_SUN_PLANET",
|
|
3221
|
+
severity: "warning",
|
|
3222
|
+
message: `sun-planet contact ratio ${metrics.crSunPlanet.toFixed(2)} is below 1.2 — may run unevenly`,
|
|
3223
|
+
context: { value: metrics.crSunPlanet }
|
|
3224
|
+
});
|
|
3225
|
+
if (metrics.crPlanetRing < 1.2) diagnostics.push({
|
|
3226
|
+
code: "CONTACT_RATIO_LOW_PLANET_RING",
|
|
3227
|
+
severity: "warning",
|
|
3228
|
+
message: `planet-ring contact ratio ${metrics.crPlanetRing.toFixed(2)} is below 1.2 — may run unevenly`,
|
|
3229
|
+
context: { value: metrics.crPlanetRing }
|
|
3230
|
+
});
|
|
3231
|
+
if (metrics.undercutSun > 0) diagnostics.push({
|
|
3232
|
+
code: "UNDERCUT_RISK_SUN",
|
|
3233
|
+
severity: "warning",
|
|
3234
|
+
message: `sun gear is undercut: increase sunShift by ${metrics.undercutSun.toFixed(3)} to avoid`,
|
|
3235
|
+
context: {
|
|
3236
|
+
deficit: metrics.undercutSun,
|
|
3237
|
+
sunTeeth: cfg.sunTeeth
|
|
3238
|
+
}
|
|
3239
|
+
});
|
|
3240
|
+
if (metrics.undercutPlanet > 0) diagnostics.push({
|
|
3241
|
+
code: "UNDERCUT_RISK_PLANET",
|
|
3242
|
+
severity: "warning",
|
|
3243
|
+
message: `planet gear is undercut: increase planetShift by ${metrics.undercutPlanet.toFixed(3)} to avoid`,
|
|
3244
|
+
context: {
|
|
3245
|
+
deficit: metrics.undercutPlanet,
|
|
3246
|
+
planetTeeth: cfg.planetTeeth
|
|
3247
|
+
}
|
|
3248
|
+
});
|
|
3249
|
+
const totalShiftMagnitude = Math.abs(cfg.sunShift) + Math.abs(cfg.planetShift) + Math.abs(cfg.ringShift);
|
|
3250
|
+
if (cfg.appliedTorque !== void 0 && totalShiftMagnitude > .05) diagnostics.push({
|
|
3251
|
+
code: "LEWIS_Y_SHIFT_UNCORRECTED",
|
|
3252
|
+
severity: "info",
|
|
3253
|
+
message: "Lewis stress uses unshifted Y(z) and K_f approximations; expect ±5% per 0.1 of profile shift"
|
|
3254
|
+
});
|
|
3255
|
+
const kinematicError = cfg.ringShift - (cfg.sunShift + 2 * cfg.planetShift);
|
|
3256
|
+
if (Math.abs(kinematicError) > 1e-6) diagnostics.push({
|
|
3257
|
+
code: "PLANETARY_SHIFT_KINEMATIC_MISMATCH",
|
|
3258
|
+
severity: "warning",
|
|
3259
|
+
message: `ringShift should equal sunShift + 2·planetShift for both meshes to share working PA; off by ${kinematicError.toFixed(3)}`,
|
|
3260
|
+
context: {
|
|
3261
|
+
kinematicError,
|
|
3262
|
+
sunShift: cfg.sunShift,
|
|
3263
|
+
planetShift: cfg.planetShift,
|
|
3264
|
+
ringShift: cfg.ringShift
|
|
3265
|
+
}
|
|
3266
|
+
});
|
|
3267
|
+
return diagnostics;
|
|
3268
|
+
}
|
|
2619
3269
|
//#endregion
|
|
2620
3270
|
//#region src/ns/primitives.ts
|
|
2621
3271
|
var primitives_exports = /* @__PURE__ */ __exportAll({
|
|
@@ -2765,4 +3415,4 @@ var patterns_exports = /* @__PURE__ */ __exportAll({
|
|
|
2765
3415
|
linearPattern: () => linearPattern
|
|
2766
3416
|
});
|
|
2767
3417
|
//#endregion
|
|
2768
|
-
export { BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEG2RAD, DisposalScope, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketches, addChild, addHoles, 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, createDistanceQuery, createEdge, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createWire, createWorkerClient, createWorkerHandler, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutBlueprints, cutWithEvolution, cylinder, 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, extrude, extrudeAll, face, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseBlueprints, fuseWithEvolution, getBounds, getBounds2D, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getSingleFace, getSurfaceType, getTagMetadata, getVertices, getWires, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, init, initFromOC, innerWires, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, ioNs_exports as io, ioError, is2D, is3D, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDisposeRequest, isEdge, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFilletRadius, isInitRequest, isInside2D, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isWire, iterEdges, iterFaces, iterTopo, iterVertices, iterWires, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, line, linearPattern, loadFont, loft, loftAll, makeBaseBox, makePlane, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mesh, meshEdges, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarWire, pocket, pointOnSurface, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerOperation, registerShape, rejectAll, removeChild, removeHolesFromFace, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDirection, resolvePlane, resolveRef, reverseCurve, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, section, sectionToFace, serializeHistory, setShapeOrigin, setTagMetadata, sewShells, shape, shapeType, sharedEdges, shell, 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, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus, transformCopy, transforms_exports as transforms, translate, translate2D, translateDrawing, translatePlane, tryCatch, tryCatchAsync, twistExtrude, typeCastError, undoLast, unsupportedError, unwrap, unwrapErr, unwrapOr, unwrapOrElse, updateNode, updateRoles, uvBounds, uvCoordinates, validSolid, validationError, variableFillet, vecAdd, vecAngle, vecCross, vecDistance, vecDot, vecEquals, vecIsZero, vecLength, vecLengthSq, vecNegate, vecNormalize, vecProjectToPlane, vecRepr, vecRotate, vecScale, vecSub, vertex, vertexFinder, vertexPosition, verticesOfEdge, walkAssembly, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withScope, withScopeResult, withScopeResultAsync, zip as zipResults };
|
|
3418
|
+
export { BaseSketcher2d, BlueprintSketcher, BrepBugError, BrepErrorCode, BrepWrapperError, BrepkitAdapter, CompoundSketch, DEG2RAD, DisposalScope, FaceSketcher, HASH_CODE_MAX, OK, OcctWasmAdapter, RAD2DEG, Sketch, Sketcher, Sketches, addChild, addHoles, 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, createDistanceQuery, createEdge, createFace, createHandle, createHistory, createKernelHandle, createMeshCache, createNamedPlane, createOperationRegistry, createPlane, createRef, createRegistry, createShell, createSolid, createTaskQueue, createVertex, createWire, createWorkerClient, createWorkerHandler, curve2dBoundingBox, curve2dDistanceFrom, curve2dFirstPoint, curve2dIsOnCurve, curve2dLastPoint, curve2dParameter, curve2dSplitAt, curve2dTangentAt, curveEndPoint, curveIsClosed, curveIsPeriodic, curveLength, curvePeriod, curvePointAt, curveStartPoint, curveTangentAt, cut, cut2D, cutAll, cutBlueprints, cutWithEvolution, cylinder, 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, extrude, extrudeAll, face, faceCenter, faceFinder, faceGeomType, faceOrientation, facesOfEdge, fill, filledFace, fillet, filletWithEvolution, findFacesByTag, findNode, findStep, fixSelfIntersection, fixShape, flatMap, flatten, flipFaceOrientation, flipOrientation, fontMetrics, fromBREP$1 as fromBREP, fromKernelDir, fromKernelPnt, fromKernelVec, fromNullable, fuse, fuse2D, fuseAll, fuseBlueprints, fuseWithEvolution, gearGeometry, getBounds, getBounds2D, getCurveType, getDisposalStats, getEdges, getFaceColor, getFaceOrigins, getFaceTags, getFaces, getFont, getHashCode, getShape as getHistoryShape, getKernel, getNurbsCurveData, getNurbsSurfaceData, getOrientation, getOrientation2D, getPerformanceStats, getShapeColor, getShapeKind, getSingleFace, getSurfaceType, getTagMetadata, getVertices, getWires, guidedSweep, heal, healFace, healSolid, healWire, helix, hull, importDXF, importGLB, importIGES, importOBJ, importSTEP, importSTL, importSVG, importSVGPathD, importThreeMF, init, initFromOC, innerWires, interpolateCurve, intersect, intersect2D, intersectBlueprints, intersectWithEvolution, invalidateShapeCache, ioNs_exports as io, ioError, is2D, is3D, isChamferRadius, isClosedWire, isCompSolid, isCompound, isDisposeRequest, isEdge, isEmpty, isEqualShape, isErr, isErrorResponse, isFace, isFilletRadius, isInitRequest, isInside2D, isLive, isManifoldShell, isNumber, isOk, isOperationRequest, isOrientedFace, isPlanarFace, isPlanarWire, isProjectionPlane, isEmpty$1 as isQueueEmpty, isSameShape, isShape1D, isShape3D, isShell, isSolid, isSuccessResponse, isValid, isValidSolid, isVertex, isWire, iterEdges, iterFaces, iterTopo, iterVertices, iterWires, kernelCall, kernelCallRaw, kernelCallScoped, kernelError, line, linearPattern, loadFont, loft, loftAll, makeBaseBox, makeExternalGear, makeInternalGear, makePlane, makePlanetaryGear, makeProjectedEdges, manifoldShell, map, mapBoth, mapErr, match, measureArea, measureCurvatureAt, measureCurvatureAtMid, measureDistance, measureDistanceProps, measureLength, measureLinearProps, measureSurfaceProps, measureVolume, measureVolumeProps, measurement_exports as measurement, mesh, meshEdges, meshMultiLOD, minkowski, mirror, mirror2D, mirrorDrawing, mirrorJoin, modifiers_exports as modifiers, modifyStep, moduleInitError, multiSectionSweep, normalAt, offset, offsetFace, offsetWire2D, ok, or, orElse, organiseBlueprints, orientedFace, outerWire, patterns_exports as patterns, pendingCount, pipeline, pivotPlane, planarFace, planarWire, planetPlacements, pocket, pointOnSurface, polygon, polyhedron, polysideInnerRadius, polysidesBlueprint, positionOnCurve, prewarm, primitives_exports as primitives, projectEdges, projectPointOnFace, query_exports as query, queryError, rectangularPattern, registerHandler, registerKernel, registerOperation, registerShape, rejectAll, removeChild, removeHolesFromFace, replayFrom, replayHistory, resetDisposalStats, resetPerformanceStats, resize, resolve, resolve3D, resolveDirection, resolvePlane, resolveRef, reverseCurve, revolve, roof, rotate, rotate2D, rotateDrawing, roundedRectangleBlueprint, scale, scale2D, scaleDrawing, section, sectionToFace, serializeHistory, setShapeOrigin, setTagMetadata, sewShells, shape, shapeType, sharedEdges, shell, 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, split, stepCount, stepsFrom, stretch2D, subFace, supportExtrude, supportsConstraintSketch, supportsProjection, surfaceFromGrid, surfaceFromImage, sweep, tagFaces, tangentArc, tap, tapErr, textBlueprints, textMetrics, thicken, threePointArc, toBREP, toBufferGeometryData, toGroupedBufferGeometryData, toKernelVec, toLODGeometryData, toLineGeometryData, toSVGPathD, toVec2, toVec3, torus, 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, walkAssembly, wire, wireFinder, wireLoop, wiresOfFace, withKernel, withKernelDir, withKernelPnt, withKernelVec, withScope, withScopeResult, withScopeResultAsync, zip as zipResults };
|