brepjs 18.6.1 → 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 +19 -18
- package/dist/2d.d.ts +0 -1
- package/dist/2d.js +6 -5
- package/dist/{blueprint-C5LxqHCa.cjs → blueprint-B8ogGJiQ.cjs} +6 -6
- package/dist/{blueprint-CBairprN.js → blueprint-Dv45Evnu.js} +6 -6
- package/dist/{blueprintFns-CwbDuLxf.cjs → blueprintFns-BK3FYYjO.cjs} +3 -3
- package/dist/{blueprintFns-D8ST0Cf4.js → blueprintFns-a9C2g8_E.js} +2 -2
- package/dist/{boolean2D-DxZ3Kwlq.cjs → blueprintSketcher-Bei866Bt.cjs} +53 -1373
- package/dist/{boolean2D-A5u9tJYl.js → blueprintSketcher-xDsl9GXO.js} +59 -1307
- package/dist/boolean2D-DGuiEJHA.cjs +902 -0
- package/dist/boolean2D-Z7P0c012.js +855 -0
- package/dist/{booleanFns-DjZF4MJ5.js → booleanFns-CRa80qMX.js} +5 -5
- package/dist/{booleanFns-DWQMtFDN.cjs → booleanFns-qmgMQyDl.cjs} +8 -8
- package/dist/brepjs.cjs +742 -92
- package/dist/brepjs.js +662 -22
- 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 +1 -1
- package/dist/core.d.ts +0 -1
- package/dist/core.js +1 -1
- package/dist/{cornerFinder-B2CpcVV9.cjs → cornerFinder-CC8EBRCR.cjs} +2 -2
- package/dist/{cornerFinder-DGvOt2ab.js → cornerFinder-Dix2ghke.js} +2 -2
- package/dist/{curveFns-DZYE3BGO.js → curveFns-B4tWuinR.js} +1 -1
- package/dist/{curveFns-B8KJKr8-.cjs → curveFns-CD20-4fM.cjs} +1 -1
- package/dist/{drawFns-Bl865kUL.js → drawFns-BsarLfUN.js} +155 -762
- package/dist/{drawFns-h8gJBx-H.cjs → drawFns-LlOZoFyp.cjs} +193 -976
- package/dist/{extrudeFns-O2s-SFf-.js → extrudeFns-7pE8dIWz.js} +1 -1
- package/dist/{extrudeFns-BlJKAnW8.cjs → extrudeFns-DD36mWKv.cjs} +1 -1
- 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-C3smxDtp.cjs → helpers-Cyj6gaqy.cjs} +11 -10
- package/dist/{helpers-DL1f3xp0.js → helpers-vV2ONZwD.js} +6 -5
- package/dist/{historyFns-CD9qXw5j.js → historyFns-DGb61ETW.js} +4 -4
- package/dist/{historyFns-DBdWeo7Y.cjs → historyFns-DfyrPjnK.cjs} +4 -4
- package/dist/{importFns-5tcN3-fK.cjs → importFns-C-p0vl_h.cjs} +3 -3
- package/dist/{importFns-B1p3FiGS.js → importFns-Ci-L2iB3.js} +3 -3
- 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 +0 -1
- package/dist/kernel/occtWasm/booleanOps.d.ts +0 -1
- package/dist/kernel/occtWasm/constructionOps.d.ts +0 -1
- package/dist/kernel/occtWasm/curveOps.d.ts +0 -1
- package/dist/kernel/occtWasm/evolutionOps.d.ts +0 -1
- package/dist/kernel/occtWasm/helpers.d.ts +0 -1
- package/dist/kernel/occtWasm/hullOps.d.ts +0 -1
- package/dist/kernel/occtWasm/ioOps.d.ts +0 -1
- package/dist/kernel/occtWasm/kernel2dOps.d.ts +0 -1
- package/dist/kernel/occtWasm/measureOps.d.ts +0 -1
- package/dist/kernel/occtWasm/meshOps.d.ts +0 -1
- package/dist/kernel/occtWasm/modifierOps.d.ts +0 -1
- package/dist/kernel/occtWasm/occtWasmAdapter.d.ts +0 -1
- package/dist/kernel/occtWasm/occtWasmTypes.d.ts +0 -1
- package/dist/kernel/occtWasm/primitiveOps.d.ts +0 -1
- package/dist/kernel/occtWasm/repairOps.d.ts +0 -1
- package/dist/kernel/occtWasm/surfaceOps.d.ts +0 -1
- package/dist/kernel/occtWasm/sweepOps.d.ts +0 -1
- package/dist/kernel/occtWasm/topologyOps.d.ts +0 -1
- package/dist/kernel/occtWasm/transformOps.d.ts +0 -1
- 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-CHmy_Inq.cjs → measureFns-6ifSQfJt.cjs} +5 -4
- package/dist/{measureFns-CJi8erDL.js → measureFns-Io2nHE1k.js} +3 -2
- 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-t2lR4BDS.cjs → meshFns-BCRVZgPi.cjs} +2 -2
- package/dist/{meshFns-BkY1RAoC.js → meshFns-DSdkRFWq.js} +2 -2
- 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/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/{primitiveFns-DwhN--zB.cjs → primitiveFns-BH-JQPzh.cjs} +18 -17
- package/dist/{primitiveFns-Emvge_71.js → primitiveFns-C1p92ZcD.js} +6 -5
- 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.d.ts +0 -1
- package/dist/{shapeFns-CObBAJoQ.cjs → shapeFns-B7x82K11.cjs} +15 -15
- package/dist/{shapeFns-DThjHtJI.js → shapeFns-BhZ9weSI.js} +2 -2
- package/dist/shapeRef.cjs +1 -1
- package/dist/shapeRef.d.ts +0 -1
- package/dist/shapeRef.js +1 -1
- package/dist/{shapeRefFns-WMhIFuGW.js → shapeRefFns-B9PsEqWf.js} +4 -3
- package/dist/{shapeRefFns-I0MHjRAq.cjs → shapeRefFns-wDY88A8u.cjs} +6 -5
- package/dist/{shapeTypes-8vB31RfA.cjs → shapeTypes-BTt_LLbk.cjs} +6928 -7750
- package/dist/{shapeTypes-AyL8vv_O.js → shapeTypes-C--1jaT1.js} +6618 -7440
- 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-Djwgx2mj.cjs → solidBuilders-CX_197Xm.cjs} +2 -2
- package/dist/{solidBuilders-C7Xp_ikW.js → solidBuilders-Xs7VDMGD.js} +2 -2
- package/dist/{surfaceBuilders-BEnsewN9.cjs → surfaceBuilders-CYeTNW33.cjs} +24 -2
- package/dist/{surfaceBuilders-Con0IpLf.js → surfaceBuilders-CinmHCbZ.js} +19 -3
- 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-B1H43mZ_.cjs → topologyQueryFns-BU0qdNJP.cjs} +1 -341
- package/dist/{faceFns-acz86gqR.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 +0 -1
- package/dist/utils/zip.d.ts +0 -1
- package/dist/vectors.d.ts +0 -1
- 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/adapterShims.d.ts.map +0 -1
- package/dist/kernel/occtWasm/booleanOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/constructionOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/curveOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/evolutionOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/helpers.d.ts.map +0 -1
- package/dist/kernel/occtWasm/hullOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/ioOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/kernel2dOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/measureOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/meshOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/modifierOps.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/occtWasm/primitiveOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/repairOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/surfaceOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/sweepOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/topologyOps.d.ts.map +0 -1
- package/dist/kernel/occtWasm/transformOps.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/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-Br-m2PP7.cjs → arrayAccess-7pTWqkJu.cjs} +0 -0
- /package/dist/{arrayAccess-2G0pRoaC.js → arrayAccess-C5IWcxs9.js} +0 -0
- /package/dist/{workerHandler-sCf818XJ.cjs → workerHandler-C7seK7H-.cjs} +0 -0
- /package/dist/{workerHandler-BndMJVx6.js → workerHandler-DaulgMax.js} +0 -0
package/dist/brepjs.cjs
CHANGED
|
@@ -1,32 +1,37 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const
|
|
3
|
-
const require_shapeTypes = require("./shapeTypes-
|
|
2
|
+
const require_textBlueprints = require("./textBlueprints-oWhiABaY.cjs");
|
|
3
|
+
const require_shapeTypes = require("./shapeTypes-BTt_LLbk.cjs");
|
|
4
4
|
const require_vec3 = require("./vec3-S4Oh59IX.cjs");
|
|
5
5
|
const require_occtWasmAdapter = require("./occtWasmAdapter-C2VW-uYg.cjs");
|
|
6
6
|
const require_errors = require("./errors-Dv6pfNct.cjs");
|
|
7
|
-
const
|
|
7
|
+
const require_topologyQueryFns = require("./topologyQueryFns-BU0qdNJP.cjs");
|
|
8
8
|
const require_constants = require("./constants-DTorLmes.cjs");
|
|
9
9
|
const require_types = require("./types-CDkxah-M.cjs");
|
|
10
10
|
const require_vecOps = require("./vecOps-D7xplSx8.cjs");
|
|
11
11
|
const require_planeOps = require("./planeOps-CH4ruLuj.cjs");
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
12
|
+
const require_faceFns = require("./faceFns-DP7i60yJ.cjs");
|
|
13
|
+
const require_shapeFns = require("./shapeFns-B7x82K11.cjs");
|
|
14
|
+
const require_curveFns = require("./curveFns-CD20-4fM.cjs");
|
|
15
|
+
const require_meshFns = require("./meshFns-BCRVZgPi.cjs");
|
|
16
|
+
const require_arrayAccess = require("./arrayAccess-7pTWqkJu.cjs");
|
|
17
|
+
const require_surfaceBuilders = require("./surfaceBuilders-CYeTNW33.cjs");
|
|
18
|
+
const require_booleanFns = require("./booleanFns-qmgMQyDl.cjs");
|
|
19
|
+
const require_primitiveFns = require("./primitiveFns-BH-JQPzh.cjs");
|
|
20
|
+
const require_historyFns = require("./historyFns-DfyrPjnK.cjs");
|
|
21
|
+
const require_blueprintSketcher = require("./blueprintSketcher-Bei866Bt.cjs");
|
|
22
|
+
const require_helpers = require("./helpers-Cyj6gaqy.cjs");
|
|
23
|
+
const require_drawFns = require("./drawFns-LlOZoFyp.cjs");
|
|
24
|
+
const require_solidBuilders = require("./solidBuilders-CX_197Xm.cjs");
|
|
25
|
+
const require_measureFns = require("./measureFns-6ifSQfJt.cjs");
|
|
26
|
+
const require_cornerFinder = require("./cornerFinder-CC8EBRCR.cjs");
|
|
27
|
+
const require_boolean2D = require("./boolean2D-DGuiEJHA.cjs");
|
|
28
|
+
const require_blueprintFns = require("./blueprintFns-BK3FYYjO.cjs");
|
|
29
|
+
const require_importFns = require("./importFns-C-p0vl_h.cjs");
|
|
30
|
+
const require_extrudeFns = require("./extrudeFns-DD36mWKv.cjs");
|
|
31
|
+
const require_cameraFns = require("./cameraFns-1y1NyACI.cjs");
|
|
32
|
+
const require_textMetrics = require("./textMetrics-CUvtglQE.cjs");
|
|
33
|
+
const require_shapeRefFns = require("./shapeRefFns-wDY88A8u.cjs");
|
|
34
|
+
const require_workerHandler = require("./workerHandler-C7seK7H-.cjs");
|
|
30
35
|
//#region src/topology/shapeBooleans.ts
|
|
31
36
|
var BOPAlgo_GlueShift = 1;
|
|
32
37
|
var BOPAlgo_GlueFull = 2;
|
|
@@ -70,9 +75,9 @@ function withNearestPostFilter(baseFinder, nearestPoint) {
|
|
|
70
75
|
const candidates = baseFinder.findAll(shape);
|
|
71
76
|
if (candidates.length === 0) return [];
|
|
72
77
|
let bestIdx = 0;
|
|
73
|
-
let bestDist = require_vecOps.vecDistance(
|
|
78
|
+
let bestDist = require_vecOps.vecDistance(require_topologyQueryFns.vertexPosition(require_arrayAccess.firstOrThrow(candidates)), nearestPoint);
|
|
74
79
|
for (let i = 1; i < candidates.length; i++) {
|
|
75
|
-
const d = require_vecOps.vecDistance(
|
|
80
|
+
const d = require_vecOps.vecDistance(require_topologyQueryFns.vertexPosition(require_arrayAccess.getAtOrThrow(candidates, i)), nearestPoint);
|
|
76
81
|
if (d < bestDist) {
|
|
77
82
|
bestDist = d;
|
|
78
83
|
bestIdx = i;
|
|
@@ -94,9 +99,9 @@ function withNearestPostFilter(baseFinder, nearestPoint) {
|
|
|
94
99
|
function buildVertexFinder(filters) {
|
|
95
100
|
return require_helpers.createTypedFinder("vertex", filters, buildVertexFinder, (_base, withFilter) => ({
|
|
96
101
|
nearestTo: (point) => withNearestPostFilter(buildVertexFinder(filters), point),
|
|
97
|
-
atPosition: (point, tolerance = 1e-4) => withFilter((vertex) => require_vecOps.vecDistance(
|
|
102
|
+
atPosition: (point, tolerance = 1e-4) => withFilter((vertex) => require_vecOps.vecDistance(require_topologyQueryFns.vertexPosition(vertex), point) < tolerance),
|
|
98
103
|
withinBox: (min, max) => withFilter((vertex) => {
|
|
99
|
-
const pos =
|
|
104
|
+
const pos = require_topologyQueryFns.vertexPosition(vertex);
|
|
100
105
|
return pos[0] >= min[0] - 1e-6 && pos[0] <= max[0] + 1e-6 && pos[1] >= min[1] - 1e-6 && pos[1] <= max[1] + 1e-6 && pos[2] >= min[2] - 1e-6 && pos[2] <= max[2] + 1e-6;
|
|
101
106
|
}),
|
|
102
107
|
atDistance: (distance, point = [
|
|
@@ -104,7 +109,7 @@ function buildVertexFinder(filters) {
|
|
|
104
109
|
0,
|
|
105
110
|
0
|
|
106
111
|
], tolerance = 1e-4) => withFilter((vertex) => {
|
|
107
|
-
const pos =
|
|
112
|
+
const pos = require_topologyQueryFns.vertexPosition(vertex);
|
|
108
113
|
return Math.abs(require_vecOps.vecDistance(pos, point) - distance) < tolerance;
|
|
109
114
|
})
|
|
110
115
|
}));
|
|
@@ -412,10 +417,10 @@ function convexHull(points) {
|
|
|
412
417
|
* type is 'sphere'.
|
|
413
418
|
*/
|
|
414
419
|
function detectSphere(shape) {
|
|
415
|
-
const faces =
|
|
420
|
+
const faces = require_topologyQueryFns.getFaces(shape);
|
|
416
421
|
if (faces.length !== 1) return null;
|
|
417
422
|
const face = require_vec3.wasmIndex(faces, 0);
|
|
418
|
-
if (
|
|
423
|
+
if (require_topologyQueryFns.getCachedSurfaceType(face) !== "sphere") return null;
|
|
419
424
|
const faceArea = require_shapeTypes.getKernel().area(face.wrapped);
|
|
420
425
|
return Math.sqrt(faceArea / (4 * Math.PI));
|
|
421
426
|
}
|
|
@@ -445,8 +450,8 @@ function minkowskiSphere(shape, radius, tolerance) {
|
|
|
445
450
|
function minkowskiGeneral(shape, tool, tolerance) {
|
|
446
451
|
const kernel = require_shapeTypes.getKernel();
|
|
447
452
|
try {
|
|
448
|
-
const shapeVerts =
|
|
449
|
-
const toolVerts =
|
|
453
|
+
const shapeVerts = require_topologyQueryFns.getVertices(shape);
|
|
454
|
+
const toolVerts = require_topologyQueryFns.getVertices(tool);
|
|
450
455
|
if (shapeVerts.length === 0 || toolVerts.length === 0) return require_errors.err(require_errors.kernelError(require_errors.BrepErrorCode.MINKOWSKI_FAILED, "Minkowski sum: one or both shapes have no vertices", void 0, { operation: "minkowski" }));
|
|
451
456
|
const sumPoints = [];
|
|
452
457
|
for (const sv of shapeVerts) {
|
|
@@ -939,7 +944,7 @@ function computeStraightSkeletonImpl(polygon) {
|
|
|
939
944
|
* evaluation. The kernel builds the actual B-Rep faces and solid.
|
|
940
945
|
*/
|
|
941
946
|
function extractPolygon(w) {
|
|
942
|
-
const pts =
|
|
947
|
+
const pts = require_topologyQueryFns.getEdges(w).map((e) => {
|
|
943
948
|
const pt = require_curveFns.curveStartPoint(e);
|
|
944
949
|
return {
|
|
945
950
|
x: pt[0],
|
|
@@ -1411,7 +1416,7 @@ function checkInterference(shape1, shape2, tolerance = 1e-6) {
|
|
|
1411
1416
|
*/
|
|
1412
1417
|
function checkAllInterferences(shapes, tolerance = 1e-6) {
|
|
1413
1418
|
const pairs = [];
|
|
1414
|
-
const boxes = shapes.map((s) =>
|
|
1419
|
+
const boxes = shapes.map((s) => require_topologyQueryFns.getBounds(s));
|
|
1415
1420
|
shapes.forEach((si, i) => {
|
|
1416
1421
|
for (let j = i + 1; j < shapes.length; j++) {
|
|
1417
1422
|
if (aabbDisjoint(require_vec3.wasmIndex(boxes, i), require_vec3.wasmIndex(boxes, j), tolerance)) continue;
|
|
@@ -2119,7 +2124,7 @@ function chamfer(shape, edgesOrDistance, maybeDistance) {
|
|
|
2119
2124
|
}
|
|
2120
2125
|
const normalized = normalizeChamferDistance(distance);
|
|
2121
2126
|
if (normalized.mode === "distAngle") {
|
|
2122
|
-
const selectedEdges = edges ??
|
|
2127
|
+
const selectedEdges = edges ?? require_topologyQueryFns.getEdges(s);
|
|
2123
2128
|
return require_primitiveFns.chamferDistAngle(s, [...selectedEdges], normalized.distance, normalized.angle);
|
|
2124
2129
|
}
|
|
2125
2130
|
return require_primitiveFns.chamfer(s, edges, normalized.distance);
|
|
@@ -2168,7 +2173,7 @@ function meshEdges(shape, options) {
|
|
|
2168
2173
|
}
|
|
2169
2174
|
/** Get a summary description of a shape. */
|
|
2170
2175
|
function describe(shape) {
|
|
2171
|
-
return
|
|
2176
|
+
return require_topologyQueryFns.describe(resolve(shape));
|
|
2172
2177
|
}
|
|
2173
2178
|
/** Serialize a shape to BREP format. */
|
|
2174
2179
|
function toBREP(shape) {
|
|
@@ -2224,14 +2229,14 @@ function revolve(face, options) {
|
|
|
2224
2229
|
*/
|
|
2225
2230
|
function loft(wires, options) {
|
|
2226
2231
|
const resolvedWires = wires.map((w) => resolve(w));
|
|
2227
|
-
return
|
|
2232
|
+
return require_textBlueprints.loft(resolvedWires, options);
|
|
2228
2233
|
}
|
|
2229
2234
|
//#endregion
|
|
2230
2235
|
//#region src/operations/compoundOpsFns.ts
|
|
2231
2236
|
/** Resolve a face selection: Face, FinderFn, or default (top Z-facing face). */
|
|
2232
2237
|
function resolveTargetFace(shape, faceSpec) {
|
|
2233
2238
|
if (faceSpec === void 0) {
|
|
2234
|
-
const faces =
|
|
2239
|
+
const faces = require_topologyQueryFns.getFaces(shape);
|
|
2235
2240
|
if (faces.length === 0) return require_errors.err(require_errors.validationError(require_errors.BrepErrorCode.COMPOUND_NO_FACES, "compoundOps: shape has no faces"));
|
|
2236
2241
|
let best = require_arrayAccess.firstOrThrow(faces);
|
|
2237
2242
|
let bestZ = require_faceFns.faceCenter(best)[2];
|
|
@@ -2286,7 +2291,7 @@ function drill(shape, options) {
|
|
|
2286
2291
|
let tool;
|
|
2287
2292
|
if (options.depth !== void 0) tool = require_solidBuilders.makeCylinder(radius, options.depth, pos, dir);
|
|
2288
2293
|
else {
|
|
2289
|
-
const b =
|
|
2294
|
+
const b = require_topologyQueryFns.getBounds(s);
|
|
2290
2295
|
const corners = [
|
|
2291
2296
|
[
|
|
2292
2297
|
b.xMin,
|
|
@@ -2506,7 +2511,7 @@ function createWrappedBase(val) {
|
|
|
2506
2511
|
0,
|
|
2507
2512
|
1
|
|
2508
2513
|
] })),
|
|
2509
|
-
bounds: () =>
|
|
2514
|
+
bounds: () => require_topologyQueryFns.getBounds(val),
|
|
2510
2515
|
describe: () => describe(val),
|
|
2511
2516
|
clone: () => wrapAny(unwrapOrThrow(clone(val))),
|
|
2512
2517
|
mesh: (opts) => mesh(val, opts),
|
|
@@ -2567,10 +2572,10 @@ function createWrapped3D(val) {
|
|
|
2567
2572
|
area: () => unwrapOrThrow(require_measureFns.measureArea(val)),
|
|
2568
2573
|
volumeProps: () => unwrapOrThrow(require_measureFns.measureVolumeProps(val)),
|
|
2569
2574
|
surfaceProps: () => unwrapOrThrow(require_measureFns.measureSurfaceProps(val)),
|
|
2570
|
-
edges: () =>
|
|
2571
|
-
faces: () =>
|
|
2572
|
-
wires: () =>
|
|
2573
|
-
vertices: () =>
|
|
2575
|
+
edges: () => require_topologyQueryFns.getEdges(val),
|
|
2576
|
+
faces: () => require_topologyQueryFns.getFaces(val),
|
|
2577
|
+
wires: () => require_topologyQueryFns.getWires(val),
|
|
2578
|
+
vertices: () => require_topologyQueryFns.getVertices(val),
|
|
2574
2579
|
linearPattern: (dir, count, spacing) => wrap3D(unwrapOrThrow(require_historyFns.linearPattern(val, dir, count, spacing))),
|
|
2575
2580
|
circularPattern: (axis, count, angle) => wrap3D(unwrapOrThrow(require_historyFns.circularPattern(val, axis, count, angle)))
|
|
2576
2581
|
};
|
|
@@ -2623,9 +2628,644 @@ function shape(s) {
|
|
|
2623
2628
|
}
|
|
2624
2629
|
throw new Error("shape() requires a Sketch or branded shape type");
|
|
2625
2630
|
}
|
|
2631
|
+
var DEFAULT_CLEARANCE = .25;
|
|
2632
|
+
var inv = (alpha) => Math.tan(alpha) - alpha;
|
|
2633
|
+
function involutePoint(rb, alpha, theta0, sign) {
|
|
2634
|
+
const r = rb / Math.cos(alpha);
|
|
2635
|
+
const theta = theta0 + sign * (Math.tan(alpha) - alpha);
|
|
2636
|
+
return [
|
|
2637
|
+
r * Math.cos(theta),
|
|
2638
|
+
r * Math.sin(theta),
|
|
2639
|
+
0
|
|
2640
|
+
];
|
|
2641
|
+
}
|
|
2642
|
+
function cosineSpaceFlankSamples(rb, alphaMax, theta0, count, sign) {
|
|
2643
|
+
const pts = [];
|
|
2644
|
+
for (let i = 0; i <= count; i++) {
|
|
2645
|
+
const t = .5 - .5 * Math.cos(i / count * Math.PI);
|
|
2646
|
+
pts.push(involutePoint(rb, t * alphaMax, theta0, sign));
|
|
2647
|
+
}
|
|
2648
|
+
return pts;
|
|
2649
|
+
}
|
|
2650
|
+
function adaptiveSampleCount(moduleSize) {
|
|
2651
|
+
return Math.max(16, Math.round(8 * Math.sqrt(moduleSize)));
|
|
2652
|
+
}
|
|
2653
|
+
function gearGeometry(z, moduleSize, alpha, shift, clearance, backlashHalf, isInternal) {
|
|
2654
|
+
const rPitch = z * moduleSize / 2;
|
|
2655
|
+
const rb = rPitch * Math.cos(alpha);
|
|
2656
|
+
const addendum = moduleSize * (1 + shift);
|
|
2657
|
+
const dedendum = moduleSize * (1 + clearance - shift);
|
|
2658
|
+
const rTip = isInternal ? rPitch - moduleSize * (1 - shift) : rPitch + addendum;
|
|
2659
|
+
const rRoot = isInternal ? rPitch + moduleSize * (1 + clearance + shift) : rPitch - dedendum;
|
|
2660
|
+
const blAng = backlashHalf / rPitch;
|
|
2661
|
+
const halfToothAngle = (Math.PI / 2 + 2 * shift * Math.tan(alpha)) / z + (isInternal ? blAng : -blAng);
|
|
2662
|
+
const rOuter = isInternal ? rRoot : rTip;
|
|
2663
|
+
return {
|
|
2664
|
+
rPitch,
|
|
2665
|
+
rb,
|
|
2666
|
+
rTip,
|
|
2667
|
+
rRoot,
|
|
2668
|
+
alphaPitch: alpha,
|
|
2669
|
+
halfToothAngle,
|
|
2670
|
+
alphaTip: rOuter <= rb ? 0 : Math.acos(Math.min(1, rb / rOuter)),
|
|
2671
|
+
toothPitch: 2 * Math.PI / z,
|
|
2672
|
+
isInternal
|
|
2673
|
+
};
|
|
2674
|
+
}
|
|
2675
|
+
/**
|
|
2676
|
+
* Solve `inv(αw) = inv(α) + 2·(summedShift)·tan α / totalTeeth` by bisection.
|
|
2677
|
+
*
|
|
2678
|
+
* For external-external mesh: summedShift = x1 + x2, totalTeeth = z1 + z2.
|
|
2679
|
+
* For external-internal mesh: summedShift = xInternal − xExternal, totalTeeth = zInternal − zExternal.
|
|
2680
|
+
*
|
|
2681
|
+
* Returns Err for shifts that push αw outside (epsilon, π/2).
|
|
2682
|
+
*/
|
|
2683
|
+
function solveWorkingPressureAngle(alpha, summedShift, totalTeeth) {
|
|
2684
|
+
if (summedShift === 0) return require_errors.ok(alpha);
|
|
2685
|
+
const target = inv(alpha) + 2 * summedShift * Math.tan(alpha) / totalTeeth;
|
|
2686
|
+
const epsilon = 1e-4;
|
|
2687
|
+
let lo, hi;
|
|
2688
|
+
if (target > inv(alpha)) {
|
|
2689
|
+
lo = alpha;
|
|
2690
|
+
hi = Math.PI / 2 - 1e-6;
|
|
2691
|
+
} else {
|
|
2692
|
+
lo = epsilon;
|
|
2693
|
+
hi = alpha;
|
|
2694
|
+
}
|
|
2695
|
+
if (target > inv(hi) || target < inv(lo)) return require_errors.err(require_errors.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, {
|
|
2696
|
+
target,
|
|
2697
|
+
invLo: inv(lo),
|
|
2698
|
+
invHi: inv(hi)
|
|
2699
|
+
}));
|
|
2700
|
+
for (let i = 0; i < 50; i++) {
|
|
2701
|
+
const mid = .5 * (lo + hi);
|
|
2702
|
+
if (inv(mid) < target) lo = mid;
|
|
2703
|
+
else hi = mid;
|
|
2704
|
+
}
|
|
2705
|
+
return require_errors.ok(.5 * (lo + hi));
|
|
2706
|
+
}
|
|
2707
|
+
/** Convenience: working PA for an external-external mesh (sun-planet). */
|
|
2708
|
+
function solveSunPlanetWorkingPressureAngle(alpha, xSun, xPlanet, zSun, zPlanet) {
|
|
2709
|
+
return solveWorkingPressureAngle(alpha, xSun + xPlanet, zSun + zPlanet);
|
|
2710
|
+
}
|
|
2711
|
+
/** Convenience: working PA for an external-internal mesh (planet-ring). */
|
|
2712
|
+
function solvePlanetRingWorkingPressureAngle(alpha, xPlanet, xRing, zPlanet, zRing) {
|
|
2713
|
+
return solveWorkingPressureAngle(alpha, xRing - xPlanet, zRing - zPlanet);
|
|
2714
|
+
}
|
|
2715
|
+
function workingCenterDistance(zs, zp, moduleSize, alpha, alphaW) {
|
|
2716
|
+
return (zs + zp) * moduleSize * Math.cos(alpha) / (2 * Math.cos(alphaW));
|
|
2717
|
+
}
|
|
2718
|
+
function validatePlanetary(zs, zp, n, planetShift) {
|
|
2719
|
+
if (!Number.isInteger(zs) || !Number.isInteger(zp) || !Number.isInteger(n)) return require_errors.err(require_errors.validationError("GEAR_NON_INTEGER_TEETH", "tooth counts and planet count must be integers"));
|
|
2720
|
+
if (zs < 4 || zp < 4 || n < 2) return require_errors.err(require_errors.validationError("GEAR_TEETH_TOO_FEW", "zs ≥ 4, zp ≥ 4, N ≥ 2 required"));
|
|
2721
|
+
if ((2 * zs + 2 * zp) % n !== 0) return require_errors.err(require_errors.validationError("GEAR_ASSEMBLY", `(2·zs + 2·zp) must be divisible by N — got ${2 * zs + 2 * zp} mod ${n} = ${(2 * zs + 2 * zp) % n}`));
|
|
2722
|
+
const planetTipDiameter = zp + 2 + 2 * planetShift;
|
|
2723
|
+
const minClearance = (zs + zp) * Math.sin(Math.PI / n);
|
|
2724
|
+
if (minClearance <= planetTipDiameter) return require_errors.err(require_errors.validationError("GEAR_PLANET_COLLISION", `planet tips would collide: (zs+zp)·sin(π/N) = ${minClearance.toFixed(3)} ≤ planet tip = ${planetTipDiameter.toFixed(3)}`));
|
|
2725
|
+
return require_errors.ok(void 0);
|
|
2726
|
+
}
|
|
2727
|
+
function externalExternalContactRatio(ra1, rb1, ra2, rb2, centerDistance, moduleSize, alpha, alphaW) {
|
|
2728
|
+
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));
|
|
2729
|
+
}
|
|
2730
|
+
function externalInternalContactRatio(ra_p, rb_p, ra_r, rb_r, centerDistance, moduleSize, alpha, alphaW) {
|
|
2731
|
+
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));
|
|
2732
|
+
}
|
|
2733
|
+
function undercutMinimumShift(z, alpha) {
|
|
2734
|
+
return 1 - z * Math.sin(alpha) * Math.sin(alpha) / 2;
|
|
2735
|
+
}
|
|
2736
|
+
function undercutDeficit(z, alpha, shift) {
|
|
2737
|
+
return Math.max(0, undercutMinimumShift(z, alpha) - shift);
|
|
2738
|
+
}
|
|
2739
|
+
function lewisYFactor(z) {
|
|
2740
|
+
if (z < 8) return .2;
|
|
2741
|
+
return .485 - 2.88 / z;
|
|
2742
|
+
}
|
|
2743
|
+
function lewisRootStress(appliedTorqueNm, moduleSize, faceWidth, z) {
|
|
2744
|
+
const torqueNmm = appliedTorqueNm * 1e3;
|
|
2745
|
+
const Y = lewisYFactor(z);
|
|
2746
|
+
if (Y <= 0 || faceWidth <= 0 || moduleSize <= 0) return Infinity;
|
|
2747
|
+
return 2 * torqueNmm / (z * moduleSize * moduleSize * faceWidth * Y);
|
|
2748
|
+
}
|
|
2749
|
+
/**
|
|
2750
|
+
* Dolan-Broghamer fit is for *external* spur teeth. Set `isInternal=true` on
|
|
2751
|
+
* ring gears to apply Niemann's 0.85× reduction — the concave root fillet has
|
|
2752
|
+
* a gentler geometric riser (matches AGMA 908-B89 trend).
|
|
2753
|
+
*/
|
|
2754
|
+
function filletStressConcentrationFactor(z, alpha, isInternal = false) {
|
|
2755
|
+
const kf20 = 1.4 + 6.5 / z;
|
|
2756
|
+
const alphaDeg = alpha * 180 / Math.PI;
|
|
2757
|
+
const kf = kf20 * Math.pow(20 / alphaDeg, .15);
|
|
2758
|
+
return isInternal ? kf * .85 : kf;
|
|
2759
|
+
}
|
|
2760
|
+
function lewisRootStressCorrected(appliedTorqueNm, moduleSize, faceWidth, z, alpha, isInternal = false) {
|
|
2761
|
+
return lewisRootStress(appliedTorqueNm, moduleSize, faceWidth, z) * filletStressConcentrationFactor(z, alpha, isInternal);
|
|
2762
|
+
}
|
|
2763
|
+
function backlashHalf(totalBacklash) {
|
|
2764
|
+
return totalBacklash / 2;
|
|
2765
|
+
}
|
|
2766
|
+
function ringTeeth(zs, zp) {
|
|
2767
|
+
return zs + 2 * zp;
|
|
2768
|
+
}
|
|
2769
|
+
function evenToothPhaseOffset(z) {
|
|
2770
|
+
return z % 2 === 0 ? Math.PI / z : 0;
|
|
2771
|
+
}
|
|
2772
|
+
function planetSelfRotationAngle(orbitalAngle, zs, zp) {
|
|
2773
|
+
return orbitalAngle * (1 + zs / zp) + evenToothPhaseOffset(zp);
|
|
2774
|
+
}
|
|
2775
|
+
/**
|
|
2776
|
+
* Compute the rigid placement of each planet without building any solid.
|
|
2777
|
+
*
|
|
2778
|
+
* Pairs with one materialized planet from `makeExternalGear` to support
|
|
2779
|
+
* GPU-instanced rendering: mesh once, draw N times under these transforms.
|
|
2780
|
+
* Defaults match {@link PlanetaryGearParams}.
|
|
2781
|
+
*/
|
|
2782
|
+
function planetPlacements(params = {}) {
|
|
2783
|
+
const moduleSize = params.moduleSize ?? 3;
|
|
2784
|
+
const sunTeeth = params.sunTeeth ?? 15;
|
|
2785
|
+
const planetTeeth = params.planetTeeth ?? 12;
|
|
2786
|
+
const numPlanets = params.numPlanets ?? 3;
|
|
2787
|
+
const alpha = (params.pressureAngleDeg ?? 20) * Math.PI / 180;
|
|
2788
|
+
const sunShift = params.sunShift ?? 0;
|
|
2789
|
+
const planetShift = params.planetShift ?? 0;
|
|
2790
|
+
const validation = validatePlanetary(sunTeeth, planetTeeth, numPlanets, planetShift);
|
|
2791
|
+
if (require_errors.isErr(validation)) return validation;
|
|
2792
|
+
const sp = solveSunPlanetWorkingPressureAngle(alpha, sunShift, planetShift, sunTeeth, planetTeeth);
|
|
2793
|
+
if (require_errors.isErr(sp)) return sp;
|
|
2794
|
+
const centerDistance = workingCenterDistance(sunTeeth, planetTeeth, moduleSize, alpha, sp.value);
|
|
2795
|
+
const placements = [];
|
|
2796
|
+
for (let i = 0; i < numPlanets; i++) {
|
|
2797
|
+
const orbital = i * 2 * Math.PI / numPlanets;
|
|
2798
|
+
const selfRot = planetSelfRotationAngle(orbital, sunTeeth, planetTeeth);
|
|
2799
|
+
placements.push({
|
|
2800
|
+
rotationDeg: selfRot * 180 / Math.PI,
|
|
2801
|
+
position: [
|
|
2802
|
+
centerDistance * Math.cos(orbital),
|
|
2803
|
+
centerDistance * Math.sin(orbital),
|
|
2804
|
+
0
|
|
2805
|
+
]
|
|
2806
|
+
});
|
|
2807
|
+
}
|
|
2808
|
+
return require_errors.ok(placements);
|
|
2809
|
+
}
|
|
2810
|
+
//#endregion
|
|
2811
|
+
//#region src/gear/gearProfile.ts
|
|
2812
|
+
function buildToothPeriodEdges(tm, toothIndex, totalTeeth, samples, scope) {
|
|
2813
|
+
const center = toothIndex * tm.toothPitch;
|
|
2814
|
+
const nextCenter = (toothIndex + 1) % totalTeeth * tm.toothPitch;
|
|
2815
|
+
const invPitch = inv(tm.alphaPitch);
|
|
2816
|
+
const thetaLeft = center - tm.halfToothAngle - invPitch;
|
|
2817
|
+
const thetaRight = center + tm.halfToothAngle + invPitch;
|
|
2818
|
+
const leftFlank = cosineSpaceFlankSamples(tm.rb, tm.alphaTip, thetaLeft, samples, 1);
|
|
2819
|
+
const rightFlank = cosineSpaceFlankSamples(tm.rb, tm.alphaTip, thetaRight, samples, -1).reverse();
|
|
2820
|
+
const leftBase = require_arrayAccess.firstOrThrow(leftFlank);
|
|
2821
|
+
const leftTip = require_arrayAccess.lastOrThrow(leftFlank);
|
|
2822
|
+
const rightTip = require_arrayAccess.firstOrThrow(rightFlank);
|
|
2823
|
+
const rightBase = require_arrayAccess.lastOrThrow(rightFlank);
|
|
2824
|
+
const edges = [];
|
|
2825
|
+
const push = (e) => {
|
|
2826
|
+
scope.register(e);
|
|
2827
|
+
edges.push(e);
|
|
2828
|
+
};
|
|
2829
|
+
const needsRadialBridge = tm.isInternal ? tm.rb < tm.rRoot : tm.rb > tm.rRoot;
|
|
2830
|
+
if (needsRadialBridge) push(require_surfaceBuilders.makeLine([
|
|
2831
|
+
tm.rRoot * Math.cos(thetaLeft),
|
|
2832
|
+
tm.rRoot * Math.sin(thetaLeft),
|
|
2833
|
+
0
|
|
2834
|
+
], leftBase));
|
|
2835
|
+
const interpTol = tm.rPitch * 1e-5;
|
|
2836
|
+
const leftEdge = require_surfaceBuilders.makeBSplineInterpolation(leftFlank, { tolerance: interpTol });
|
|
2837
|
+
if (require_errors.isErr(leftEdge)) return leftEdge;
|
|
2838
|
+
push(leftEdge.value);
|
|
2839
|
+
push(require_surfaceBuilders.makeThreePointArc(leftTip, [
|
|
2840
|
+
tm.rTip * Math.cos(center),
|
|
2841
|
+
tm.rTip * Math.sin(center),
|
|
2842
|
+
0
|
|
2843
|
+
], rightTip));
|
|
2844
|
+
const rightEdge = require_surfaceBuilders.makeBSplineInterpolation(rightFlank, { tolerance: interpTol });
|
|
2845
|
+
if (require_errors.isErr(rightEdge)) return rightEdge;
|
|
2846
|
+
push(rightEdge.value);
|
|
2847
|
+
if (needsRadialBridge) push(require_surfaceBuilders.makeLine(rightBase, [
|
|
2848
|
+
tm.rRoot * Math.cos(thetaRight),
|
|
2849
|
+
tm.rRoot * Math.sin(thetaRight),
|
|
2850
|
+
0
|
|
2851
|
+
]));
|
|
2852
|
+
const rootEndAngle = nextCenter - tm.halfToothAngle - invPitch;
|
|
2853
|
+
let midAngle = .5 * (thetaRight + rootEndAngle);
|
|
2854
|
+
if (rootEndAngle < thetaRight) midAngle += Math.PI;
|
|
2855
|
+
push(require_surfaceBuilders.makeThreePointArc(needsRadialBridge ? [
|
|
2856
|
+
tm.rRoot * Math.cos(thetaRight),
|
|
2857
|
+
tm.rRoot * Math.sin(thetaRight),
|
|
2858
|
+
0
|
|
2859
|
+
] : rightBase, [
|
|
2860
|
+
tm.rRoot * Math.cos(midAngle),
|
|
2861
|
+
tm.rRoot * Math.sin(midAngle),
|
|
2862
|
+
0
|
|
2863
|
+
], needsRadialBridge ? [
|
|
2864
|
+
tm.rRoot * Math.cos(rootEndAngle),
|
|
2865
|
+
tm.rRoot * Math.sin(rootEndAngle),
|
|
2866
|
+
0
|
|
2867
|
+
] : [
|
|
2868
|
+
tm.rb * Math.cos(rootEndAngle),
|
|
2869
|
+
tm.rb * Math.sin(rootEndAngle),
|
|
2870
|
+
0
|
|
2871
|
+
]));
|
|
2872
|
+
return require_errors.ok(edges);
|
|
2873
|
+
}
|
|
2874
|
+
function makeExternalGearProfileWire(params) {
|
|
2875
|
+
return makeProfileWire(params, false);
|
|
2876
|
+
}
|
|
2877
|
+
function makeInternalGearProfileWire(params) {
|
|
2878
|
+
return makeProfileWire(params, true);
|
|
2879
|
+
}
|
|
2880
|
+
function makeProfileWire(params, isInternal) {
|
|
2881
|
+
try {
|
|
2882
|
+
var _usingCtx$2 = require_shapeTypes._usingCtx();
|
|
2883
|
+
const { teeth, moduleSize, pressureAngle, shift, clearance, flankThinning, samples = adaptiveSampleCount(moduleSize) } = params;
|
|
2884
|
+
if (teeth < 4) return require_errors.err(require_errors.validationError("GEAR_TEETH_TOO_FEW", `gear needs ≥ 4 teeth, got ${teeth}`));
|
|
2885
|
+
if (moduleSize <= 0) return require_errors.err(require_errors.validationError("GEAR_MODULE_NONPOSITIVE", `module must be > 0, got ${moduleSize}`));
|
|
2886
|
+
const tm = gearGeometry(teeth, moduleSize, pressureAngle, shift, clearance, flankThinning, isInternal);
|
|
2887
|
+
const scope = _usingCtx$2.u(new require_shapeTypes.DisposalScope());
|
|
2888
|
+
const allEdges = [];
|
|
2889
|
+
for (let i = 0; i < teeth; i++) {
|
|
2890
|
+
const periodEdges = buildToothPeriodEdges(tm, i, teeth, samples, scope);
|
|
2891
|
+
if (require_errors.isErr(periodEdges)) return periodEdges;
|
|
2892
|
+
allEdges.push(...periodEdges.value);
|
|
2893
|
+
}
|
|
2894
|
+
const wireResult = require_surfaceBuilders.assembleWire(allEdges);
|
|
2895
|
+
if (require_errors.isErr(wireResult)) return wireResult;
|
|
2896
|
+
return require_errors.ok(wireResult.value);
|
|
2897
|
+
} catch (_) {
|
|
2898
|
+
_usingCtx$2.e = _;
|
|
2899
|
+
} finally {
|
|
2900
|
+
_usingCtx$2.d();
|
|
2901
|
+
}
|
|
2902
|
+
}
|
|
2903
|
+
//#endregion
|
|
2904
|
+
//#region src/gear/gearFns.ts
|
|
2905
|
+
function makeExternalGear(params) {
|
|
2906
|
+
const { teeth, moduleSize, thickness, pressureAngleDeg = 20, shift = 0, clearance = DEFAULT_CLEARANCE, flankThinning = 0, bore = 0, samples } = params;
|
|
2907
|
+
if (thickness <= 0) return require_errors.err(require_errors.validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
2908
|
+
if (samples !== void 0 && (!Number.isInteger(samples) || samples < 1)) return require_errors.err(require_errors.validationError("GEAR_SAMPLES_INVALID", `samples must be a positive integer; got ${String(samples)}`));
|
|
2909
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
2910
|
+
const geom = gearGeometry(teeth, moduleSize, alpha, shift, clearance, flankThinning, false);
|
|
2911
|
+
if (bore > 0 && bore >= 2 * geom.rRoot) return require_errors.err(require_errors.validationError("GEAR_BORE_TOO_LARGE", `bore diameter ${bore.toFixed(2)} ≥ root diameter ${(2 * geom.rRoot).toFixed(2)} — would erase the gear teeth`));
|
|
2912
|
+
const wireResult = makeExternalGearProfileWire({
|
|
2913
|
+
teeth,
|
|
2914
|
+
moduleSize,
|
|
2915
|
+
pressureAngle: alpha,
|
|
2916
|
+
shift,
|
|
2917
|
+
clearance,
|
|
2918
|
+
flankThinning,
|
|
2919
|
+
...samples !== void 0 ? { samples } : {}
|
|
2920
|
+
});
|
|
2921
|
+
if (require_errors.isErr(wireResult)) return wireResult;
|
|
2922
|
+
const diagnostics = externalGearDiagnostics(teeth, alpha, shift);
|
|
2923
|
+
return finalizeExternalSolid(wireResult.value, thickness, bore, geom, diagnostics);
|
|
2924
|
+
}
|
|
2925
|
+
function makeInternalGear(params) {
|
|
2926
|
+
const { teeth, moduleSize, thickness, pressureAngleDeg = 20, shift = 0, clearance = DEFAULT_CLEARANCE, flankThinning = 0, ringWallThickness = 2 * params.moduleSize, samples } = params;
|
|
2927
|
+
if (thickness <= 0) return require_errors.err(require_errors.validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
2928
|
+
if (ringWallThickness <= 0) return require_errors.err(require_errors.validationError("GEAR_WALL_NONPOSITIVE", "ringWallThickness must be > 0"));
|
|
2929
|
+
if (samples !== void 0 && (!Number.isInteger(samples) || samples < 1)) return require_errors.err(require_errors.validationError("GEAR_SAMPLES_INVALID", `samples must be a positive integer; got ${String(samples)}`));
|
|
2930
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
2931
|
+
const innerWireResult = makeInternalGearProfileWire({
|
|
2932
|
+
teeth,
|
|
2933
|
+
moduleSize,
|
|
2934
|
+
pressureAngle: alpha,
|
|
2935
|
+
shift,
|
|
2936
|
+
clearance,
|
|
2937
|
+
flankThinning,
|
|
2938
|
+
...samples !== void 0 ? { samples } : {}
|
|
2939
|
+
});
|
|
2940
|
+
if (require_errors.isErr(innerWireResult)) return innerWireResult;
|
|
2941
|
+
const geom = gearGeometry(teeth, moduleSize, alpha, shift, clearance, flankThinning, true);
|
|
2942
|
+
const outerWireResult = makeOuterCircleWire(geom.rPitch + ringWallThickness);
|
|
2943
|
+
if (require_errors.isErr(outerWireResult)) return outerWireResult;
|
|
2944
|
+
return finalizeInternalSolid(outerWireResult.value, innerWireResult.value, thickness, geom, []);
|
|
2945
|
+
}
|
|
2946
|
+
/** Diagnostics for an external (rack-cut) gear in isolation. Not valid for internal gears. */
|
|
2947
|
+
function externalGearDiagnostics(teeth, alpha, shift) {
|
|
2948
|
+
const deficit = undercutDeficit(teeth, alpha, shift);
|
|
2949
|
+
if (deficit <= 0) return [];
|
|
2950
|
+
return [{
|
|
2951
|
+
code: "UNDERCUT_RISK",
|
|
2952
|
+
severity: "warning",
|
|
2953
|
+
message: `gear is undercut: increase shift by ${deficit.toFixed(3)} to avoid (z=${teeth})`,
|
|
2954
|
+
context: {
|
|
2955
|
+
deficit,
|
|
2956
|
+
teeth
|
|
2957
|
+
}
|
|
2958
|
+
}];
|
|
2959
|
+
}
|
|
2960
|
+
function makePlanetaryGear(params) {
|
|
2961
|
+
const resolved = resolvePlanetaryParams(params);
|
|
2962
|
+
if (require_errors.isErr(resolved)) return resolved;
|
|
2963
|
+
const cfg = resolved.value;
|
|
2964
|
+
const stages = buildPlanetaryStages(cfg);
|
|
2965
|
+
if (require_errors.isErr(stages)) return stages;
|
|
2966
|
+
const { sun, planet, ring } = stages.value;
|
|
2967
|
+
const metrics = computeMeshMetrics(cfg, sun, planet, ring);
|
|
2968
|
+
const planets = placePlanets(planet.solid, cfg);
|
|
2969
|
+
planet.solid.delete();
|
|
2970
|
+
const ringPhased = applyRingPhase(ring.solid, cfg.zr);
|
|
2971
|
+
const diagnostics = collectDiagnostics(cfg, metrics);
|
|
2972
|
+
return require_errors.ok({
|
|
2973
|
+
sun: sun.solid,
|
|
2974
|
+
planets,
|
|
2975
|
+
ring: ringPhased,
|
|
2976
|
+
ringTeeth: cfg.zr,
|
|
2977
|
+
workingPressureAngle: cfg.alphaW_sp,
|
|
2978
|
+
centerDistance: cfg.centerDistance,
|
|
2979
|
+
contactRatio: {
|
|
2980
|
+
sunPlanet: metrics.crSunPlanet,
|
|
2981
|
+
planetRing: metrics.crPlanetRing
|
|
2982
|
+
},
|
|
2983
|
+
undercutDeficit: {
|
|
2984
|
+
sun: metrics.undercutSun,
|
|
2985
|
+
planet: metrics.undercutPlanet
|
|
2986
|
+
},
|
|
2987
|
+
...metrics.lewisStress ? { lewisStress: metrics.lewisStress } : {},
|
|
2988
|
+
...metrics.stressConcentrationFactor ? { stressConcentrationFactor: metrics.stressConcentrationFactor } : {},
|
|
2989
|
+
diagnostics
|
|
2990
|
+
});
|
|
2991
|
+
}
|
|
2992
|
+
function buildPlanetaryStages(cfg) {
|
|
2993
|
+
const samplesField = cfg.samples !== void 0 ? { samples: cfg.samples } : {};
|
|
2994
|
+
const common = {
|
|
2995
|
+
moduleSize: cfg.moduleSize,
|
|
2996
|
+
thickness: cfg.thickness,
|
|
2997
|
+
pressureAngleDeg: cfg.pressureAngleDeg,
|
|
2998
|
+
clearance: cfg.clearance,
|
|
2999
|
+
flankThinning: cfg.bHalf,
|
|
3000
|
+
...samplesField
|
|
3001
|
+
};
|
|
3002
|
+
const sun = makeExternalGear({
|
|
3003
|
+
...common,
|
|
3004
|
+
teeth: cfg.sunTeeth,
|
|
3005
|
+
shift: cfg.sunShift,
|
|
3006
|
+
bore: cfg.sunBore
|
|
3007
|
+
});
|
|
3008
|
+
if (require_errors.isErr(sun)) return sun;
|
|
3009
|
+
const planet = makeExternalGear({
|
|
3010
|
+
...common,
|
|
3011
|
+
teeth: cfg.planetTeeth,
|
|
3012
|
+
shift: cfg.planetShift,
|
|
3013
|
+
bore: cfg.planetBore
|
|
3014
|
+
});
|
|
3015
|
+
if (require_errors.isErr(planet)) {
|
|
3016
|
+
sun.value.solid.delete();
|
|
3017
|
+
return planet;
|
|
3018
|
+
}
|
|
3019
|
+
const ring = makeInternalGear({
|
|
3020
|
+
...common,
|
|
3021
|
+
teeth: cfg.zr,
|
|
3022
|
+
shift: cfg.ringShift,
|
|
3023
|
+
ringWallThickness: cfg.ringWallThickness
|
|
3024
|
+
});
|
|
3025
|
+
if (require_errors.isErr(ring)) {
|
|
3026
|
+
sun.value.solid.delete();
|
|
3027
|
+
planet.value.solid.delete();
|
|
3028
|
+
return ring;
|
|
3029
|
+
}
|
|
3030
|
+
return require_errors.ok({
|
|
3031
|
+
sun: sun.value,
|
|
3032
|
+
planet: planet.value,
|
|
3033
|
+
ring: ring.value
|
|
3034
|
+
});
|
|
3035
|
+
}
|
|
3036
|
+
function resolvePlanetaryParams(params) {
|
|
3037
|
+
const moduleSize = params.moduleSize ?? 3;
|
|
3038
|
+
const sunTeeth = params.sunTeeth ?? 15;
|
|
3039
|
+
const planetTeeth = params.planetTeeth ?? 12;
|
|
3040
|
+
const numPlanets = params.numPlanets ?? 3;
|
|
3041
|
+
const pressureAngleDeg = params.pressureAngleDeg ?? 20;
|
|
3042
|
+
const alpha = pressureAngleDeg * Math.PI / 180;
|
|
3043
|
+
const sunShift = params.sunShift ?? 0;
|
|
3044
|
+
const planetShift = params.planetShift ?? 0;
|
|
3045
|
+
const ringShift = params.ringShift ?? 0;
|
|
3046
|
+
if (params.thickness <= 0) return require_errors.err(require_errors.validationError("GEAR_THICKNESS_NONPOSITIVE", "thickness must be > 0"));
|
|
3047
|
+
const validation = validatePlanetary(sunTeeth, planetTeeth, numPlanets, planetShift);
|
|
3048
|
+
if (require_errors.isErr(validation)) return validation;
|
|
3049
|
+
const zr = ringTeeth(sunTeeth, planetTeeth);
|
|
3050
|
+
const sp = solveSunPlanetWorkingPressureAngle(alpha, sunShift, planetShift, sunTeeth, planetTeeth);
|
|
3051
|
+
if (require_errors.isErr(sp)) return sp;
|
|
3052
|
+
const pr = solvePlanetRingWorkingPressureAngle(alpha, planetShift, ringShift, planetTeeth, zr);
|
|
3053
|
+
if (require_errors.isErr(pr)) return pr;
|
|
3054
|
+
const centerDistance = workingCenterDistance(sunTeeth, planetTeeth, moduleSize, alpha, sp.value);
|
|
3055
|
+
return require_errors.ok({
|
|
3056
|
+
moduleSize,
|
|
3057
|
+
sunTeeth,
|
|
3058
|
+
planetTeeth,
|
|
3059
|
+
numPlanets,
|
|
3060
|
+
pressureAngleDeg,
|
|
3061
|
+
alpha,
|
|
3062
|
+
alphaW_sp: sp.value,
|
|
3063
|
+
alphaW_pr: pr.value,
|
|
3064
|
+
clearance: params.clearance ?? .25,
|
|
3065
|
+
bHalf: backlashHalf(params.backlash ?? 0),
|
|
3066
|
+
sunShift,
|
|
3067
|
+
planetShift,
|
|
3068
|
+
ringShift,
|
|
3069
|
+
ringWallThickness: params.ringWallThickness ?? 2 * moduleSize,
|
|
3070
|
+
thickness: params.thickness,
|
|
3071
|
+
sunBore: params.sunBore ?? 0,
|
|
3072
|
+
planetBore: params.planetBore ?? 0,
|
|
3073
|
+
...params.appliedTorque !== void 0 ? { appliedTorque: params.appliedTorque } : {},
|
|
3074
|
+
...params.samples !== void 0 ? { samples: params.samples } : {},
|
|
3075
|
+
zr,
|
|
3076
|
+
centerDistance
|
|
3077
|
+
});
|
|
3078
|
+
}
|
|
3079
|
+
function makeOuterCircleWire(radius) {
|
|
3080
|
+
try {
|
|
3081
|
+
var _usingCtx$1 = require_shapeTypes._usingCtx();
|
|
3082
|
+
const wireResult = require_surfaceBuilders.assembleWire([_usingCtx$1.u(new require_shapeTypes.DisposalScope()).register(require_surfaceBuilders.makeCircle(radius, [
|
|
3083
|
+
0,
|
|
3084
|
+
0,
|
|
3085
|
+
0
|
|
3086
|
+
], [
|
|
3087
|
+
0,
|
|
3088
|
+
0,
|
|
3089
|
+
1
|
|
3090
|
+
]))]);
|
|
3091
|
+
if (require_errors.isErr(wireResult)) return wireResult;
|
|
3092
|
+
return require_errors.ok(wireResult.value);
|
|
3093
|
+
} catch (_) {
|
|
3094
|
+
_usingCtx$1.e = _;
|
|
3095
|
+
} finally {
|
|
3096
|
+
_usingCtx$1.d();
|
|
3097
|
+
}
|
|
3098
|
+
}
|
|
3099
|
+
function finalizeExternalSolid(wire, thickness, bore, geom, diagnostics) {
|
|
3100
|
+
try {
|
|
3101
|
+
var _usingCtx3 = require_shapeTypes._usingCtx();
|
|
3102
|
+
const faceResult = require_surfaceBuilders.makeFace(wire);
|
|
3103
|
+
if (require_errors.isErr(faceResult)) return faceResult;
|
|
3104
|
+
const solidResult = require_extrudeFns.extrude(faceResult.value, [
|
|
3105
|
+
0,
|
|
3106
|
+
0,
|
|
3107
|
+
thickness
|
|
3108
|
+
]);
|
|
3109
|
+
if (require_errors.isErr(solidResult)) return solidResult;
|
|
3110
|
+
if (bore <= 0) return require_errors.ok(buildGearResult(solidResult.value, geom, diagnostics));
|
|
3111
|
+
const boreScope = _usingCtx3.u(new require_shapeTypes.DisposalScope());
|
|
3112
|
+
const boreFaceResult = makeBoreFace(bore / 2);
|
|
3113
|
+
if (require_errors.isErr(boreFaceResult)) return boreFaceResult;
|
|
3114
|
+
boreScope.register(boreFaceResult.value);
|
|
3115
|
+
const boreRaw = require_extrudeFns.extrude(boreFaceResult.value, [
|
|
3116
|
+
0,
|
|
3117
|
+
0,
|
|
3118
|
+
thickness + 1
|
|
3119
|
+
]);
|
|
3120
|
+
if (require_errors.isErr(boreRaw)) return boreRaw;
|
|
3121
|
+
boreScope.register(boreRaw.value);
|
|
3122
|
+
const boreSolid = boreScope.register(require_shapeFns.translate(boreRaw.value, [
|
|
3123
|
+
0,
|
|
3124
|
+
0,
|
|
3125
|
+
-.5
|
|
3126
|
+
]));
|
|
3127
|
+
const cutResult = require_booleanFns.cut(solidResult.value, boreSolid);
|
|
3128
|
+
if (require_errors.isErr(cutResult)) return cutResult;
|
|
3129
|
+
return require_errors.ok(buildGearResult(cutResult.value, geom, diagnostics));
|
|
3130
|
+
} catch (_) {
|
|
3131
|
+
_usingCtx3.e = _;
|
|
3132
|
+
} finally {
|
|
3133
|
+
_usingCtx3.d();
|
|
3134
|
+
}
|
|
3135
|
+
}
|
|
3136
|
+
function makeBoreFace(radius) {
|
|
3137
|
+
const wireResult = makeOuterCircleWire(radius);
|
|
3138
|
+
if (require_errors.isErr(wireResult)) return wireResult;
|
|
3139
|
+
return require_surfaceBuilders.makeFace(wireResult.value);
|
|
3140
|
+
}
|
|
3141
|
+
function finalizeInternalSolid(outerWire, innerToothedWire, thickness, geom, diagnostics) {
|
|
3142
|
+
const faceResult = require_surfaceBuilders.makeFace(outerWire, [innerToothedWire]);
|
|
3143
|
+
if (require_errors.isErr(faceResult)) return faceResult;
|
|
3144
|
+
const solidResult = require_extrudeFns.extrude(faceResult.value, [
|
|
3145
|
+
0,
|
|
3146
|
+
0,
|
|
3147
|
+
thickness
|
|
3148
|
+
]);
|
|
3149
|
+
if (require_errors.isErr(solidResult)) return solidResult;
|
|
3150
|
+
return require_errors.ok(buildGearResult(solidResult.value, geom, diagnostics));
|
|
3151
|
+
}
|
|
3152
|
+
function buildGearResult(solid, geom, diagnostics = []) {
|
|
3153
|
+
return {
|
|
3154
|
+
solid,
|
|
3155
|
+
diagnostics,
|
|
3156
|
+
pitchDiameter: 2 * geom.rPitch,
|
|
3157
|
+
baseDiameter: 2 * geom.rb,
|
|
3158
|
+
tipDiameter: 2 * geom.rTip,
|
|
3159
|
+
rootDiameter: 2 * geom.rRoot
|
|
3160
|
+
};
|
|
3161
|
+
}
|
|
3162
|
+
function placePlanets(planetProto, cfg) {
|
|
3163
|
+
const planets = [];
|
|
3164
|
+
try {
|
|
3165
|
+
for (let i = 0; i < cfg.numPlanets; i++) {
|
|
3166
|
+
const orbital = i * 2 * Math.PI / cfg.numPlanets;
|
|
3167
|
+
const rotated = require_shapeFns.rotate(planetProto, planetSelfRotationAngle(orbital, cfg.sunTeeth, cfg.planetTeeth) * 180 / Math.PI);
|
|
3168
|
+
try {
|
|
3169
|
+
const offset = [
|
|
3170
|
+
cfg.centerDistance * Math.cos(orbital),
|
|
3171
|
+
cfg.centerDistance * Math.sin(orbital),
|
|
3172
|
+
0
|
|
3173
|
+
];
|
|
3174
|
+
planets.push(require_shapeFns.translate(rotated, offset));
|
|
3175
|
+
} finally {
|
|
3176
|
+
rotated.delete();
|
|
3177
|
+
}
|
|
3178
|
+
}
|
|
3179
|
+
return planets;
|
|
3180
|
+
} catch (e) {
|
|
3181
|
+
for (const p of planets) p.delete();
|
|
3182
|
+
throw e;
|
|
3183
|
+
}
|
|
3184
|
+
}
|
|
3185
|
+
function applyRingPhase(ring, zr) {
|
|
3186
|
+
const phaseRad = evenToothPhaseOffset(zr);
|
|
3187
|
+
if (phaseRad === 0) return ring;
|
|
3188
|
+
const rotated = require_shapeFns.rotate(ring, phaseRad * 180 / Math.PI);
|
|
3189
|
+
ring.delete();
|
|
3190
|
+
return rotated;
|
|
3191
|
+
}
|
|
3192
|
+
function computeMeshMetrics(cfg, sun, planet, ring) {
|
|
3193
|
+
const metrics = {
|
|
3194
|
+
crSunPlanet: externalExternalContactRatio(sun.tipDiameter / 2, sun.baseDiameter / 2, planet.tipDiameter / 2, planet.baseDiameter / 2, cfg.centerDistance, cfg.moduleSize, cfg.alpha, cfg.alphaW_sp),
|
|
3195
|
+
crPlanetRing: externalInternalContactRatio(planet.tipDiameter / 2, planet.baseDiameter / 2, ring.tipDiameter / 2, ring.baseDiameter / 2, cfg.centerDistance, cfg.moduleSize, cfg.alpha, cfg.alphaW_pr),
|
|
3196
|
+
undercutSun: undercutDeficit(cfg.sunTeeth, cfg.alpha, cfg.sunShift),
|
|
3197
|
+
undercutPlanet: undercutDeficit(cfg.planetTeeth, cfg.alpha, cfg.planetShift)
|
|
3198
|
+
};
|
|
3199
|
+
if (cfg.appliedTorque !== void 0) {
|
|
3200
|
+
const tSun = cfg.appliedTorque;
|
|
3201
|
+
metrics.lewisStress = {
|
|
3202
|
+
sun: lewisRootStressCorrected(tSun, cfg.moduleSize, cfg.thickness, cfg.sunTeeth, cfg.alpha),
|
|
3203
|
+
planet: lewisRootStressCorrected(tSun * cfg.planetTeeth / cfg.sunTeeth, cfg.moduleSize, cfg.thickness, cfg.planetTeeth, cfg.alpha),
|
|
3204
|
+
ring: lewisRootStressCorrected(tSun * cfg.zr / cfg.sunTeeth, cfg.moduleSize, cfg.thickness, cfg.zr, cfg.alpha, true)
|
|
3205
|
+
};
|
|
3206
|
+
metrics.stressConcentrationFactor = {
|
|
3207
|
+
sun: filletStressConcentrationFactor(cfg.sunTeeth, cfg.alpha),
|
|
3208
|
+
planet: filletStressConcentrationFactor(cfg.planetTeeth, cfg.alpha),
|
|
3209
|
+
ring: filletStressConcentrationFactor(cfg.zr, cfg.alpha, true)
|
|
3210
|
+
};
|
|
3211
|
+
}
|
|
3212
|
+
return metrics;
|
|
3213
|
+
}
|
|
3214
|
+
function collectDiagnostics(cfg, metrics) {
|
|
3215
|
+
const diagnostics = [];
|
|
3216
|
+
if (metrics.crSunPlanet < 1.2) diagnostics.push({
|
|
3217
|
+
code: "CONTACT_RATIO_LOW_SUN_PLANET",
|
|
3218
|
+
severity: "warning",
|
|
3219
|
+
message: `sun-planet contact ratio ${metrics.crSunPlanet.toFixed(2)} is below 1.2 — may run unevenly`,
|
|
3220
|
+
context: { value: metrics.crSunPlanet }
|
|
3221
|
+
});
|
|
3222
|
+
if (metrics.crPlanetRing < 1.2) diagnostics.push({
|
|
3223
|
+
code: "CONTACT_RATIO_LOW_PLANET_RING",
|
|
3224
|
+
severity: "warning",
|
|
3225
|
+
message: `planet-ring contact ratio ${metrics.crPlanetRing.toFixed(2)} is below 1.2 — may run unevenly`,
|
|
3226
|
+
context: { value: metrics.crPlanetRing }
|
|
3227
|
+
});
|
|
3228
|
+
if (metrics.undercutSun > 0) diagnostics.push({
|
|
3229
|
+
code: "UNDERCUT_RISK_SUN",
|
|
3230
|
+
severity: "warning",
|
|
3231
|
+
message: `sun gear is undercut: increase sunShift by ${metrics.undercutSun.toFixed(3)} to avoid`,
|
|
3232
|
+
context: {
|
|
3233
|
+
deficit: metrics.undercutSun,
|
|
3234
|
+
sunTeeth: cfg.sunTeeth
|
|
3235
|
+
}
|
|
3236
|
+
});
|
|
3237
|
+
if (metrics.undercutPlanet > 0) diagnostics.push({
|
|
3238
|
+
code: "UNDERCUT_RISK_PLANET",
|
|
3239
|
+
severity: "warning",
|
|
3240
|
+
message: `planet gear is undercut: increase planetShift by ${metrics.undercutPlanet.toFixed(3)} to avoid`,
|
|
3241
|
+
context: {
|
|
3242
|
+
deficit: metrics.undercutPlanet,
|
|
3243
|
+
planetTeeth: cfg.planetTeeth
|
|
3244
|
+
}
|
|
3245
|
+
});
|
|
3246
|
+
const totalShiftMagnitude = Math.abs(cfg.sunShift) + Math.abs(cfg.planetShift) + Math.abs(cfg.ringShift);
|
|
3247
|
+
if (cfg.appliedTorque !== void 0 && totalShiftMagnitude > .05) diagnostics.push({
|
|
3248
|
+
code: "LEWIS_Y_SHIFT_UNCORRECTED",
|
|
3249
|
+
severity: "info",
|
|
3250
|
+
message: "Lewis stress uses unshifted Y(z) and K_f approximations; expect ±5% per 0.1 of profile shift"
|
|
3251
|
+
});
|
|
3252
|
+
const kinematicError = cfg.ringShift - (cfg.sunShift + 2 * cfg.planetShift);
|
|
3253
|
+
if (Math.abs(kinematicError) > 1e-6) diagnostics.push({
|
|
3254
|
+
code: "PLANETARY_SHIFT_KINEMATIC_MISMATCH",
|
|
3255
|
+
severity: "warning",
|
|
3256
|
+
message: `ringShift should equal sunShift + 2·planetShift for both meshes to share working PA; off by ${kinematicError.toFixed(3)}`,
|
|
3257
|
+
context: {
|
|
3258
|
+
kinematicError,
|
|
3259
|
+
sunShift: cfg.sunShift,
|
|
3260
|
+
planetShift: cfg.planetShift,
|
|
3261
|
+
ringShift: cfg.ringShift
|
|
3262
|
+
}
|
|
3263
|
+
});
|
|
3264
|
+
return diagnostics;
|
|
3265
|
+
}
|
|
2626
3266
|
//#endregion
|
|
2627
3267
|
//#region src/ns/primitives.ts
|
|
2628
|
-
var primitives_exports = /* @__PURE__ */
|
|
3268
|
+
var primitives_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2629
3269
|
addHoles: () => require_primitiveFns.addHoles,
|
|
2630
3270
|
bezier: () => require_primitiveFns.bezier,
|
|
2631
3271
|
box: () => require_primitiveFns.box,
|
|
@@ -2658,7 +3298,7 @@ var primitives_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2658
3298
|
});
|
|
2659
3299
|
//#endregion
|
|
2660
3300
|
//#region src/ns/booleans.ts
|
|
2661
|
-
var booleans_exports = /* @__PURE__ */
|
|
3301
|
+
var booleans_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2662
3302
|
checkBoolean: () => require_primitiveFns.checkBoolean,
|
|
2663
3303
|
convexHull: () => convexHull,
|
|
2664
3304
|
cut: () => cut,
|
|
@@ -2675,7 +3315,7 @@ var booleans_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2675
3315
|
});
|
|
2676
3316
|
//#endregion
|
|
2677
3317
|
//#region src/ns/modifiers.ts
|
|
2678
|
-
var modifiers_exports = /* @__PURE__ */
|
|
3318
|
+
var modifiers_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2679
3319
|
chamfer: () => chamfer,
|
|
2680
3320
|
draft: () => draft,
|
|
2681
3321
|
fillet: () => fillet,
|
|
@@ -2688,7 +3328,7 @@ var modifiers_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2688
3328
|
});
|
|
2689
3329
|
//#endregion
|
|
2690
3330
|
//#region src/ns/transforms.ts
|
|
2691
|
-
var transforms_exports = /* @__PURE__ */
|
|
3331
|
+
var transforms_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2692
3332
|
applyMatrix: () => applyMatrix,
|
|
2693
3333
|
clone: () => clone,
|
|
2694
3334
|
composeTransforms: () => require_shapeFns.composeTransforms,
|
|
@@ -2700,7 +3340,7 @@ var transforms_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2700
3340
|
});
|
|
2701
3341
|
//#endregion
|
|
2702
3342
|
//#region src/ns/measurement.ts
|
|
2703
|
-
var measurement_exports = /* @__PURE__ */
|
|
3343
|
+
var measurement_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2704
3344
|
checkAllInterferences: () => checkAllInterferences,
|
|
2705
3345
|
checkInterference: () => checkInterference,
|
|
2706
3346
|
createDistanceQuery: () => require_measureFns.createDistanceQuery,
|
|
@@ -2717,7 +3357,7 @@ var measurement_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2717
3357
|
});
|
|
2718
3358
|
//#endregion
|
|
2719
3359
|
//#region src/ns/ioNs.ts
|
|
2720
|
-
var ioNs_exports = /* @__PURE__ */
|
|
3360
|
+
var ioNs_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2721
3361
|
blueprintToDXF: () => require_importFns.blueprintToDXF,
|
|
2722
3362
|
exportAssemblySTEP: () => require_historyFns.exportAssemblySTEP,
|
|
2723
3363
|
exportDXF: () => require_importFns.exportDXF,
|
|
@@ -2741,7 +3381,7 @@ var ioNs_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2741
3381
|
});
|
|
2742
3382
|
//#endregion
|
|
2743
3383
|
//#region src/ns/query.ts
|
|
2744
|
-
var query_exports = /* @__PURE__ */
|
|
3384
|
+
var query_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2745
3385
|
cornerFinder: () => require_cornerFinder.cornerFinder,
|
|
2746
3386
|
edgeFinder: () => require_helpers.edgeFinder,
|
|
2747
3387
|
faceFinder: () => require_helpers.faceFinder,
|
|
@@ -2751,7 +3391,7 @@ var query_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2751
3391
|
});
|
|
2752
3392
|
//#endregion
|
|
2753
3393
|
//#region src/ns/construction.ts
|
|
2754
|
-
var construction_exports = /* @__PURE__ */
|
|
3394
|
+
var construction_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2755
3395
|
complexExtrude: () => require_extrudeFns.complexExtrude,
|
|
2756
3396
|
extrude: () => extrude,
|
|
2757
3397
|
guidedSweep: () => require_extrudeFns.guidedSweep,
|
|
@@ -2767,24 +3407,28 @@ var construction_exports = /* @__PURE__ */ require_drawFns.__exportAll({
|
|
|
2767
3407
|
});
|
|
2768
3408
|
//#endregion
|
|
2769
3409
|
//#region src/ns/patterns.ts
|
|
2770
|
-
var patterns_exports = /* @__PURE__ */
|
|
3410
|
+
var patterns_exports = /* @__PURE__ */ require_textBlueprints.__exportAll({
|
|
2771
3411
|
circularPattern: () => require_historyFns.circularPattern,
|
|
2772
3412
|
linearPattern: () => require_historyFns.linearPattern
|
|
2773
3413
|
});
|
|
2774
3414
|
//#endregion
|
|
3415
|
+
exports.BaseSketcher2d = require_blueprintSketcher.BaseSketcher2d;
|
|
3416
|
+
exports.BlueprintSketcher = require_blueprintSketcher.BlueprintSketcher;
|
|
2775
3417
|
exports.BrepBugError = require_errors.BrepBugError;
|
|
2776
3418
|
exports.BrepErrorCode = require_errors.BrepErrorCode;
|
|
2777
3419
|
exports.BrepWrapperError = BrepWrapperError;
|
|
2778
3420
|
exports.BrepkitAdapter = require_shapeTypes.BrepkitAdapter;
|
|
2779
|
-
exports.CompoundSketch =
|
|
3421
|
+
exports.CompoundSketch = require_textBlueprints.CompoundSketch;
|
|
2780
3422
|
exports.DEG2RAD = require_constants.DEG2RAD;
|
|
2781
3423
|
exports.DisposalScope = require_shapeTypes.DisposalScope;
|
|
3424
|
+
exports.FaceSketcher = require_drawFns.FaceSketcher;
|
|
2782
3425
|
exports.HASH_CODE_MAX = require_constants.HASH_CODE_MAX;
|
|
2783
3426
|
exports.OK = require_errors.OK;
|
|
2784
3427
|
exports.OcctWasmAdapter = require_occtWasmAdapter.OcctWasmAdapter;
|
|
2785
3428
|
exports.RAD2DEG = require_constants.RAD2DEG;
|
|
2786
|
-
exports.Sketch =
|
|
2787
|
-
exports.
|
|
3429
|
+
exports.Sketch = require_textBlueprints.Sketch;
|
|
3430
|
+
exports.Sketcher = require_drawFns.Sketcher;
|
|
3431
|
+
exports.Sketches = require_textBlueprints.Sketches;
|
|
2788
3432
|
exports.addChild = require_historyFns.addChild;
|
|
2789
3433
|
exports.addHoles = require_primitiveFns.addHoles;
|
|
2790
3434
|
exports.addMate = addMate;
|
|
@@ -2813,8 +3457,8 @@ exports.boss = boss;
|
|
|
2813
3457
|
exports.box = require_primitiveFns.box;
|
|
2814
3458
|
exports.bsplineApprox = require_primitiveFns.bsplineApprox;
|
|
2815
3459
|
exports.bug = require_errors.bug;
|
|
2816
|
-
exports.cameraFromPlane =
|
|
2817
|
-
exports.cameraLookAt =
|
|
3460
|
+
exports.cameraFromPlane = require_cameraFns.cameraFromPlane;
|
|
3461
|
+
exports.cameraLookAt = require_cameraFns.cameraLookAt;
|
|
2818
3462
|
exports.captureHint = require_shapeRefFns.captureHint;
|
|
2819
3463
|
exports.cast = require_faceFns.cast;
|
|
2820
3464
|
exports.castShape = require_shapeTypes.castShape;
|
|
@@ -2838,10 +3482,10 @@ exports.colorShape = require_shapeFns.colorShape;
|
|
|
2838
3482
|
exports.complexExtrude = require_extrudeFns.complexExtrude;
|
|
2839
3483
|
exports.composeTransforms = require_shapeFns.composeTransforms;
|
|
2840
3484
|
exports.compound = require_primitiveFns.compound;
|
|
2841
|
-
exports.compoundSketchExtrude =
|
|
2842
|
-
exports.compoundSketchFace =
|
|
2843
|
-
exports.compoundSketchLoft =
|
|
2844
|
-
exports.compoundSketchRevolve =
|
|
3485
|
+
exports.compoundSketchExtrude = require_textBlueprints.compoundSketchExtrude;
|
|
3486
|
+
exports.compoundSketchFace = require_textBlueprints.compoundSketchFace;
|
|
3487
|
+
exports.compoundSketchLoft = require_textBlueprints.compoundSketchLoft;
|
|
3488
|
+
exports.compoundSketchRevolve = require_textBlueprints.compoundSketchRevolve;
|
|
2845
3489
|
exports.computationError = require_errors.computationError;
|
|
2846
3490
|
exports.computeStraightSkeleton = computeStraightSkeleton;
|
|
2847
3491
|
exports.cone = require_primitiveFns.cone;
|
|
@@ -2857,7 +3501,7 @@ exports.countNodes = require_historyFns.countNodes;
|
|
|
2857
3501
|
exports.createAssembly = require_historyFns.createAssembly;
|
|
2858
3502
|
exports.createAssemblyNode = require_historyFns.createAssemblyNode;
|
|
2859
3503
|
exports.createBlueprint = require_blueprintFns.createBlueprint;
|
|
2860
|
-
exports.createCamera =
|
|
3504
|
+
exports.createCamera = require_cameraFns.createCamera;
|
|
2861
3505
|
exports.createCompound = require_shapeTypes.createCompound;
|
|
2862
3506
|
exports.createCompoundBlueprint = require_blueprintFns.createCompoundBlueprint;
|
|
2863
3507
|
exports.createDistanceQuery = require_measureFns.createDistanceQuery;
|
|
@@ -2967,7 +3611,7 @@ exports.flatMap = require_errors.flatMap;
|
|
|
2967
3611
|
exports.flatten = require_errors.flatten;
|
|
2968
3612
|
exports.flipFaceOrientation = require_faceFns.flipFaceOrientation;
|
|
2969
3613
|
exports.flipOrientation = require_curveFns.flipOrientation;
|
|
2970
|
-
exports.fontMetrics =
|
|
3614
|
+
exports.fontMetrics = require_textMetrics.fontMetrics;
|
|
2971
3615
|
exports.fromBREP = fromBREP$1;
|
|
2972
3616
|
exports.fromKernelDir = fromKernelDir;
|
|
2973
3617
|
exports.fromKernelPnt = fromKernelPnt;
|
|
@@ -2978,16 +3622,17 @@ exports.fuse2D = require_boolean2D.fuse2D;
|
|
|
2978
3622
|
exports.fuseAll = require_booleanFns.fuseAll;
|
|
2979
3623
|
exports.fuseBlueprints = require_boolean2D.fuseBlueprints;
|
|
2980
3624
|
exports.fuseWithEvolution = require_primitiveFns.fuseWithEvolution;
|
|
2981
|
-
exports.
|
|
3625
|
+
exports.gearGeometry = gearGeometry;
|
|
3626
|
+
exports.getBounds = require_topologyQueryFns.getBounds;
|
|
2982
3627
|
exports.getBounds2D = require_blueprintFns.getBounds2D;
|
|
2983
3628
|
exports.getCurveType = require_curveFns.getCurveType;
|
|
2984
3629
|
exports.getDisposalStats = require_shapeTypes.getDisposalStats;
|
|
2985
|
-
exports.getEdges =
|
|
3630
|
+
exports.getEdges = require_topologyQueryFns.getEdges;
|
|
2986
3631
|
exports.getFaceColor = require_shapeFns.getFaceColor;
|
|
2987
3632
|
exports.getFaceOrigins = require_shapeFns.getFaceOrigins;
|
|
2988
3633
|
exports.getFaceTags = require_shapeFns.getFaceTags;
|
|
2989
|
-
exports.getFaces =
|
|
2990
|
-
exports.getFont =
|
|
3634
|
+
exports.getFaces = require_topologyQueryFns.getFaces;
|
|
3635
|
+
exports.getFont = require_textBlueprints.getFont;
|
|
2991
3636
|
exports.getHashCode = require_shapeFns.getHashCode;
|
|
2992
3637
|
exports.getHistoryShape = require_historyFns.getShape;
|
|
2993
3638
|
exports.getKernel = require_shapeTypes.getKernel;
|
|
@@ -3001,8 +3646,8 @@ exports.getShapeKind = require_shapeTypes.getShapeKind;
|
|
|
3001
3646
|
exports.getSingleFace = require_helpers.getSingleFace;
|
|
3002
3647
|
exports.getSurfaceType = require_faceFns.getSurfaceType;
|
|
3003
3648
|
exports.getTagMetadata = require_shapeFns.getTagMetadata;
|
|
3004
|
-
exports.getVertices =
|
|
3005
|
-
exports.getWires =
|
|
3649
|
+
exports.getVertices = require_topologyQueryFns.getVertices;
|
|
3650
|
+
exports.getWires = require_topologyQueryFns.getWires;
|
|
3006
3651
|
exports.guidedSweep = require_extrudeFns.guidedSweep;
|
|
3007
3652
|
exports.heal = heal;
|
|
3008
3653
|
exports.healFace = require_primitiveFns.healFace;
|
|
@@ -3027,7 +3672,7 @@ exports.intersect = intersect;
|
|
|
3027
3672
|
exports.intersect2D = require_boolean2D.intersect2D;
|
|
3028
3673
|
exports.intersectBlueprints = require_boolean2D.intersectBlueprints;
|
|
3029
3674
|
exports.intersectWithEvolution = require_primitiveFns.intersectWithEvolution;
|
|
3030
|
-
exports.invalidateShapeCache =
|
|
3675
|
+
exports.invalidateShapeCache = require_topologyQueryFns.invalidateShapeCache;
|
|
3031
3676
|
Object.defineProperty(exports, "io", {
|
|
3032
3677
|
enumerable: true,
|
|
3033
3678
|
get: function() {
|
|
@@ -3059,7 +3704,7 @@ exports.isOperationRequest = require_workerHandler.isOperationRequest;
|
|
|
3059
3704
|
exports.isOrientedFace = require_shapeTypes.isOrientedFace;
|
|
3060
3705
|
exports.isPlanarFace = require_shapeTypes.isPlanarFace;
|
|
3061
3706
|
exports.isPlanarWire = require_shapeTypes.isPlanarWire;
|
|
3062
|
-
exports.isProjectionPlane =
|
|
3707
|
+
exports.isProjectionPlane = require_cameraFns.isProjectionPlane;
|
|
3063
3708
|
exports.isQueueEmpty = require_workerHandler.isEmpty;
|
|
3064
3709
|
exports.isSameShape = require_shapeFns.isSameShape;
|
|
3065
3710
|
exports.isShape1D = require_shapeTypes.isShape1D;
|
|
@@ -3071,23 +3716,26 @@ exports.isValid = isValid;
|
|
|
3071
3716
|
exports.isValidSolid = require_shapeTypes.isValidSolid;
|
|
3072
3717
|
exports.isVertex = require_shapeTypes.isVertex;
|
|
3073
3718
|
exports.isWire = require_shapeTypes.isWire;
|
|
3074
|
-
exports.iterEdges =
|
|
3075
|
-
exports.iterFaces =
|
|
3719
|
+
exports.iterEdges = require_topologyQueryFns.iterEdges;
|
|
3720
|
+
exports.iterFaces = require_topologyQueryFns.iterFaces;
|
|
3076
3721
|
exports.iterTopo = require_faceFns.iterTopo;
|
|
3077
|
-
exports.iterVertices =
|
|
3078
|
-
exports.iterWires =
|
|
3079
|
-
exports.kernelCall =
|
|
3080
|
-
exports.kernelCallRaw =
|
|
3081
|
-
exports.kernelCallScoped =
|
|
3722
|
+
exports.iterVertices = require_topologyQueryFns.iterVertices;
|
|
3723
|
+
exports.iterWires = require_topologyQueryFns.iterWires;
|
|
3724
|
+
exports.kernelCall = require_topologyQueryFns.kernelCall;
|
|
3725
|
+
exports.kernelCallRaw = require_topologyQueryFns.kernelCallRaw;
|
|
3726
|
+
exports.kernelCallScoped = require_topologyQueryFns.kernelCallScoped;
|
|
3082
3727
|
exports.kernelError = require_errors.kernelError;
|
|
3083
3728
|
exports.line = require_primitiveFns.line;
|
|
3084
3729
|
exports.linearPattern = require_historyFns.linearPattern;
|
|
3085
|
-
exports.loadFont =
|
|
3730
|
+
exports.loadFont = require_textBlueprints.loadFont;
|
|
3086
3731
|
exports.loft = loft;
|
|
3087
|
-
exports.loftAll =
|
|
3732
|
+
exports.loftAll = require_textBlueprints.loftAll;
|
|
3088
3733
|
exports.makeBaseBox = require_drawFns.makeBaseBox;
|
|
3734
|
+
exports.makeExternalGear = makeExternalGear;
|
|
3735
|
+
exports.makeInternalGear = makeInternalGear;
|
|
3089
3736
|
exports.makePlane = require_planeOps.makePlane;
|
|
3090
|
-
exports.
|
|
3737
|
+
exports.makePlanetaryGear = makePlanetaryGear;
|
|
3738
|
+
exports.makeProjectedEdges = require_cameraFns.makeProjectedEdges;
|
|
3091
3739
|
exports.manifoldShell = require_shapeTypes.manifoldShell;
|
|
3092
3740
|
exports.map = require_errors.map;
|
|
3093
3741
|
exports.mapBoth = require_errors.mapBoth;
|
|
@@ -3133,7 +3781,7 @@ exports.offsetWire2D = require_curveFns.offsetWire2D;
|
|
|
3133
3781
|
exports.ok = require_errors.ok;
|
|
3134
3782
|
exports.or = require_errors.or;
|
|
3135
3783
|
exports.orElse = require_errors.orElse;
|
|
3136
|
-
exports.organiseBlueprints =
|
|
3784
|
+
exports.organiseBlueprints = require_blueprintSketcher.organiseBlueprints;
|
|
3137
3785
|
exports.orientedFace = require_shapeTypes.orientedFace;
|
|
3138
3786
|
exports.outerWire = require_faceFns.outerWire;
|
|
3139
3787
|
Object.defineProperty(exports, "patterns", {
|
|
@@ -3147,6 +3795,7 @@ exports.pipeline = require_errors.pipeline;
|
|
|
3147
3795
|
exports.pivotPlane = require_planeOps.pivotPlane;
|
|
3148
3796
|
exports.planarFace = require_shapeTypes.planarFace;
|
|
3149
3797
|
exports.planarWire = require_shapeTypes.planarWire;
|
|
3798
|
+
exports.planetPlacements = planetPlacements;
|
|
3150
3799
|
exports.pocket = pocket;
|
|
3151
3800
|
exports.pointOnSurface = require_faceFns.pointOnSurface;
|
|
3152
3801
|
exports.polygon = require_primitiveFns.polygon;
|
|
@@ -3161,7 +3810,7 @@ Object.defineProperty(exports, "primitives", {
|
|
|
3161
3810
|
return primitives_exports;
|
|
3162
3811
|
}
|
|
3163
3812
|
});
|
|
3164
|
-
exports.projectEdges =
|
|
3813
|
+
exports.projectEdges = require_cameraFns.projectEdges;
|
|
3165
3814
|
exports.projectPointOnFace = require_faceFns.projectPointOnFace;
|
|
3166
3815
|
Object.defineProperty(exports, "query", {
|
|
3167
3816
|
enumerable: true,
|
|
@@ -3212,21 +3861,21 @@ exports.shellWithEvolution = require_primitiveFns.shellWithEvolution;
|
|
|
3212
3861
|
exports.simplify = simplify;
|
|
3213
3862
|
exports.sketchCircle = require_drawFns.sketchCircle;
|
|
3214
3863
|
exports.sketchEllipse = require_drawFns.sketchEllipse;
|
|
3215
|
-
exports.sketchExtrude =
|
|
3216
|
-
exports.sketchFace =
|
|
3864
|
+
exports.sketchExtrude = require_textBlueprints.sketchExtrude;
|
|
3865
|
+
exports.sketchFace = require_textBlueprints.sketchFace;
|
|
3217
3866
|
exports.sketchFaceOffset = require_drawFns.sketchFaceOffset;
|
|
3218
3867
|
exports.sketchHelix = require_drawFns.sketchHelix;
|
|
3219
|
-
exports.sketchLoft =
|
|
3868
|
+
exports.sketchLoft = require_textBlueprints.sketchLoft;
|
|
3220
3869
|
exports.sketchOnFace2D = require_blueprintFns.sketchOnFace2D;
|
|
3221
3870
|
exports.sketchOnPlane2D = require_blueprintFns.sketchOnPlane2D;
|
|
3222
3871
|
exports.sketchParametricFunction = require_drawFns.sketchParametricFunction;
|
|
3223
3872
|
exports.sketchPolysides = require_drawFns.sketchPolysides;
|
|
3224
3873
|
exports.sketchRectangle = require_drawFns.sketchRectangle;
|
|
3225
|
-
exports.sketchRevolve =
|
|
3874
|
+
exports.sketchRevolve = require_textBlueprints.sketchRevolve;
|
|
3226
3875
|
exports.sketchRoundedRectangle = require_drawFns.sketchRoundedRectangle;
|
|
3227
|
-
exports.sketchSweep =
|
|
3228
|
-
exports.sketchText =
|
|
3229
|
-
exports.sketchWires =
|
|
3876
|
+
exports.sketchSweep = require_textBlueprints.sketchSweep;
|
|
3877
|
+
exports.sketchText = require_textMetrics.sketchText;
|
|
3878
|
+
exports.sketchWires = require_textBlueprints.sketchWires;
|
|
3230
3879
|
exports.sketcherStateError = require_errors.sketcherStateError;
|
|
3231
3880
|
exports.slice = slice;
|
|
3232
3881
|
exports.solid = require_primitiveFns.solid;
|
|
@@ -3248,8 +3897,8 @@ exports.tagFaces = require_shapeFns.tagFaces;
|
|
|
3248
3897
|
exports.tangentArc = require_primitiveFns.tangentArc;
|
|
3249
3898
|
exports.tap = require_errors.tap;
|
|
3250
3899
|
exports.tapErr = require_errors.tapErr;
|
|
3251
|
-
exports.textBlueprints =
|
|
3252
|
-
exports.textMetrics =
|
|
3900
|
+
exports.textBlueprints = require_textBlueprints.textBlueprints;
|
|
3901
|
+
exports.textMetrics = require_textMetrics.textMetrics;
|
|
3253
3902
|
exports.thicken = thicken;
|
|
3254
3903
|
exports.threePointArc = require_primitiveFns.threePointArc;
|
|
3255
3904
|
exports.toBREP = toBREP;
|
|
@@ -3288,6 +3937,7 @@ exports.updateRoles = require_shapeRefFns.updateRoles;
|
|
|
3288
3937
|
exports.uvBounds = require_faceFns.uvBounds;
|
|
3289
3938
|
exports.uvCoordinates = require_faceFns.uvCoordinates;
|
|
3290
3939
|
exports.validSolid = require_shapeTypes.validSolid;
|
|
3940
|
+
exports.validatePlanetary = validatePlanetary;
|
|
3291
3941
|
exports.validationError = require_errors.validationError;
|
|
3292
3942
|
exports.variableFillet = require_primitiveFns.variableFillet;
|
|
3293
3943
|
exports.vecAdd = require_vecOps.vecAdd;
|
|
@@ -3308,7 +3958,7 @@ exports.vecScale = require_vecOps.vecScale;
|
|
|
3308
3958
|
exports.vecSub = require_vecOps.vecSub;
|
|
3309
3959
|
exports.vertex = require_primitiveFns.vertex;
|
|
3310
3960
|
exports.vertexFinder = vertexFinder;
|
|
3311
|
-
exports.vertexPosition =
|
|
3961
|
+
exports.vertexPosition = require_topologyQueryFns.vertexPosition;
|
|
3312
3962
|
exports.verticesOfEdge = require_primitiveFns.verticesOfEdge;
|
|
3313
3963
|
exports.walkAssembly = require_historyFns.walkAssembly;
|
|
3314
3964
|
exports.wire = require_primitiveFns.wire;
|