@faicad/faijs 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +29 -0
- package/NOTICE +29 -0
- package/dist/api/api-namespace.d.ts +27 -0
- package/dist/api/api-namespace.d.ts.map +1 -0
- package/dist/api/api-namespace.js +78 -0
- package/dist/api/api-namespace.js.map +1 -0
- package/dist/api/assembly/entities.d.ts +55 -0
- package/dist/api/assembly/entities.d.ts.map +1 -0
- package/dist/api/assembly/entities.js +158 -0
- package/dist/api/assembly/entities.js.map +1 -0
- package/dist/api/assembly/golden-mate.d.ts +49 -0
- package/dist/api/assembly/golden-mate.d.ts.map +1 -0
- package/dist/api/assembly/golden-mate.js +101 -0
- package/dist/api/assembly/golden-mate.js.map +1 -0
- package/dist/api/assembly/index.d.ts +16 -0
- package/dist/api/assembly/index.d.ts.map +1 -0
- package/dist/api/assembly/index.js +16 -0
- package/dist/api/assembly/index.js.map +1 -0
- package/dist/api/assembly/joints.d.ts +208 -0
- package/dist/api/assembly/joints.d.ts.map +1 -0
- package/dist/api/assembly/joints.js +240 -0
- package/dist/api/assembly/joints.js.map +1 -0
- package/dist/api/assembly/lower.d.ts +61 -0
- package/dist/api/assembly/lower.d.ts.map +1 -0
- package/dist/api/assembly/lower.js +145 -0
- package/dist/api/assembly/lower.js.map +1 -0
- package/dist/api/assembly/normalize.d.ts +19 -0
- package/dist/api/assembly/normalize.d.ts.map +1 -0
- package/dist/api/assembly/normalize.js +32 -0
- package/dist/api/assembly/normalize.js.map +1 -0
- package/dist/api/assembly/pose.d.ts +78 -0
- package/dist/api/assembly/pose.d.ts.map +1 -0
- package/dist/api/assembly/pose.js +116 -0
- package/dist/api/assembly/pose.js.map +1 -0
- package/dist/api/assembly/preview.d.ts +55 -0
- package/dist/api/assembly/preview.d.ts.map +1 -0
- package/dist/api/assembly/preview.js +61 -0
- package/dist/api/assembly/preview.js.map +1 -0
- package/dist/api/assembly/solve.d.ts +72 -0
- package/dist/api/assembly/solve.d.ts.map +1 -0
- package/dist/api/assembly/solve.js +139 -0
- package/dist/api/assembly/solve.js.map +1 -0
- package/dist/api/assembly/solvers/global-solver.d.ts +34 -0
- package/dist/api/assembly/solvers/global-solver.d.ts.map +1 -0
- package/dist/api/assembly/solvers/global-solver.js +461 -0
- package/dist/api/assembly/solvers/global-solver.js.map +1 -0
- package/dist/api/assembly/solvers/linalg.d.ts +92 -0
- package/dist/api/assembly/solvers/linalg.d.ts.map +1 -0
- package/dist/api/assembly/solvers/linalg.js +217 -0
- package/dist/api/assembly/solvers/linalg.js.map +1 -0
- package/dist/api/assembly/solvers/pose-from-delta.d.ts +43 -0
- package/dist/api/assembly/solvers/pose-from-delta.d.ts.map +1 -0
- package/dist/api/assembly/solvers/pose-from-delta.js +61 -0
- package/dist/api/assembly/solvers/pose-from-delta.js.map +1 -0
- package/dist/api/assembly/solvers/types.d.ts +60 -0
- package/dist/api/assembly/solvers/types.d.ts.map +1 -0
- package/dist/api/assembly/solvers/types.js +11 -0
- package/dist/api/assembly/solvers/types.js.map +1 -0
- package/dist/api/assembly/types.d.ts +136 -0
- package/dist/api/assembly/types.d.ts.map +1 -0
- package/dist/api/assembly/types.js +13 -0
- package/dist/api/assembly/types.js.map +1 -0
- package/dist/api/assembly/validate.d.ts +37 -0
- package/dist/api/assembly/validate.d.ts.map +1 -0
- package/dist/api/assembly/validate.js +131 -0
- package/dist/api/assembly/validate.js.map +1 -0
- package/dist/api/assert.d.ts +54 -0
- package/dist/api/assert.d.ts.map +1 -0
- package/dist/api/assert.js +90 -0
- package/dist/api/assert.js.map +1 -0
- package/dist/api/asset.d.ts +20 -0
- package/dist/api/asset.d.ts.map +1 -0
- package/dist/api/asset.js +28 -0
- package/dist/api/asset.js.map +1 -0
- package/dist/api/boolean.d.ts +56 -0
- package/dist/api/boolean.d.ts.map +1 -0
- package/dist/api/boolean.js +151 -0
- package/dist/api/boolean.js.map +1 -0
- package/dist/api/brep-mirror/joinery-brep.d.ts +172 -0
- package/dist/api/brep-mirror/joinery-brep.d.ts.map +1 -0
- package/dist/api/brep-mirror/joinery-brep.js +461 -0
- package/dist/api/brep-mirror/joinery-brep.js.map +1 -0
- package/dist/api/brep-mirror/threadFns.d.ts +68 -0
- package/dist/api/brep-mirror/threadFns.d.ts.map +1 -0
- package/dist/api/brep-mirror/threadFns.js +103 -0
- package/dist/api/brep-mirror/threadFns.js.map +1 -0
- package/dist/api/brepjs-compat/index.d.ts +234 -0
- package/dist/api/brepjs-compat/index.d.ts.map +1 -0
- package/dist/api/brepjs-compat/index.js +289 -0
- package/dist/api/brepjs-compat/index.js.map +1 -0
- package/dist/api/chamfer-math.d.ts +46 -0
- package/dist/api/chamfer-math.d.ts.map +1 -0
- package/dist/api/chamfer-math.js +60 -0
- package/dist/api/chamfer-math.js.map +1 -0
- package/dist/api/chamfer.d.ts +63 -0
- package/dist/api/chamfer.d.ts.map +1 -0
- package/dist/api/chamfer.js +234 -0
- package/dist/api/chamfer.js.map +1 -0
- package/dist/api/compat/index.d.ts +173 -0
- package/dist/api/compat/index.d.ts.map +1 -0
- package/dist/api/compat/index.js +222 -0
- package/dist/api/compat/index.js.map +1 -0
- package/dist/api/compound.d.ts +108 -0
- package/dist/api/compound.d.ts.map +1 -0
- package/dist/api/compound.js +162 -0
- package/dist/api/compound.js.map +1 -0
- package/dist/api/copy.d.ts +39 -0
- package/dist/api/copy.d.ts.map +1 -0
- package/dist/api/copy.js +81 -0
- package/dist/api/copy.js.map +1 -0
- package/dist/api/edge-ref.d.ts +42 -0
- package/dist/api/edge-ref.d.ts.map +1 -0
- package/dist/api/edge-ref.js +89 -0
- package/dist/api/edge-ref.js.map +1 -0
- package/dist/api/engrave.d.ts +39 -0
- package/dist/api/engrave.d.ts.map +1 -0
- package/dist/api/engrave.js +215 -0
- package/dist/api/engrave.js.map +1 -0
- package/dist/api/extrude.d.ts +81 -0
- package/dist/api/extrude.d.ts.map +1 -0
- package/dist/api/extrude.js +299 -0
- package/dist/api/extrude.js.map +1 -0
- package/dist/api/face-ref.d.ts +37 -0
- package/dist/api/face-ref.d.ts.map +1 -0
- package/dist/api/face-ref.js +64 -0
- package/dist/api/face-ref.js.map +1 -0
- package/dist/api/fai_drill.d.ts +46 -0
- package/dist/api/fai_drill.d.ts.map +1 -0
- package/dist/api/fai_drill.js +230 -0
- package/dist/api/fai_drill.js.map +1 -0
- package/dist/api/fai_extrude.d.ts +36 -0
- package/dist/api/fai_extrude.d.ts.map +1 -0
- package/dist/api/fai_extrude.js +78 -0
- package/dist/api/fai_extrude.js.map +1 -0
- package/dist/api/fai_split.d.ts +46 -0
- package/dist/api/fai_split.d.ts.map +1 -0
- package/dist/api/fai_split.js +253 -0
- package/dist/api/fai_split.js.map +1 -0
- package/dist/api/fillet.d.ts +46 -0
- package/dist/api/fillet.d.ts.map +1 -0
- package/dist/api/fillet.js +127 -0
- package/dist/api/fillet.js.map +1 -0
- package/dist/api/generated/2d.d.ts +18 -0
- package/dist/api/generated/2d.d.ts.map +1 -0
- package/dist/api/generated/2d.js +2 -0
- package/dist/api/generated/2d.js.map +1 -0
- package/dist/api/generated/brepjs/index.d.ts +310 -0
- package/dist/api/generated/brepjs/index.d.ts.map +1 -0
- package/dist/api/generated/brepjs/index.js +195 -0
- package/dist/api/generated/brepjs/index.js.map +1 -0
- package/dist/api/generated/cad/script-face.d.ts +12 -0
- package/dist/api/generated/cad/script-face.d.ts.map +1 -0
- package/dist/api/generated/cad/script-face.js +147 -0
- package/dist/api/generated/cad/script-face.js.map +1 -0
- package/dist/api/generated/core.d.ts +126 -0
- package/dist/api/generated/core.d.ts.map +1 -0
- package/dist/api/generated/core.js +86 -0
- package/dist/api/generated/core.js.map +1 -0
- package/dist/api/generated/gear.d.ts +20 -0
- package/dist/api/generated/gear.d.ts.map +1 -0
- package/dist/api/generated/gear.js +4 -0
- package/dist/api/generated/gear.js.map +1 -0
- package/dist/api/generated/io.d.ts +18 -0
- package/dist/api/generated/io.d.ts.map +1 -0
- package/dist/api/generated/io.js +2 -0
- package/dist/api/generated/io.js.map +1 -0
- package/dist/api/generated/kernel.d.ts +44 -0
- package/dist/api/generated/kernel.d.ts.map +1 -0
- package/dist/api/generated/kernel.js +5 -0
- package/dist/api/generated/kernel.js.map +1 -0
- package/dist/api/generated/measurement.d.ts +132 -0
- package/dist/api/generated/measurement.d.ts.map +1 -0
- package/dist/api/generated/measurement.js +191 -0
- package/dist/api/generated/measurement.js.map +1 -0
- package/dist/api/generated/ns.d.ts +15 -0
- package/dist/api/generated/ns.d.ts.map +1 -0
- package/dist/api/generated/ns.js +15 -0
- package/dist/api/generated/ns.js.map +1 -0
- package/dist/api/generated/operations.d.ts +190 -0
- package/dist/api/generated/operations.d.ts.map +1 -0
- package/dist/api/generated/operations.js +131 -0
- package/dist/api/generated/operations.js.map +1 -0
- package/dist/api/generated/projection.d.ts +13 -0
- package/dist/api/generated/projection.d.ts.map +1 -0
- package/dist/api/generated/projection.js +5 -0
- package/dist/api/generated/projection.js.map +1 -0
- package/dist/api/generated/query.d.ts +14 -0
- package/dist/api/generated/query.d.ts.map +1 -0
- package/dist/api/generated/query.js +2 -0
- package/dist/api/generated/query.js.map +1 -0
- package/dist/api/generated/script-face-manifest.d.ts +15 -0
- package/dist/api/generated/script-face-manifest.d.ts.map +1 -0
- package/dist/api/generated/script-face-manifest.js +39 -0
- package/dist/api/generated/script-face-manifest.js.map +1 -0
- package/dist/api/generated/script-face.d.ts +100 -0
- package/dist/api/generated/script-face.d.ts.map +1 -0
- package/dist/api/generated/script-face.js +49 -0
- package/dist/api/generated/script-face.js.map +1 -0
- package/dist/api/generated/sketching.d.ts +13 -0
- package/dist/api/generated/sketching.d.ts.map +1 -0
- package/dist/api/generated/sketching.js +16 -0
- package/dist/api/generated/sketching.js.map +1 -0
- package/dist/api/generated/text.d.ts +11 -0
- package/dist/api/generated/text.d.ts.map +1 -0
- package/dist/api/generated/text.js +4 -0
- package/dist/api/generated/text.js.map +1 -0
- package/dist/api/generated/topology.d.ts +353 -0
- package/dist/api/generated/topology.d.ts.map +1 -0
- package/dist/api/generated/topology.js +253 -0
- package/dist/api/generated/topology.js.map +1 -0
- package/dist/api/generated/view.d.ts +9 -0
- package/dist/api/generated/view.d.ts.map +1 -0
- package/dist/api/generated/view.js +9 -0
- package/dist/api/generated/view.js.map +1 -0
- package/dist/api/geom.d.ts +66 -0
- package/dist/api/geom.d.ts.map +1 -0
- package/dist/api/geom.js +122 -0
- package/dist/api/geom.js.map +1 -0
- package/dist/api/index.d.ts +47 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +70 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/internal/compat-op.d.ts +88 -0
- package/dist/api/internal/compat-op.d.ts.map +1 -0
- package/dist/api/internal/compat-op.js +176 -0
- package/dist/api/internal/compat-op.js.map +1 -0
- package/dist/api/internal/compat-projection.d.ts +53 -0
- package/dist/api/internal/compat-projection.d.ts.map +1 -0
- package/dist/api/internal/compat-projection.js +72 -0
- package/dist/api/internal/compat-projection.js.map +1 -0
- package/dist/api/internal/dual-form-args.d.ts +143 -0
- package/dist/api/internal/dual-form-args.d.ts.map +1 -0
- package/dist/api/internal/dual-form-args.js +217 -0
- package/dist/api/internal/dual-form-args.js.map +1 -0
- package/dist/api/internal/l3-bridge.d.ts +94 -0
- package/dist/api/internal/l3-bridge.d.ts.map +1 -0
- package/dist/api/internal/l3-bridge.js +143 -0
- package/dist/api/internal/l3-bridge.js.map +1 -0
- package/dist/api/internal/result-unwrap.d.ts +101 -0
- package/dist/api/internal/result-unwrap.d.ts.map +1 -0
- package/dist/api/internal/result-unwrap.js +119 -0
- package/dist/api/internal/result-unwrap.js.map +1 -0
- package/dist/api/internal/svg-asset-resolver.d.ts +22 -0
- package/dist/api/internal/svg-asset-resolver.d.ts.map +1 -0
- package/dist/api/internal/svg-asset-resolver.js +45 -0
- package/dist/api/internal/svg-asset-resolver.js.map +1 -0
- package/dist/api/knurl.d.ts +38 -0
- package/dist/api/knurl.d.ts.map +1 -0
- package/dist/api/knurl.js +62 -0
- package/dist/api/knurl.js.map +1 -0
- package/dist/api/load.d.ts +39 -0
- package/dist/api/load.d.ts.map +1 -0
- package/dist/api/load.js +82 -0
- package/dist/api/load.js.map +1 -0
- package/dist/api/occt-kernel-bridge.d.ts +43 -0
- package/dist/api/occt-kernel-bridge.d.ts.map +1 -0
- package/dist/api/occt-kernel-bridge.js +59 -0
- package/dist/api/occt-kernel-bridge.js.map +1 -0
- package/dist/api/primitives.d.ts +161 -0
- package/dist/api/primitives.d.ts.map +1 -0
- package/dist/api/primitives.js +296 -0
- package/dist/api/primitives.js.map +1 -0
- package/dist/api/reconcile.d.ts +28 -0
- package/dist/api/reconcile.d.ts.map +1 -0
- package/dist/api/reconcile.js +45 -0
- package/dist/api/reconcile.js.map +1 -0
- package/dist/api/result.d.ts +15 -0
- package/dist/api/result.d.ts.map +1 -0
- package/dist/api/result.js +15 -0
- package/dist/api/result.js.map +1 -0
- package/dist/api/screw.d.ts +38 -0
- package/dist/api/screw.d.ts.map +1 -0
- package/dist/api/screw.js +160 -0
- package/dist/api/screw.js.map +1 -0
- package/dist/api/sdf.d.ts +32 -0
- package/dist/api/sdf.d.ts.map +1 -0
- package/dist/api/sdf.js +46 -0
- package/dist/api/sdf.js.map +1 -0
- package/dist/api/sketch.d.ts +73 -0
- package/dist/api/sketch.d.ts.map +1 -0
- package/dist/api/sketch.js +149 -0
- package/dist/api/sketch.js.map +1 -0
- package/dist/api/surface/arg-spec.d.ts +111 -0
- package/dist/api/surface/arg-spec.d.ts.map +1 -0
- package/dist/api/surface/arg-spec.js +3535 -0
- package/dist/api/surface/arg-spec.js.map +1 -0
- package/dist/api/surface/projection-overrides.d.ts +38 -0
- package/dist/api/surface/projection-overrides.d.ts.map +1 -0
- package/dist/api/surface/projection-overrides.js +163 -0
- package/dist/api/surface/projection-overrides.js.map +1 -0
- package/dist/api/svgExtrude.d.ts +32 -0
- package/dist/api/svgExtrude.d.ts.map +1 -0
- package/dist/api/svgExtrude.js +73 -0
- package/dist/api/svgExtrude.js.map +1 -0
- package/dist/api/text.d.ts +34 -0
- package/dist/api/text.d.ts.map +1 -0
- package/dist/api/text.js +100 -0
- package/dist/api/text.js.map +1 -0
- package/dist/api/topo-resolve.d.ts +89 -0
- package/dist/api/topo-resolve.d.ts.map +1 -0
- package/dist/api/topo-resolve.js +195 -0
- package/dist/api/topo-resolve.js.map +1 -0
- package/dist/api/transform.d.ts +108 -0
- package/dist/api/transform.d.ts.map +1 -0
- package/dist/api/transform.js +229 -0
- package/dist/api/transform.js.map +1 -0
- package/dist/api/view/index.d.ts +16 -0
- package/dist/api/view/index.d.ts.map +1 -0
- package/dist/api/view/index.js +16 -0
- package/dist/api/view/index.js.map +1 -0
- package/dist/api/view/view-camera.d.ts +53 -0
- package/dist/api/view/view-camera.d.ts.map +1 -0
- package/dist/api/view/view-camera.js +51 -0
- package/dist/api/view/view-camera.js.map +1 -0
- package/dist/api/view/view-projection.d.ts +80 -0
- package/dist/api/view/view-projection.d.ts.map +1 -0
- package/dist/api/view/view-projection.js +128 -0
- package/dist/api/view/view-projection.js.map +1 -0
- package/dist/api/view/view-sheet.d.ts +56 -0
- package/dist/api/view/view-sheet.d.ts.map +1 -0
- package/dist/api/view/view-sheet.js +91 -0
- package/dist/api/view/view-sheet.js.map +1 -0
- package/dist/boolean/cross-section.d.ts +64 -0
- package/dist/boolean/cross-section.d.ts.map +1 -0
- package/dist/boolean/cross-section.js +301 -0
- package/dist/boolean/cross-section.js.map +1 -0
- package/dist/boolean/csg-backend.d.ts +94 -0
- package/dist/boolean/csg-backend.d.ts.map +1 -0
- package/dist/boolean/csg-backend.js +137 -0
- package/dist/boolean/csg-backend.js.map +1 -0
- package/dist/boolean/csg-core.d.ts +207 -0
- package/dist/boolean/csg-core.d.ts.map +1 -0
- package/dist/boolean/csg-core.js +576 -0
- package/dist/boolean/csg-core.js.map +1 -0
- package/dist/boolean/deriveNormals.d.ts +21 -0
- package/dist/boolean/deriveNormals.d.ts.map +1 -0
- package/dist/boolean/deriveNormals.js +24 -0
- package/dist/boolean/deriveNormals.js.map +1 -0
- package/dist/boolean/dovetail-math.d.ts +56 -0
- package/dist/boolean/dovetail-math.d.ts.map +1 -0
- package/dist/boolean/dovetail-math.js +85 -0
- package/dist/boolean/dovetail-math.js.map +1 -0
- package/dist/boolean/extrude-helpers.d.ts +88 -0
- package/dist/boolean/extrude-helpers.d.ts.map +1 -0
- package/dist/boolean/extrude-helpers.js +134 -0
- package/dist/boolean/extrude-helpers.js.map +1 -0
- package/dist/boolean/geo-convert.d.ts +52 -0
- package/dist/boolean/geo-convert.d.ts.map +1 -0
- package/dist/boolean/geo-convert.js +94 -0
- package/dist/boolean/geo-convert.js.map +1 -0
- package/dist/boolean/joinery-shapes.d.ts +76 -0
- package/dist/boolean/joinery-shapes.d.ts.map +1 -0
- package/dist/boolean/joinery-shapes.js +205 -0
- package/dist/boolean/joinery-shapes.js.map +1 -0
- package/dist/boolean/manifold-preview.d.ts +26 -0
- package/dist/boolean/manifold-preview.d.ts.map +1 -0
- package/dist/boolean/manifold-preview.js +48 -0
- package/dist/boolean/manifold-preview.js.map +1 -0
- package/dist/brep/brep-chain.d.ts +115 -0
- package/dist/brep/brep-chain.d.ts.map +1 -0
- package/dist/brep/brep-chain.js +99 -0
- package/dist/brep/brep-chain.js.map +1 -0
- package/dist/brep/brep-ops.d.ts +251 -0
- package/dist/brep/brep-ops.d.ts.map +1 -0
- package/dist/brep/brep-ops.js +545 -0
- package/dist/brep/brep-ops.js.map +1 -0
- package/dist/brep/brep-topology.d.ts +63 -0
- package/dist/brep/brep-topology.d.ts.map +1 -0
- package/dist/brep/brep-topology.js +86 -0
- package/dist/brep/brep-topology.js.map +1 -0
- package/dist/brep/brep-utils.d.ts +25 -0
- package/dist/brep/brep-utils.d.ts.map +1 -0
- package/dist/brep/brep-utils.js +42 -0
- package/dist/brep/brep-utils.js.map +1 -0
- package/dist/brep/engine/adapters/brep-mock.d.ts +24 -0
- package/dist/brep/engine/adapters/brep-mock.d.ts.map +1 -0
- package/dist/brep/engine/adapters/brep-mock.js +303 -0
- package/dist/brep/engine/adapters/brep-mock.js.map +1 -0
- package/dist/brep/engine/adapters/brepkit.d.ts +25 -0
- package/dist/brep/engine/adapters/brepkit.d.ts.map +1 -0
- package/dist/brep/engine/adapters/brepkit.js +51 -0
- package/dist/brep/engine/adapters/brepkit.js.map +1 -0
- package/dist/brep/engine/adapters/occt.d.ts +31 -0
- package/dist/brep/engine/adapters/occt.d.ts.map +1 -0
- package/dist/brep/engine/adapters/occt.js +61 -0
- package/dist/brep/engine/adapters/occt.js.map +1 -0
- package/dist/brep/engine/primitives.d.ts +136 -0
- package/dist/brep/engine/primitives.d.ts.map +1 -0
- package/dist/brep/engine/primitives.js +13 -0
- package/dist/brep/engine/primitives.js.map +1 -0
- package/dist/brep/engine/registry.d.ts +88 -0
- package/dist/brep/engine/registry.d.ts.map +1 -0
- package/dist/brep/engine/registry.js +139 -0
- package/dist/brep/engine/registry.js.map +1 -0
- package/dist/brep/engine/types.d.ts +157 -0
- package/dist/brep/engine/types.d.ts.map +1 -0
- package/dist/brep/engine/types.js +11 -0
- package/dist/brep/engine/types.js.map +1 -0
- package/dist/brep/export/step.d.ts +48 -0
- package/dist/brep/export/step.d.ts.map +1 -0
- package/dist/brep/export/step.js +118 -0
- package/dist/brep/export/step.js.map +1 -0
- package/dist/brep/export/stl.d.ts +27 -0
- package/dist/brep/export/stl.d.ts.map +1 -0
- package/dist/brep/export/stl.js +93 -0
- package/dist/brep/export/stl.js.map +1 -0
- package/dist/brep/face-evolution.d.ts +244 -0
- package/dist/brep/face-evolution.d.ts.map +1 -0
- package/dist/brep/face-evolution.js +408 -0
- package/dist/brep/face-evolution.js.map +1 -0
- package/dist/brep/handle-bridge.d.ts +59 -0
- package/dist/brep/handle-bridge.d.ts.map +1 -0
- package/dist/brep/handle-bridge.js +91 -0
- package/dist/brep/handle-bridge.js.map +1 -0
- package/dist/brep/index.d.ts +15 -0
- package/dist/brep/index.d.ts.map +1 -0
- package/dist/brep/index.js +20 -0
- package/dist/brep/index.js.map +1 -0
- package/dist/brep/primitives-brep.d.ts +52 -0
- package/dist/brep/primitives-brep.d.ts.map +1 -0
- package/dist/brep/primitives-brep.js +108 -0
- package/dist/brep/primitives-brep.js.map +1 -0
- package/dist/brep/svg/svg-to-solid.d.ts +111 -0
- package/dist/brep/svg/svg-to-solid.d.ts.map +1 -0
- package/dist/brep/svg/svg-to-solid.js +843 -0
- package/dist/brep/svg/svg-to-solid.js.map +1 -0
- package/dist/brep/text/fontRegistry.d.ts +71 -0
- package/dist/brep/text/fontRegistry.d.ts.map +1 -0
- package/dist/brep/text/fontRegistry.js +100 -0
- package/dist/brep/text/fontRegistry.js.map +1 -0
- package/dist/brep/text/fontTestHelper.d.ts +30 -0
- package/dist/brep/text/fontTestHelper.d.ts.map +1 -0
- package/dist/brep/text/fontTestHelper.js +57 -0
- package/dist/brep/text/fontTestHelper.js.map +1 -0
- package/dist/brep/text/text-to-solid.d.ts +48 -0
- package/dist/brep/text/text-to-solid.d.ts.map +1 -0
- package/dist/brep/text/text-to-solid.js +218 -0
- package/dist/brep/text/text-to-solid.js.map +1 -0
- package/dist/brepjs-compat.d.ts +20 -0
- package/dist/brepjs-compat.d.ts.map +1 -0
- package/dist/brepjs-compat.js +20 -0
- package/dist/brepjs-compat.js.map +1 -0
- package/dist/brepkit-kernel/brepkitKernel.d.ts +29 -0
- package/dist/brepkit-kernel/brepkitKernel.d.ts.map +1 -0
- package/dist/brepkit-kernel/brepkitKernel.js +571 -0
- package/dist/brepkit-kernel/brepkitKernel.js.map +1 -0
- package/dist/brepkit-kernel/brepkitWasm.d.ts +25 -0
- package/dist/brepkit-kernel/brepkitWasm.d.ts.map +1 -0
- package/dist/brepkit-kernel/brepkitWasm.js +51 -0
- package/dist/brepkit-kernel/brepkitWasm.js.map +1 -0
- package/dist/browser-host/browser-event-sink.d.ts +31 -0
- package/dist/browser-host/browser-event-sink.d.ts.map +1 -0
- package/dist/browser-host/browser-event-sink.js +35 -0
- package/dist/browser-host/browser-event-sink.js.map +1 -0
- package/dist/browser-host/browser-font-provider.d.ts +47 -0
- package/dist/browser-host/browser-font-provider.d.ts.map +1 -0
- package/dist/browser-host/browser-font-provider.js +69 -0
- package/dist/browser-host/browser-font-provider.js.map +1 -0
- package/dist/browser-host/csg-worker-protocol.d.ts +102 -0
- package/dist/browser-host/csg-worker-protocol.d.ts.map +1 -0
- package/dist/browser-host/csg-worker-protocol.js +8 -0
- package/dist/browser-host/csg-worker-protocol.js.map +1 -0
- package/dist/browser-host/csg-worker.d.ts +13 -0
- package/dist/browser-host/csg-worker.d.ts.map +1 -0
- package/dist/browser-host/csg-worker.js +98 -0
- package/dist/browser-host/csg-worker.js.map +1 -0
- package/dist/browser-host/fetch-asset-resolver.d.ts +45 -0
- package/dist/browser-host/fetch-asset-resolver.d.ts.map +1 -0
- package/dist/browser-host/fetch-asset-resolver.js +63 -0
- package/dist/browser-host/fetch-asset-resolver.js.map +1 -0
- package/dist/browser-host/index.d.ts +76 -0
- package/dist/browser-host/index.d.ts.map +1 -0
- package/dist/browser-host/index.js +95 -0
- package/dist/browser-host/index.js.map +1 -0
- package/dist/browser-host/inline-csg-backend.d.ts +56 -0
- package/dist/browser-host/inline-csg-backend.d.ts.map +1 -0
- package/dist/browser-host/inline-csg-backend.js +110 -0
- package/dist/browser-host/inline-csg-backend.js.map +1 -0
- package/dist/browser-host/inline-sdf-backend.d.ts +23 -0
- package/dist/browser-host/inline-sdf-backend.d.ts.map +1 -0
- package/dist/browser-host/inline-sdf-backend.js +28 -0
- package/dist/browser-host/inline-sdf-backend.js.map +1 -0
- package/dist/browser-host/sdf-worker-protocol.d.ts +41 -0
- package/dist/browser-host/sdf-worker-protocol.d.ts.map +1 -0
- package/dist/browser-host/sdf-worker-protocol.js +5 -0
- package/dist/browser-host/sdf-worker-protocol.js.map +1 -0
- package/dist/browser-host/sdf-worker.d.ts +12 -0
- package/dist/browser-host/sdf-worker.d.ts.map +1 -0
- package/dist/browser-host/sdf-worker.js +39 -0
- package/dist/browser-host/sdf-worker.js.map +1 -0
- package/dist/browser-host/worker-csg-backend.d.ts +63 -0
- package/dist/browser-host/worker-csg-backend.d.ts.map +1 -0
- package/dist/browser-host/worker-csg-backend.js +92 -0
- package/dist/browser-host/worker-csg-backend.js.map +1 -0
- package/dist/browser-host/worker-sdf-backend.d.ts +26 -0
- package/dist/browser-host/worker-sdf-backend.d.ts.map +1 -0
- package/dist/browser-host/worker-sdf-backend.js +66 -0
- package/dist/browser-host/worker-sdf-backend.js.map +1 -0
- package/dist/browser.d.ts +136 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +119 -0
- package/dist/browser.js.map +1 -0
- package/dist/cad-runtime/admit-compat-lib.d.ts +29 -0
- package/dist/cad-runtime/admit-compat-lib.d.ts.map +1 -0
- package/dist/cad-runtime/admit-compat-lib.js +49 -0
- package/dist/cad-runtime/admit-compat-lib.js.map +1 -0
- package/dist/cad-runtime/backend-dispatch.d.ts +58 -0
- package/dist/cad-runtime/backend-dispatch.d.ts.map +1 -0
- package/dist/cad-runtime/backend-dispatch.js +87 -0
- package/dist/cad-runtime/backend-dispatch.js.map +1 -0
- package/dist/cad-runtime/browser-lib-loader.d.ts +76 -0
- package/dist/cad-runtime/browser-lib-loader.d.ts.map +1 -0
- package/dist/cad-runtime/browser-lib-loader.js +113 -0
- package/dist/cad-runtime/browser-lib-loader.js.map +1 -0
- package/dist/cad-runtime/content-key.d.ts +30 -0
- package/dist/cad-runtime/content-key.d.ts.map +1 -0
- package/dist/cad-runtime/content-key.js +134 -0
- package/dist/cad-runtime/content-key.js.map +1 -0
- package/dist/cad-runtime/createRuntimeWithCad.d.ts +22 -0
- package/dist/cad-runtime/createRuntimeWithCad.d.ts.map +1 -0
- package/dist/cad-runtime/createRuntimeWithCad.js +29 -0
- package/dist/cad-runtime/createRuntimeWithCad.js.map +1 -0
- package/dist/cad-runtime/direct-executor.d.ts +404 -0
- package/dist/cad-runtime/direct-executor.d.ts.map +1 -0
- package/dist/cad-runtime/direct-executor.js +1180 -0
- package/dist/cad-runtime/direct-executor.js.map +1 -0
- package/dist/cad-runtime/exec-backend.d.ts +62 -0
- package/dist/cad-runtime/exec-backend.d.ts.map +1 -0
- package/dist/cad-runtime/exec-backend.js +18 -0
- package/dist/cad-runtime/exec-backend.js.map +1 -0
- package/dist/cad-runtime/exec-backends/interp-backend.d.ts +36 -0
- package/dist/cad-runtime/exec-backends/interp-backend.d.ts.map +1 -0
- package/dist/cad-runtime/exec-backends/interp-backend.js +91 -0
- package/dist/cad-runtime/exec-backends/interp-backend.js.map +1 -0
- package/dist/cad-runtime/exec-backends/vm-backend.d.ts +19 -0
- package/dist/cad-runtime/exec-backends/vm-backend.d.ts.map +1 -0
- package/dist/cad-runtime/exec-backends/vm-backend.js +16 -0
- package/dist/cad-runtime/exec-backends/vm-backend.js.map +1 -0
- package/dist/cad-runtime/execution-limit-error.d.ts +13 -0
- package/dist/cad-runtime/execution-limit-error.d.ts.map +1 -0
- package/dist/cad-runtime/execution-limit-error.js +16 -0
- package/dist/cad-runtime/execution-limit-error.js.map +1 -0
- package/dist/cad-runtime/index.d.ts +10 -0
- package/dist/cad-runtime/index.d.ts.map +1 -0
- package/dist/cad-runtime/index.js +7 -0
- package/dist/cad-runtime/index.js.map +1 -0
- package/dist/cad-runtime/interp/closure.d.ts +39 -0
- package/dist/cad-runtime/interp/closure.d.ts.map +1 -0
- package/dist/cad-runtime/interp/closure.js +66 -0
- package/dist/cad-runtime/interp/closure.js.map +1 -0
- package/dist/cad-runtime/interp/env.d.ts +79 -0
- package/dist/cad-runtime/interp/env.d.ts.map +1 -0
- package/dist/cad-runtime/interp/env.js +76 -0
- package/dist/cad-runtime/interp/env.js.map +1 -0
- package/dist/cad-runtime/interp/eval-expr.d.ts +23 -0
- package/dist/cad-runtime/interp/eval-expr.d.ts.map +1 -0
- package/dist/cad-runtime/interp/eval-expr.js +232 -0
- package/dist/cad-runtime/interp/eval-expr.js.map +1 -0
- package/dist/cad-runtime/interp/exec-stmt.d.ts +34 -0
- package/dist/cad-runtime/interp/exec-stmt.d.ts.map +1 -0
- package/dist/cad-runtime/interp/exec-stmt.js +276 -0
- package/dist/cad-runtime/interp/exec-stmt.js.map +1 -0
- package/dist/cad-runtime/interp/signals.d.ts +31 -0
- package/dist/cad-runtime/interp/signals.d.ts.map +1 -0
- package/dist/cad-runtime/interp/signals.js +45 -0
- package/dist/cad-runtime/interp/signals.js.map +1 -0
- package/dist/cad-runtime/lib-id.d.ts +30 -0
- package/dist/cad-runtime/lib-id.d.ts.map +1 -0
- package/dist/cad-runtime/lib-id.js +94 -0
- package/dist/cad-runtime/lib-id.js.map +1 -0
- package/dist/cad-runtime/live-shapes.d.ts +94 -0
- package/dist/cad-runtime/live-shapes.d.ts.map +1 -0
- package/dist/cad-runtime/live-shapes.js +258 -0
- package/dist/cad-runtime/live-shapes.js.map +1 -0
- package/dist/cad-runtime/module-executor.d.ts +271 -0
- package/dist/cad-runtime/module-executor.d.ts.map +1 -0
- package/dist/cad-runtime/module-executor.js +630 -0
- package/dist/cad-runtime/module-executor.js.map +1 -0
- package/dist/cad-runtime/module-registry.d.ts +114 -0
- package/dist/cad-runtime/module-registry.d.ts.map +1 -0
- package/dist/cad-runtime/module-registry.js +218 -0
- package/dist/cad-runtime/module-registry.js.map +1 -0
- package/dist/cad-runtime/ports.d.ts +213 -0
- package/dist/cad-runtime/ports.d.ts.map +1 -0
- package/dist/cad-runtime/ports.js +13 -0
- package/dist/cad-runtime/ports.js.map +1 -0
- package/dist/cad-runtime/preview-exec.d.ts +50 -0
- package/dist/cad-runtime/preview-exec.d.ts.map +1 -0
- package/dist/cad-runtime/preview-exec.js +61 -0
- package/dist/cad-runtime/preview-exec.js.map +1 -0
- package/dist/cad-runtime/runtime.d.ts +575 -0
- package/dist/cad-runtime/runtime.d.ts.map +1 -0
- package/dist/cad-runtime/runtime.js +1229 -0
- package/dist/cad-runtime/runtime.js.map +1 -0
- package/dist/cad-runtime/terminal-dag.d.ts +65 -0
- package/dist/cad-runtime/terminal-dag.d.ts.map +1 -0
- package/dist/cad-runtime/terminal-dag.js +167 -0
- package/dist/cad-runtime/terminal-dag.js.map +1 -0
- package/dist/csg.d.ts +16 -0
- package/dist/csg.d.ts.map +1 -0
- package/dist/csg.js +13 -0
- package/dist/csg.js.map +1 -0
- package/dist/define-op.d.ts +163 -0
- package/dist/define-op.d.ts.map +1 -0
- package/dist/define-op.js +268 -0
- package/dist/define-op.js.map +1 -0
- package/dist/faqts/browser.d.ts +16 -0
- package/dist/faqts/browser.d.ts.map +1 -0
- package/dist/faqts/browser.js +13 -0
- package/dist/faqts/browser.js.map +1 -0
- package/dist/faqts/exec-blob.d.ts +14 -0
- package/dist/faqts/exec-blob.d.ts.map +1 -0
- package/dist/faqts/exec-blob.js +22 -0
- package/dist/faqts/exec-blob.js.map +1 -0
- package/dist/faqts/exec-node.d.ts +15 -0
- package/dist/faqts/exec-node.d.ts.map +1 -0
- package/dist/faqts/exec-node.js +29 -0
- package/dist/faqts/exec-node.js.map +1 -0
- package/dist/faqts/imports.d.ts +74 -0
- package/dist/faqts/imports.d.ts.map +1 -0
- package/dist/faqts/imports.js +95 -0
- package/dist/faqts/imports.js.map +1 -0
- package/dist/faqts/index.d.ts +22 -0
- package/dist/faqts/index.d.ts.map +1 -0
- package/dist/faqts/index.js +21 -0
- package/dist/faqts/index.js.map +1 -0
- package/dist/faqts/node.d.ts +23 -0
- package/dist/faqts/node.d.ts.map +1 -0
- package/dist/faqts/node.js +23 -0
- package/dist/faqts/node.js.map +1 -0
- package/dist/faqts/run.d.ts +62 -0
- package/dist/faqts/run.d.ts.map +1 -0
- package/dist/faqts/run.js +62 -0
- package/dist/faqts/run.js.map +1 -0
- package/dist/faqts/transform.d.ts +43 -0
- package/dist/faqts/transform.d.ts.map +1 -0
- package/dist/faqts/transform.js +35 -0
- package/dist/faqts/transform.js.map +1 -0
- package/dist/fcstd/build-fai-zip.d.ts +29 -0
- package/dist/fcstd/build-fai-zip.d.ts.map +1 -0
- package/dist/fcstd/build-fai-zip.js +98 -0
- package/dist/fcstd/build-fai-zip.js.map +1 -0
- package/dist/fcstd/codegen.d.ts +57 -0
- package/dist/fcstd/codegen.d.ts.map +1 -0
- package/dist/fcstd/codegen.js +487 -0
- package/dist/fcstd/codegen.js.map +1 -0
- package/dist/fcstd/container.d.ts +60 -0
- package/dist/fcstd/container.d.ts.map +1 -0
- package/dist/fcstd/container.js +25 -0
- package/dist/fcstd/container.js.map +1 -0
- package/dist/fcstd/contour.d.ts +35 -0
- package/dist/fcstd/contour.d.ts.map +1 -0
- package/dist/fcstd/contour.js +86 -0
- package/dist/fcstd/contour.js.map +1 -0
- package/dist/fcstd/convert.d.ts +34 -0
- package/dist/fcstd/convert.d.ts.map +1 -0
- package/dist/fcstd/convert.js +223 -0
- package/dist/fcstd/convert.js.map +1 -0
- package/dist/fcstd/document.d.ts +41 -0
- package/dist/fcstd/document.d.ts.map +1 -0
- package/dist/fcstd/document.js +137 -0
- package/dist/fcstd/document.js.map +1 -0
- package/dist/fcstd/expressions.d.ts +37 -0
- package/dist/fcstd/expressions.d.ts.map +1 -0
- package/dist/fcstd/expressions.js +56 -0
- package/dist/fcstd/expressions.js.map +1 -0
- package/dist/fcstd/external-geo.d.ts +24 -0
- package/dist/fcstd/external-geo.d.ts.map +1 -0
- package/dist/fcstd/external-geo.js +119 -0
- package/dist/fcstd/external-geo.js.map +1 -0
- package/dist/fcstd/feature-translate.d.ts +107 -0
- package/dist/fcstd/feature-translate.d.ts.map +1 -0
- package/dist/fcstd/feature-translate.js +774 -0
- package/dist/fcstd/feature-translate.js.map +1 -0
- package/dist/fcstd/placement.d.ts +50 -0
- package/dist/fcstd/placement.d.ts.map +1 -0
- package/dist/fcstd/placement.js +77 -0
- package/dist/fcstd/placement.js.map +1 -0
- package/dist/fcstd/planegcs-backend.d.ts +19 -0
- package/dist/fcstd/planegcs-backend.d.ts.map +1 -0
- package/dist/fcstd/planegcs-backend.js +611 -0
- package/dist/fcstd/planegcs-backend.js.map +1 -0
- package/dist/fcstd/sketch-parse.d.ts +138 -0
- package/dist/fcstd/sketch-parse.d.ts.map +1 -0
- package/dist/fcstd/sketch-parse.js +201 -0
- package/dist/fcstd/sketch-parse.js.map +1 -0
- package/dist/fcstd/sketch-solver.d.ts +45 -0
- package/dist/fcstd/sketch-solver.d.ts.map +1 -0
- package/dist/fcstd/sketch-solver.js +23 -0
- package/dist/fcstd/sketch-solver.js.map +1 -0
- package/dist/fcstd/sketch-verify.d.ts +25 -0
- package/dist/fcstd/sketch-verify.d.ts.map +1 -0
- package/dist/fcstd/sketch-verify.js +49 -0
- package/dist/fcstd/sketch-verify.js.map +1 -0
- package/dist/fcstd/unpack.d.ts +25 -0
- package/dist/fcstd/unpack.d.ts.map +1 -0
- package/dist/fcstd/unpack.js +55 -0
- package/dist/fcstd/unpack.js.map +1 -0
- package/dist/identity.d.ts +229 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +229 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +125 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +121 -0
- package/dist/index.js.map +1 -0
- package/dist/lang/allocate-id.d.ts +69 -0
- package/dist/lang/allocate-id.d.ts.map +1 -0
- package/dist/lang/allocate-id.js +82 -0
- package/dist/lang/allocate-id.js.map +1 -0
- package/dist/lang/code-to-args.d.ts +58 -0
- package/dist/lang/code-to-args.d.ts.map +1 -0
- package/dist/lang/code-to-args.js +124 -0
- package/dist/lang/code-to-args.js.map +1 -0
- package/dist/lang/codegen.d.ts +72 -0
- package/dist/lang/codegen.d.ts.map +1 -0
- package/dist/lang/codegen.js +148 -0
- package/dist/lang/codegen.js.map +1 -0
- package/dist/lang/compile.d.ts +50 -0
- package/dist/lang/compile.d.ts.map +1 -0
- package/dist/lang/compile.js +368 -0
- package/dist/lang/compile.js.map +1 -0
- package/dist/lang/expr-validate.d.ts +41 -0
- package/dist/lang/expr-validate.d.ts.map +1 -0
- package/dist/lang/expr-validate.js +96 -0
- package/dist/lang/expr-validate.js.map +1 -0
- package/dist/lang/fnv-hash.d.ts +13 -0
- package/dist/lang/fnv-hash.d.ts.map +1 -0
- package/dist/lang/fnv-hash.js +20 -0
- package/dist/lang/fnv-hash.js.map +1 -0
- package/dist/lang/host-arg.d.ts +154 -0
- package/dist/lang/host-arg.d.ts.map +1 -0
- package/dist/lang/host-arg.js +216 -0
- package/dist/lang/host-arg.js.map +1 -0
- package/dist/lang/keep.d.ts +109 -0
- package/dist/lang/keep.d.ts.map +1 -0
- package/dist/lang/keep.js +226 -0
- package/dist/lang/keep.js.map +1 -0
- package/dist/lang/metadata-extractor.d.ts +203 -0
- package/dist/lang/metadata-extractor.d.ts.map +1 -0
- package/dist/lang/metadata-extractor.js +1377 -0
- package/dist/lang/metadata-extractor.js.map +1 -0
- package/dist/lang/parse-error.d.ts +39 -0
- package/dist/lang/parse-error.d.ts.map +1 -0
- package/dist/lang/parse-error.js +28 -0
- package/dist/lang/parse-error.js.map +1 -0
- package/dist/lang/parser.d.ts +91 -0
- package/dist/lang/parser.d.ts.map +1 -0
- package/dist/lang/parser.js +1594 -0
- package/dist/lang/parser.js.map +1 -0
- package/dist/lang/security-scanner.d.ts +104 -0
- package/dist/lang/security-scanner.d.ts.map +1 -0
- package/dist/lang/security-scanner.js +773 -0
- package/dist/lang/security-scanner.js.map +1 -0
- package/dist/lang/source-edit.d.ts +80 -0
- package/dist/lang/source-edit.d.ts.map +1 -0
- package/dist/lang/source-edit.js +96 -0
- package/dist/lang/source-edit.js.map +1 -0
- package/dist/lang/statement-summary.d.ts +84 -0
- package/dist/lang/statement-summary.d.ts.map +1 -0
- package/dist/lang/statement-summary.js +28 -0
- package/dist/lang/statement-summary.js.map +1 -0
- package/dist/lang/symbol-table.d.ts +28 -0
- package/dist/lang/symbol-table.d.ts.map +1 -0
- package/dist/lang/symbol-table.generated.d.ts +80 -0
- package/dist/lang/symbol-table.generated.d.ts.map +1 -0
- package/dist/lang/symbol-table.generated.js +79 -0
- package/dist/lang/symbol-table.generated.js.map +1 -0
- package/dist/lang/symbol-table.js +27 -0
- package/dist/lang/symbol-table.js.map +1 -0
- package/dist/lang/types.d.ts +57 -0
- package/dist/lang/types.d.ts.map +1 -0
- package/dist/lang/types.js +13 -0
- package/dist/lang/types.js.map +1 -0
- package/dist/mesh/boolean.d.ts +34 -0
- package/dist/mesh/boolean.d.ts.map +1 -0
- package/dist/mesh/boolean.js +41 -0
- package/dist/mesh/boolean.js.map +1 -0
- package/dist/mesh/drill-hole/DrillHoleCore.d.ts +90 -0
- package/dist/mesh/drill-hole/DrillHoleCore.d.ts.map +1 -0
- package/dist/mesh/drill-hole/DrillHoleCore.js +287 -0
- package/dist/mesh/drill-hole/DrillHoleCore.js.map +1 -0
- package/dist/mesh/drill-hole/drill-types.d.ts +34 -0
- package/dist/mesh/drill-hole/drill-types.d.ts.map +1 -0
- package/dist/mesh/drill-hole/drill-types.js +7 -0
- package/dist/mesh/drill-hole/drill-types.js.map +1 -0
- package/dist/mesh/engrave.d.ts +36 -0
- package/dist/mesh/engrave.d.ts.map +1 -0
- package/dist/mesh/engrave.js +154 -0
- package/dist/mesh/engrave.js.map +1 -0
- package/dist/mesh/fai_drill.d.ts +21 -0
- package/dist/mesh/fai_drill.d.ts.map +1 -0
- package/dist/mesh/fai_drill.js +92 -0
- package/dist/mesh/fai_drill.js.map +1 -0
- package/dist/mesh/fai_extrude.d.ts +24 -0
- package/dist/mesh/fai_extrude.d.ts.map +1 -0
- package/dist/mesh/fai_extrude.js +42 -0
- package/dist/mesh/fai_extrude.js.map +1 -0
- package/dist/mesh/fai_split.d.ts +164 -0
- package/dist/mesh/fai_split.d.ts.map +1 -0
- package/dist/mesh/fai_split.js +269 -0
- package/dist/mesh/fai_split.js.map +1 -0
- package/dist/mesh/index.d.ts +84 -0
- package/dist/mesh/index.d.ts.map +1 -0
- package/dist/mesh/index.js +95 -0
- package/dist/mesh/index.js.map +1 -0
- package/dist/mesh/io.d.ts +17 -0
- package/dist/mesh/io.d.ts.map +1 -0
- package/dist/mesh/io.js +33 -0
- package/dist/mesh/io.js.map +1 -0
- package/dist/mesh/knurl/KnurlGenerator.d.ts +77 -0
- package/dist/mesh/knurl/KnurlGenerator.d.ts.map +1 -0
- package/dist/mesh/knurl/KnurlGenerator.js +116 -0
- package/dist/mesh/knurl/KnurlGenerator.js.map +1 -0
- package/dist/mesh/knurl/displacement.d.ts +53 -0
- package/dist/mesh/knurl/displacement.d.ts.map +1 -0
- package/dist/mesh/knurl/displacement.js +274 -0
- package/dist/mesh/knurl/displacement.js.map +1 -0
- package/dist/mesh/knurl/mapping.d.ts +104 -0
- package/dist/mesh/knurl/mapping.d.ts.map +1 -0
- package/dist/mesh/knurl/mapping.js +307 -0
- package/dist/mesh/knurl/mapping.js.map +1 -0
- package/dist/mesh/knurl/meshIndex.d.ts +63 -0
- package/dist/mesh/knurl/meshIndex.d.ts.map +1 -0
- package/dist/mesh/knurl/meshIndex.js +134 -0
- package/dist/mesh/knurl/meshIndex.js.map +1 -0
- package/dist/mesh/knurl/subdivision.d.ts +54 -0
- package/dist/mesh/knurl/subdivision.d.ts.map +1 -0
- package/dist/mesh/knurl/subdivision.js +517 -0
- package/dist/mesh/knurl/subdivision.js.map +1 -0
- package/dist/mesh/knurl/textureLoader.d.ts +38 -0
- package/dist/mesh/knurl/textureLoader.d.ts.map +1 -0
- package/dist/mesh/knurl/textureLoader.js +40 -0
- package/dist/mesh/knurl/textureLoader.js.map +1 -0
- package/dist/mesh/manifold-loader.d.ts +41 -0
- package/dist/mesh/manifold-loader.d.ts.map +1 -0
- package/dist/mesh/manifold-loader.js +56 -0
- package/dist/mesh/manifold-loader.js.map +1 -0
- package/dist/mesh/primitives.d.ts +104 -0
- package/dist/mesh/primitives.d.ts.map +1 -0
- package/dist/mesh/primitives.js +275 -0
- package/dist/mesh/primitives.js.map +1 -0
- package/dist/mesh/query.d.ts +43 -0
- package/dist/mesh/query.d.ts.map +1 -0
- package/dist/mesh/query.js +124 -0
- package/dist/mesh/query.js.map +1 -0
- package/dist/mesh/reconcile.d.ts +84 -0
- package/dist/mesh/reconcile.d.ts.map +1 -0
- package/dist/mesh/reconcile.js +261 -0
- package/dist/mesh/reconcile.js.map +1 -0
- package/dist/mesh/rigid-transform.d.ts +28 -0
- package/dist/mesh/rigid-transform.d.ts.map +1 -0
- package/dist/mesh/rigid-transform.js +51 -0
- package/dist/mesh/rigid-transform.js.map +1 -0
- package/dist/mesh/transform.d.ts +57 -0
- package/dist/mesh/transform.d.ts.map +1 -0
- package/dist/mesh/transform.js +102 -0
- package/dist/mesh/transform.js.map +1 -0
- package/dist/mesh/types.d.ts +279 -0
- package/dist/mesh/types.d.ts.map +1 -0
- package/dist/mesh/types.js +46 -0
- package/dist/mesh/types.js.map +1 -0
- package/dist/module-resolver/index.d.ts +8 -0
- package/dist/module-resolver/index.d.ts.map +1 -0
- package/dist/module-resolver/index.js +8 -0
- package/dist/module-resolver/index.js.map +1 -0
- package/dist/module-resolver/resolver.d.ts +112 -0
- package/dist/module-resolver/resolver.d.ts.map +1 -0
- package/dist/module-resolver/resolver.js +226 -0
- package/dist/module-resolver/resolver.js.map +1 -0
- package/dist/module-resolver/version.d.ts +46 -0
- package/dist/module-resolver/version.d.ts.map +1 -0
- package/dist/module-resolver/version.js +187 -0
- package/dist/module-resolver/version.js.map +1 -0
- package/dist/node-host/cli-event-sink.d.ts +25 -0
- package/dist/node-host/cli-event-sink.d.ts.map +1 -0
- package/dist/node-host/cli-event-sink.js +22 -0
- package/dist/node-host/cli-event-sink.js.map +1 -0
- package/dist/node-host/cli.d.ts +168 -0
- package/dist/node-host/cli.d.ts.map +1 -0
- package/dist/node-host/cli.js +646 -0
- package/dist/node-host/cli.js.map +1 -0
- package/dist/node-host/fs-asset-resolver.d.ts +55 -0
- package/dist/node-host/fs-asset-resolver.d.ts.map +1 -0
- package/dist/node-host/fs-asset-resolver.js +107 -0
- package/dist/node-host/fs-asset-resolver.js.map +1 -0
- package/dist/node-host/fs-project-loader.d.ts +40 -0
- package/dist/node-host/fs-project-loader.d.ts.map +1 -0
- package/dist/node-host/fs-project-loader.js +112 -0
- package/dist/node-host/fs-project-loader.js.map +1 -0
- package/dist/node-host/index.d.ts +46 -0
- package/dist/node-host/index.d.ts.map +1 -0
- package/dist/node-host/index.js +56 -0
- package/dist/node-host/index.js.map +1 -0
- package/dist/node-host/node-font-provider.d.ts +50 -0
- package/dist/node-host/node-font-provider.d.ts.map +1 -0
- package/dist/node-host/node-font-provider.js +87 -0
- package/dist/node-host/node-font-provider.js.map +1 -0
- package/dist/node.d.ts +23 -0
- package/dist/node.d.ts.map +1 -0
- package/dist/node.js +23 -0
- package/dist/node.js.map +1 -0
- package/dist/occt-kernel/highLevelApi.d.ts +106 -0
- package/dist/occt-kernel/highLevelApi.d.ts.map +1 -0
- package/dist/occt-kernel/highLevelApi.js +149 -0
- package/dist/occt-kernel/highLevelApi.js.map +1 -0
- package/dist/occt-kernel/meshReconstruct.d.ts +75 -0
- package/dist/occt-kernel/meshReconstruct.d.ts.map +1 -0
- package/dist/occt-kernel/meshReconstruct.js +196 -0
- package/dist/occt-kernel/meshReconstruct.js.map +1 -0
- package/dist/occt-kernel/occtKernel.d.ts +174 -0
- package/dist/occt-kernel/occtKernel.d.ts.map +1 -0
- package/dist/occt-kernel/occtKernel.js +400 -0
- package/dist/occt-kernel/occtKernel.js.map +1 -0
- package/dist/occt-kernel/stepColorParser.d.ts +54 -0
- package/dist/occt-kernel/stepColorParser.d.ts.map +1 -0
- package/dist/occt-kernel/stepColorParser.js +139 -0
- package/dist/occt-kernel/stepColorParser.js.map +1 -0
- package/dist/occt-kernel/topologyExt.d.ts +80 -0
- package/dist/occt-kernel/topologyExt.d.ts.map +1 -0
- package/dist/occt-kernel/topologyExt.js +1295 -0
- package/dist/occt-kernel/topologyExt.js.map +1 -0
- package/dist/primitives/brep-primitives.d.ts +104 -0
- package/dist/primitives/brep-primitives.d.ts.map +1 -0
- package/dist/primitives/brep-primitives.js +297 -0
- package/dist/primitives/brep-primitives.js.map +1 -0
- package/dist/primitives/mesh-primitives.d.ts +38 -0
- package/dist/primitives/mesh-primitives.d.ts.map +1 -0
- package/dist/primitives/mesh-primitives.js +160 -0
- package/dist/primitives/mesh-primitives.js.map +1 -0
- package/dist/primitives/parse-svg-size.d.ts +18 -0
- package/dist/primitives/parse-svg-size.d.ts.map +1 -0
- package/dist/primitives/parse-svg-size.js +31 -0
- package/dist/primitives/parse-svg-size.js.map +1 -0
- package/dist/primitives/screw/screw-db.d.ts +86 -0
- package/dist/primitives/screw/screw-db.d.ts.map +1 -0
- package/dist/primitives/screw/screw-db.js +95 -0
- package/dist/primitives/screw/screw-db.js.map +1 -0
- package/dist/primitives/screw/screw.d.ts +13 -0
- package/dist/primitives/screw/screw.d.ts.map +1 -0
- package/dist/primitives/screw/screw.js +176 -0
- package/dist/primitives/screw/screw.js.map +1 -0
- package/dist/primitives/svg-extrude.d.ts +43 -0
- package/dist/primitives/svg-extrude.d.ts.map +1 -0
- package/dist/primitives/svg-extrude.js +78 -0
- package/dist/primitives/svg-extrude.js.map +1 -0
- package/dist/primitives/text/cjk.d.ts +61 -0
- package/dist/primitives/text/cjk.d.ts.map +1 -0
- package/dist/primitives/text/cjk.js +215 -0
- package/dist/primitives/text/cjk.js.map +1 -0
- package/dist/primitives/text-geometry.d.ts +47 -0
- package/dist/primitives/text-geometry.d.ts.map +1 -0
- package/dist/primitives/text-geometry.js +127 -0
- package/dist/primitives/text-geometry.js.map +1 -0
- package/dist/primitives/types.d.ts +56 -0
- package/dist/primitives/types.d.ts.map +1 -0
- package/dist/primitives/types.js +25 -0
- package/dist/primitives/types.js.map +1 -0
- package/dist/runtime-state.d.ts +303 -0
- package/dist/runtime-state.d.ts.map +1 -0
- package/dist/runtime-state.js +316 -0
- package/dist/runtime-state.js.map +1 -0
- package/dist/sdf/sdf-core.d.ts +67 -0
- package/dist/sdf/sdf-core.d.ts.map +1 -0
- package/dist/sdf/sdf-core.js +118 -0
- package/dist/sdf/sdf-core.js.map +1 -0
- package/dist/sdf/sdf-runner.d.ts +33 -0
- package/dist/sdf/sdf-runner.d.ts.map +1 -0
- package/dist/sdf/sdf-runner.js +45 -0
- package/dist/sdf/sdf-runner.js.map +1 -0
- package/dist/sdf/templates.d.ts +7 -0
- package/dist/sdf/templates.d.ts.map +1 -0
- package/dist/sdf/templates.js +282 -0
- package/dist/sdf/templates.js.map +1 -0
- package/dist/sdf/types.d.ts +114 -0
- package/dist/sdf/types.d.ts.map +1 -0
- package/dist/sdf/types.js +97 -0
- package/dist/sdf/types.js.map +1 -0
- package/dist/sdf.d.ts +12 -0
- package/dist/sdf.d.ts.map +1 -0
- package/dist/sdf.js +10 -0
- package/dist/sdf.js.map +1 -0
- package/dist/sdk.d.ts +30 -0
- package/dist/sdk.d.ts.map +1 -0
- package/dist/sdk.js +34 -0
- package/dist/sdk.js.map +1 -0
- package/dist/shape.d.ts +121 -0
- package/dist/shape.d.ts.map +1 -0
- package/dist/shape.js +145 -0
- package/dist/shape.js.map +1 -0
- package/dist/test-helpers.d.ts +31 -0
- package/dist/test-helpers.d.ts.map +1 -0
- package/dist/test-helpers.js +55 -0
- package/dist/test-helpers.js.map +1 -0
- package/dist/topology/build-face-ids.d.ts +35 -0
- package/dist/topology/build-face-ids.d.ts.map +1 -0
- package/dist/topology/build-face-ids.js +70 -0
- package/dist/topology/build-face-ids.js.map +1 -0
- package/dist/topology/build-logical-points.d.ts +68 -0
- package/dist/topology/build-logical-points.d.ts.map +1 -0
- package/dist/topology/build-logical-points.js +169 -0
- package/dist/topology/build-logical-points.js.map +1 -0
- package/dist/topology/build-selector-runtime.d.ts +82 -0
- package/dist/topology/build-selector-runtime.d.ts.map +1 -0
- package/dist/topology/build-selector-runtime.js +601 -0
- package/dist/topology/build-selector-runtime.js.map +1 -0
- package/dist/topology/naming/build-naming.d.ts +89 -0
- package/dist/topology/naming/build-naming.d.ts.map +1 -0
- package/dist/topology/naming/build-naming.js +107 -0
- package/dist/topology/naming/build-naming.js.map +1 -0
- package/dist/topology/naming/capture-topo-ref.d.ts +22 -0
- package/dist/topology/naming/capture-topo-ref.d.ts.map +1 -0
- package/dist/topology/naming/capture-topo-ref.js +34 -0
- package/dist/topology/naming/capture-topo-ref.js.map +1 -0
- package/dist/topology/naming/geom-hint.d.ts +92 -0
- package/dist/topology/naming/geom-hint.d.ts.map +1 -0
- package/dist/topology/naming/geom-hint.js +254 -0
- package/dist/topology/naming/geom-hint.js.map +1 -0
- package/dist/topology/naming/index.d.ts +19 -0
- package/dist/topology/naming/index.d.ts.map +1 -0
- package/dist/topology/naming/index.js +19 -0
- package/dist/topology/naming/index.js.map +1 -0
- package/dist/topology/naming/ref-params.d.ts +49 -0
- package/dist/topology/naming/ref-params.d.ts.map +1 -0
- package/dist/topology/naming/ref-params.js +92 -0
- package/dist/topology/naming/ref-params.js.map +1 -0
- package/dist/topology/naming/resolve-derived.d.ts +23 -0
- package/dist/topology/naming/resolve-derived.d.ts.map +1 -0
- package/dist/topology/naming/resolve-derived.js +128 -0
- package/dist/topology/naming/resolve-derived.js.map +1 -0
- package/dist/topology/naming/resolve-edge.d.ts +36 -0
- package/dist/topology/naming/resolve-edge.d.ts.map +1 -0
- package/dist/topology/naming/resolve-edge.js +138 -0
- package/dist/topology/naming/resolve-edge.js.map +1 -0
- package/dist/topology/naming/resolve-face.d.ts +89 -0
- package/dist/topology/naming/resolve-face.d.ts.map +1 -0
- package/dist/topology/naming/resolve-face.js +107 -0
- package/dist/topology/naming/resolve-face.js.map +1 -0
- package/dist/topology/naming/resolve-vertex.d.ts +27 -0
- package/dist/topology/naming/resolve-vertex.d.ts.map +1 -0
- package/dist/topology/naming/resolve-vertex.js +115 -0
- package/dist/topology/naming/resolve-vertex.js.map +1 -0
- package/dist/topology/naming/resolver.d.ts +40 -0
- package/dist/topology/naming/resolver.d.ts.map +1 -0
- package/dist/topology/naming/resolver.js +71 -0
- package/dist/topology/naming/resolver.js.map +1 -0
- package/dist/topology/naming/roles.d.ts +111 -0
- package/dist/topology/naming/roles.d.ts.map +1 -0
- package/dist/topology/naming/roles.js +271 -0
- package/dist/topology/naming/roles.js.map +1 -0
- package/dist/topology/naming/score.d.ts +60 -0
- package/dist/topology/naming/score.d.ts.map +1 -0
- package/dist/topology/naming/score.js +121 -0
- package/dist/topology/naming/score.js.map +1 -0
- package/dist/topology/naming/types.d.ts +142 -0
- package/dist/topology/naming/types.d.ts.map +1 -0
- package/dist/topology/naming/types.js +27 -0
- package/dist/topology/naming/types.js.map +1 -0
- package/dist/topology/types.d.ts +225 -0
- package/dist/topology/types.d.ts.map +1 -0
- package/dist/topology/types.js +2 -0
- package/dist/topology/types.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts +106 -0
- package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js +341 -0
- package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts +185 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprint.js +361 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprint.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts +15 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js +28 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts +29 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js +86 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts +57 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js +92 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts +58 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js +346 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts +30 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js +45 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts +68 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprints.js +116 -0
- package/dist/vendored/brepjs/2d/blueprints/blueprints.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts +68 -0
- package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/boolean2D.js +362 -0
- package/dist/vendored/brepjs/2d/blueprints/boolean2D.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts +34 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js +176 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts +55 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js +110 -0
- package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts +41 -0
- package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js +90 -0
- package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts +85 -0
- package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js +136 -0
- package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts +48 -0
- package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js +154 -0
- package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts +342 -0
- package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js +32 -0
- package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/index.d.ts +16 -0
- package/dist/vendored/brepjs/2d/blueprints/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/index.js +13 -0
- package/dist/vendored/brepjs/2d/blueprints/index.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts +18 -0
- package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js +230 -0
- package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/lib.d.ts +73 -0
- package/dist/vendored/brepjs/2d/blueprints/lib.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/lib.js +103 -0
- package/dist/vendored/brepjs/2d/blueprints/lib.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts +31 -0
- package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js +226 -0
- package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/svg.d.ts +22 -0
- package/dist/vendored/brepjs/2d/blueprints/svg.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/blueprints/svg.js +30 -0
- package/dist/vendored/brepjs/2d/blueprints/svg.js.map +1 -0
- package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts +124 -0
- package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/curve2dGeometryFns.js +235 -0
- package/dist/vendored/brepjs/2d/curve2dGeometryFns.js.map +1 -0
- package/dist/vendored/brepjs/2d/curves.d.ts +45 -0
- package/dist/vendored/brepjs/2d/curves.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/curves.js +139 -0
- package/dist/vendored/brepjs/2d/curves.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/approximations.d.ts +47 -0
- package/dist/vendored/brepjs/2d/lib/approximations.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/approximations.js +82 -0
- package/dist/vendored/brepjs/2d/lib/approximations.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts +39 -0
- package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/boundingBox2d.js +88 -0
- package/dist/vendored/brepjs/2d/lib/boundingBox2d.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/curve2D.d.ts +82 -0
- package/dist/vendored/brepjs/2d/lib/curve2D.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/curve2D.js +258 -0
- package/dist/vendored/brepjs/2d/lib/curve2D.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts +53 -0
- package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/curve2dFns.js +69 -0
- package/dist/vendored/brepjs/2d/lib/curve2dFns.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/customCorners.d.ts +29 -0
- package/dist/vendored/brepjs/2d/lib/customCorners.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/customCorners.js +237 -0
- package/dist/vendored/brepjs/2d/lib/customCorners.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/definitions.d.ts +12 -0
- package/dist/vendored/brepjs/2d/lib/definitions.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/definitions.js +19 -0
- package/dist/vendored/brepjs/2d/lib/definitions.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts +21 -0
- package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js +71 -0
- package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/index.d.ts +14 -0
- package/dist/vendored/brepjs/2d/lib/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/index.js +14 -0
- package/dist/vendored/brepjs/2d/lib/index.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/intersections.d.ts +34 -0
- package/dist/vendored/brepjs/2d/lib/intersections.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/intersections.js +77 -0
- package/dist/vendored/brepjs/2d/lib/intersections.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts +63 -0
- package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/makeCurves.js +117 -0
- package/dist/vendored/brepjs/2d/lib/makeCurves.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/offset.d.ts +30 -0
- package/dist/vendored/brepjs/2d/lib/offset.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/offset.js +109 -0
- package/dist/vendored/brepjs/2d/lib/offset.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/precision.d.ts +12 -0
- package/dist/vendored/brepjs/2d/lib/precision.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/precision.js +12 -0
- package/dist/vendored/brepjs/2d/lib/precision.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/stitching.d.ts +15 -0
- package/dist/vendored/brepjs/2d/lib/stitching.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/stitching.js +67 -0
- package/dist/vendored/brepjs/2d/lib/stitching.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/svgPath.d.ts +4 -0
- package/dist/vendored/brepjs/2d/lib/svgPath.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/svgPath.js +114 -0
- package/dist/vendored/brepjs/2d/lib/svgPath.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/utils.d.ts +11 -0
- package/dist/vendored/brepjs/2d/lib/utils.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/utils.js +24 -0
- package/dist/vendored/brepjs/2d/lib/utils.js.map +1 -0
- package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts +19 -0
- package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d/lib/vectorOperations.js +26 -0
- package/dist/vendored/brepjs/2d/lib/vectorOperations.js.map +1 -0
- package/dist/vendored/brepjs/2d.d.ts +26 -0
- package/dist/vendored/brepjs/2d.d.ts.map +1 -0
- package/dist/vendored/brepjs/2d.js +33 -0
- package/dist/vendored/brepjs/2d.js.map +1 -0
- package/dist/vendored/brepjs/core/constants.d.ts +7 -0
- package/dist/vendored/brepjs/core/constants.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/constants.js +7 -0
- package/dist/vendored/brepjs/core/constants.js.map +1 -0
- package/dist/vendored/brepjs/core/curve2dHandle.d.ts +35 -0
- package/dist/vendored/brepjs/core/curve2dHandle.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/curve2dHandle.js +48 -0
- package/dist/vendored/brepjs/core/curve2dHandle.js.map +1 -0
- package/dist/vendored/brepjs/core/dimensionTypes.d.ts +61 -0
- package/dist/vendored/brepjs/core/dimensionTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/dimensionTypes.js +54 -0
- package/dist/vendored/brepjs/core/dimensionTypes.js.map +1 -0
- package/dist/vendored/brepjs/core/disposal.d.ts +136 -0
- package/dist/vendored/brepjs/core/disposal.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/disposal.js +441 -0
- package/dist/vendored/brepjs/core/disposal.js.map +1 -0
- package/dist/vendored/brepjs/core/errors.d.ts +191 -0
- package/dist/vendored/brepjs/core/errors.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/errors.js +238 -0
- package/dist/vendored/brepjs/core/errors.js.map +1 -0
- package/dist/vendored/brepjs/core/kernelBoundary.d.ts +40 -0
- package/dist/vendored/brepjs/core/kernelBoundary.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/kernelBoundary.js +99 -0
- package/dist/vendored/brepjs/core/kernelBoundary.js.map +1 -0
- package/dist/vendored/brepjs/core/kernelCall.d.ts +48 -0
- package/dist/vendored/brepjs/core/kernelCall.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/kernelCall.js +154 -0
- package/dist/vendored/brepjs/core/kernelCall.js.map +1 -0
- package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts +17 -0
- package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/kernelErrorTranslation.js +98 -0
- package/dist/vendored/brepjs/core/kernelErrorTranslation.js.map +1 -0
- package/dist/vendored/brepjs/core/kernelReentrancy.d.ts +41 -0
- package/dist/vendored/brepjs/core/kernelReentrancy.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/kernelReentrancy.js +68 -0
- package/dist/vendored/brepjs/core/kernelReentrancy.js.map +1 -0
- package/dist/vendored/brepjs/core/planeOps.d.ts +62 -0
- package/dist/vendored/brepjs/core/planeOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/planeOps.js +148 -0
- package/dist/vendored/brepjs/core/planeOps.js.map +1 -0
- package/dist/vendored/brepjs/core/planeTypes.d.ts +22 -0
- package/dist/vendored/brepjs/core/planeTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/planeTypes.js +6 -0
- package/dist/vendored/brepjs/core/planeTypes.js.map +1 -0
- package/dist/vendored/brepjs/core/result.d.ts +85 -0
- package/dist/vendored/brepjs/core/result.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/result.js +212 -0
- package/dist/vendored/brepjs/core/result.js.map +1 -0
- package/dist/vendored/brepjs/core/shapeTypeCache.d.ts +27 -0
- package/dist/vendored/brepjs/core/shapeTypeCache.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/shapeTypeCache.js +40 -0
- package/dist/vendored/brepjs/core/shapeTypeCache.js.map +1 -0
- package/dist/vendored/brepjs/core/shapeTypes.d.ts +199 -0
- package/dist/vendored/brepjs/core/shapeTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/shapeTypes.js +267 -0
- package/dist/vendored/brepjs/core/shapeTypes.js.map +1 -0
- package/dist/vendored/brepjs/core/typeDiscriminants.d.ts +25 -0
- package/dist/vendored/brepjs/core/typeDiscriminants.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/typeDiscriminants.js +50 -0
- package/dist/vendored/brepjs/core/typeDiscriminants.js.map +1 -0
- package/dist/vendored/brepjs/core/types.d.ts +51 -0
- package/dist/vendored/brepjs/core/types.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/types.js +35 -0
- package/dist/vendored/brepjs/core/types.js.map +1 -0
- package/dist/vendored/brepjs/core/validityTypes.d.ts +143 -0
- package/dist/vendored/brepjs/core/validityTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/validityTypes.js +174 -0
- package/dist/vendored/brepjs/core/validityTypes.js.map +1 -0
- package/dist/vendored/brepjs/core/vecOps.d.ts +53 -0
- package/dist/vendored/brepjs/core/vecOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/core/vecOps.js +131 -0
- package/dist/vendored/brepjs/core/vecOps.js.map +1 -0
- package/dist/vendored/brepjs/core.d.ts +17 -0
- package/dist/vendored/brepjs/core.d.ts.map +1 -0
- package/dist/vendored/brepjs/core.js +13 -0
- package/dist/vendored/brepjs/core.js.map +1 -0
- package/dist/vendored/brepjs/gear/gearFns.d.ts +148 -0
- package/dist/vendored/brepjs/gear/gearFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/gear/gearFns.js +479 -0
- package/dist/vendored/brepjs/gear/gearFns.js.map +1 -0
- package/dist/vendored/brepjs/gear/gearMath.d.ts +89 -0
- package/dist/vendored/brepjs/gear/gearMath.d.ts.map +1 -0
- package/dist/vendored/brepjs/gear/gearMath.js +195 -0
- package/dist/vendored/brepjs/gear/gearMath.js.map +1 -0
- package/dist/vendored/brepjs/gear/gearProfile.d.ts +17 -0
- package/dist/vendored/brepjs/gear/gearProfile.d.ts.map +1 -0
- package/dist/vendored/brepjs/gear/gearProfile.js +159 -0
- package/dist/vendored/brepjs/gear/gearProfile.js.map +1 -0
- package/dist/vendored/brepjs/gear/index.d.ts +4 -0
- package/dist/vendored/brepjs/gear/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/gear/index.js +4 -0
- package/dist/vendored/brepjs/gear/index.js.map +1 -0
- package/dist/vendored/brepjs/index.d.ts +152 -0
- package/dist/vendored/brepjs/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/index.js +195 -0
- package/dist/vendored/brepjs/index.js.map +1 -0
- package/dist/vendored/brepjs/io/dxfExportFns.d.ts +74 -0
- package/dist/vendored/brepjs/io/dxfExportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/dxfExportFns.js +134 -0
- package/dist/vendored/brepjs/io/dxfExportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/dxfImportFns.d.ts +20 -0
- package/dist/vendored/brepjs/io/dxfImportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/dxfImportFns.js +132 -0
- package/dist/vendored/brepjs/io/dxfImportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/gltfExportFns.d.ts +97 -0
- package/dist/vendored/brepjs/io/gltfExportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/gltfExportFns.js +460 -0
- package/dist/vendored/brepjs/io/gltfExportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/gltfImportFns.d.ts +21 -0
- package/dist/vendored/brepjs/io/gltfImportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/gltfImportFns.js +33 -0
- package/dist/vendored/brepjs/io/gltfImportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/importFns.d.ts +56 -0
- package/dist/vendored/brepjs/io/importFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/importFns.js +108 -0
- package/dist/vendored/brepjs/io/importFns.js.map +1 -0
- package/dist/vendored/brepjs/io/ioUtils.d.ts +22 -0
- package/dist/vendored/brepjs/io/ioUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/ioUtils.js +56 -0
- package/dist/vendored/brepjs/io/ioUtils.js.map +1 -0
- package/dist/vendored/brepjs/io/objExportFns.d.ts +23 -0
- package/dist/vendored/brepjs/io/objExportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/objExportFns.js +67 -0
- package/dist/vendored/brepjs/io/objExportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/objImportFns.d.ts +26 -0
- package/dist/vendored/brepjs/io/objImportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/objImportFns.js +96 -0
- package/dist/vendored/brepjs/io/objImportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/stepConfigFns.d.ts +30 -0
- package/dist/vendored/brepjs/io/stepConfigFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/stepConfigFns.js +30 -0
- package/dist/vendored/brepjs/io/stepConfigFns.js.map +1 -0
- package/dist/vendored/brepjs/io/svgImportFns.d.ts +58 -0
- package/dist/vendored/brepjs/io/svgImportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/svgImportFns.js +394 -0
- package/dist/vendored/brepjs/io/svgImportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/threemfExportFns.d.ts +48 -0
- package/dist/vendored/brepjs/io/threemfExportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/threemfExportFns.js +345 -0
- package/dist/vendored/brepjs/io/threemfExportFns.js.map +1 -0
- package/dist/vendored/brepjs/io/threemfImportFns.d.ts +22 -0
- package/dist/vendored/brepjs/io/threemfImportFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/io/threemfImportFns.js +350 -0
- package/dist/vendored/brepjs/io/threemfImportFns.js.map +1 -0
- package/dist/vendored/brepjs/io.d.ts +17 -0
- package/dist/vendored/brepjs/io.d.ts.map +1 -0
- package/dist/vendored/brepjs/io.js +20 -0
- package/dist/vendored/brepjs/io.js.map +1 -0
- package/dist/vendored/brepjs/kernel/capabilities.d.ts +36 -0
- package/dist/vendored/brepjs/kernel/capabilities.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/capabilities.js +35 -0
- package/dist/vendored/brepjs/kernel/capabilities.js.map +1 -0
- package/dist/vendored/brepjs/kernel/geometry2d.d.ts +96 -0
- package/dist/vendored/brepjs/kernel/geometry2d.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/geometry2d.js +885 -0
- package/dist/vendored/brepjs/kernel/geometry2d.js.map +1 -0
- package/dist/vendored/brepjs/kernel/hullGeometry.d.ts +23 -0
- package/dist/vendored/brepjs/kernel/hullGeometry.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/hullGeometry.js +312 -0
- package/dist/vendored/brepjs/kernel/hullGeometry.js.map +1 -0
- package/dist/vendored/brepjs/kernel/index.d.ts +61 -0
- package/dist/vendored/brepjs/kernel/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/index.js +93 -0
- package/dist/vendored/brepjs/kernel/index.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts +44 -0
- package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js +11 -0
- package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts +67 -0
- package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/builderOps.js +12 -0
- package/dist/vendored/brepjs/kernel/interfaces/builderOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/core.d.ts +46 -0
- package/dist/vendored/brepjs/kernel/interfaces/core.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/core.js +11 -0
- package/dist/vendored/brepjs/kernel/interfaces/core.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts +53 -0
- package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/curveOps.js +12 -0
- package/dist/vendored/brepjs/kernel/interfaces/curveOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts +32 -0
- package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js +14 -0
- package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/index.d.ts +43 -0
- package/dist/vendored/brepjs/kernel/interfaces/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/index.js +12 -0
- package/dist/vendored/brepjs/kernel/interfaces/index.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts +65 -0
- package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/ioOps.js +9 -0
- package/dist/vendored/brepjs/kernel/interfaces/ioOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts +55 -0
- package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/measureOps.js +9 -0
- package/dist/vendored/brepjs/kernel/interfaces/measureOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts +25 -0
- package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/meshOps.js +8 -0
- package/dist/vendored/brepjs/kernel/interfaces/meshOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts +53 -0
- package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js +10 -0
- package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts +22 -0
- package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js +11 -0
- package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts +43 -0
- package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/repairOps.js +9 -0
- package/dist/vendored/brepjs/kernel/interfaces/repairOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts +72 -0
- package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js +13 -0
- package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts +73 -0
- package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js +11 -0
- package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts +62 -0
- package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js +9 -0
- package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts +80 -0
- package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/interfaces/transformOps.js +11 -0
- package/dist/vendored/brepjs/kernel/interfaces/transformOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts +145 -0
- package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/kernel2dTypes.js +18 -0
- package/dist/vendored/brepjs/kernel/kernel2dTypes.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts +41 -0
- package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js +2 -0
- package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts +17 -0
- package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js +75 -0
- package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts +36 -0
- package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js +116 -0
- package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts +43 -0
- package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js +292 -0
- package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts +34 -0
- package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js +164 -0
- package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts +26 -0
- package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js +256 -0
- package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts +42 -0
- package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/helpers.js +146 -0
- package/dist/vendored/brepjs/kernel/occtWasm/helpers.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts +17 -0
- package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js +55 -0
- package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts +58 -0
- package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js +303 -0
- package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts +113 -0
- package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js +731 -0
- package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts +62 -0
- package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js +338 -0
- package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts +12 -0
- package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js +120 -0
- package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts +20 -0
- package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js +187 -0
- package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts +513 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js +1016 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts +332 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js +10 -0
- package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts +16 -0
- package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js +64 -0
- package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts +16 -0
- package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js +38 -0
- package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts +56 -0
- package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js +247 -0
- package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts +56 -0
- package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js +235 -0
- package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts +25 -0
- package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js +127 -0
- package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts +40 -0
- package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js +275 -0
- package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js.map +1 -0
- package/dist/vendored/brepjs/kernel/quality.d.ts +28 -0
- package/dist/vendored/brepjs/kernel/quality.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/quality.js +40 -0
- package/dist/vendored/brepjs/kernel/quality.js.map +1 -0
- package/dist/vendored/brepjs/kernel/solverAdapter.d.ts +50 -0
- package/dist/vendored/brepjs/kernel/solverAdapter.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/solverAdapter.js +330 -0
- package/dist/vendored/brepjs/kernel/solverAdapter.js.map +1 -0
- package/dist/vendored/brepjs/kernel/stlBuilder.d.ts +21 -0
- package/dist/vendored/brepjs/kernel/stlBuilder.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/stlBuilder.js +106 -0
- package/dist/vendored/brepjs/kernel/stlBuilder.js.map +1 -0
- package/dist/vendored/brepjs/kernel/types.d.ts +214 -0
- package/dist/vendored/brepjs/kernel/types.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/types.js +22 -0
- package/dist/vendored/brepjs/kernel/types.js.map +1 -0
- package/dist/vendored/brepjs/kernel/unsupported.d.ts +15 -0
- package/dist/vendored/brepjs/kernel/unsupported.d.ts.map +1 -0
- package/dist/vendored/brepjs/kernel/unsupported.js +25 -0
- package/dist/vendored/brepjs/kernel/unsupported.js.map +1 -0
- package/dist/vendored/brepjs/measurement/interferenceFns.d.ts +68 -0
- package/dist/vendored/brepjs/measurement/interferenceFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/measurement/interferenceFns.js +102 -0
- package/dist/vendored/brepjs/measurement/interferenceFns.js.map +1 -0
- package/dist/vendored/brepjs/measurement/measureCache.d.ts +20 -0
- package/dist/vendored/brepjs/measurement/measureCache.d.ts.map +1 -0
- package/dist/vendored/brepjs/measurement/measureCache.js +28 -0
- package/dist/vendored/brepjs/measurement/measureCache.js.map +1 -0
- package/dist/vendored/brepjs/measurement/measureFns.d.ts +92 -0
- package/dist/vendored/brepjs/measurement/measureFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/measurement/measureFns.js +239 -0
- package/dist/vendored/brepjs/measurement/measureFns.js.map +1 -0
- package/dist/vendored/brepjs/measurement/measureTypes.d.ts +35 -0
- package/dist/vendored/brepjs/measurement/measureTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/measurement/measureTypes.js +7 -0
- package/dist/vendored/brepjs/measurement/measureTypes.js.map +1 -0
- package/dist/vendored/brepjs/measurement.d.ts +5 -0
- package/dist/vendored/brepjs/measurement.d.ts.map +1 -0
- package/dist/vendored/brepjs/measurement.js +5 -0
- package/dist/vendored/brepjs/measurement.js.map +1 -0
- package/dist/vendored/brepjs/ns/booleans.d.ts +11 -0
- package/dist/vendored/brepjs/ns/booleans.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/booleans.js +11 -0
- package/dist/vendored/brepjs/ns/booleans.js.map +1 -0
- package/dist/vendored/brepjs/ns/construction.d.ts +10 -0
- package/dist/vendored/brepjs/ns/construction.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/construction.js +10 -0
- package/dist/vendored/brepjs/ns/construction.js.map +1 -0
- package/dist/vendored/brepjs/ns/ioNs.d.ts +18 -0
- package/dist/vendored/brepjs/ns/ioNs.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/ioNs.js +20 -0
- package/dist/vendored/brepjs/ns/ioNs.js.map +1 -0
- package/dist/vendored/brepjs/ns/measurement.d.ts +6 -0
- package/dist/vendored/brepjs/ns/measurement.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/measurement.js +6 -0
- package/dist/vendored/brepjs/ns/measurement.js.map +1 -0
- package/dist/vendored/brepjs/ns/modifiers.d.ts +6 -0
- package/dist/vendored/brepjs/ns/modifiers.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/modifiers.js +6 -0
- package/dist/vendored/brepjs/ns/modifiers.js.map +1 -0
- package/dist/vendored/brepjs/ns/patterns.d.ts +5 -0
- package/dist/vendored/brepjs/ns/patterns.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/patterns.js +5 -0
- package/dist/vendored/brepjs/ns/patterns.js.map +1 -0
- package/dist/vendored/brepjs/ns/primitives.d.ts +7 -0
- package/dist/vendored/brepjs/ns/primitives.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/primitives.js +7 -0
- package/dist/vendored/brepjs/ns/primitives.js.map +1 -0
- package/dist/vendored/brepjs/ns/query.d.ts +6 -0
- package/dist/vendored/brepjs/ns/query.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/query.js +6 -0
- package/dist/vendored/brepjs/ns/query.js.map +1 -0
- package/dist/vendored/brepjs/ns/transforms.d.ts +5 -0
- package/dist/vendored/brepjs/ns/transforms.d.ts.map +1 -0
- package/dist/vendored/brepjs/ns/transforms.js +5 -0
- package/dist/vendored/brepjs/ns/transforms.js.map +1 -0
- package/dist/vendored/brepjs/operations/api.d.ts +39 -0
- package/dist/vendored/brepjs/operations/api.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/api.js +41 -0
- package/dist/vendored/brepjs/operations/api.js.map +1 -0
- package/dist/vendored/brepjs/operations/assemblyFns.d.ts +54 -0
- package/dist/vendored/brepjs/operations/assemblyFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/assemblyFns.js +91 -0
- package/dist/vendored/brepjs/operations/assemblyFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts +43 -0
- package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/compoundOpsFns.js +368 -0
- package/dist/vendored/brepjs/operations/compoundOpsFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/convexHullFns.d.ts +27 -0
- package/dist/vendored/brepjs/operations/convexHullFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/convexHullFns.js +50 -0
- package/dist/vendored/brepjs/operations/convexHullFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/dhFns.d.ts +47 -0
- package/dist/vendored/brepjs/operations/dhFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/dhFns.js +53 -0
- package/dist/vendored/brepjs/operations/dhFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/exporterFns.d.ts +47 -0
- package/dist/vendored/brepjs/operations/exporterFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/exporterFns.js +66 -0
- package/dist/vendored/brepjs/operations/exporterFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/exporterUtils.d.ts +6 -0
- package/dist/vendored/brepjs/operations/exporterUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/exporterUtils.js +5 -0
- package/dist/vendored/brepjs/operations/exporterUtils.js.map +1 -0
- package/dist/vendored/brepjs/operations/exporters.d.ts +59 -0
- package/dist/vendored/brepjs/operations/exporters.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/exporters.js +74 -0
- package/dist/vendored/brepjs/operations/exporters.js.map +1 -0
- package/dist/vendored/brepjs/operations/extrudeFns.d.ts +47 -0
- package/dist/vendored/brepjs/operations/extrudeFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/extrudeFns.js +119 -0
- package/dist/vendored/brepjs/operations/extrudeFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/extrudeUtils.d.ts +63 -0
- package/dist/vendored/brepjs/operations/extrudeUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/extrudeUtils.js +33 -0
- package/dist/vendored/brepjs/operations/extrudeUtils.js.map +1 -0
- package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts +6 -0
- package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/guidedSweepFns.js +6 -0
- package/dist/vendored/brepjs/operations/guidedSweepFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/historyFns.d.ts +83 -0
- package/dist/vendored/brepjs/operations/historyFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/historyFns.js +256 -0
- package/dist/vendored/brepjs/operations/historyFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/ikFns.d.ts +74 -0
- package/dist/vendored/brepjs/operations/ikFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/ikFns.js +320 -0
- package/dist/vendored/brepjs/operations/ikFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/instanceFns.d.ts +76 -0
- package/dist/vendored/brepjs/operations/instanceFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/instanceFns.js +128 -0
- package/dist/vendored/brepjs/operations/instanceFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/jointFns.d.ts +176 -0
- package/dist/vendored/brepjs/operations/jointFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/jointFns.js +298 -0
- package/dist/vendored/brepjs/operations/jointFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/loftFns.d.ts +60 -0
- package/dist/vendored/brepjs/operations/loftFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/loftFns.js +112 -0
- package/dist/vendored/brepjs/operations/loftFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/mateFns.d.ts +53 -0
- package/dist/vendored/brepjs/operations/mateFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/mateFns.js +142 -0
- package/dist/vendored/brepjs/operations/mateFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/multiSweepFns.d.ts +6 -0
- package/dist/vendored/brepjs/operations/multiSweepFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/multiSweepFns.js +6 -0
- package/dist/vendored/brepjs/operations/multiSweepFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/patternFns.d.ts +46 -0
- package/dist/vendored/brepjs/operations/patternFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/patternFns.js +126 -0
- package/dist/vendored/brepjs/operations/patternFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/roofFns.d.ts +25 -0
- package/dist/vendored/brepjs/operations/roofFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/roofFns.js +250 -0
- package/dist/vendored/brepjs/operations/roofFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/straightSkeleton.d.ts +29 -0
- package/dist/vendored/brepjs/operations/straightSkeleton.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/straightSkeleton.js +440 -0
- package/dist/vendored/brepjs/operations/straightSkeleton.js.map +1 -0
- package/dist/vendored/brepjs/operations/sweepFns.d.ts +121 -0
- package/dist/vendored/brepjs/operations/sweepFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/sweepFns.js +438 -0
- package/dist/vendored/brepjs/operations/sweepFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/threadFns.d.ts +57 -0
- package/dist/vendored/brepjs/operations/threadFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/threadFns.js +145 -0
- package/dist/vendored/brepjs/operations/threadFns.js.map +1 -0
- package/dist/vendored/brepjs/operations/urdfFns.d.ts +48 -0
- package/dist/vendored/brepjs/operations/urdfFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations/urdfFns.js +171 -0
- package/dist/vendored/brepjs/operations/urdfFns.js.map +1 -0
- package/dist/vendored/brepjs/operations.d.ts +20 -0
- package/dist/vendored/brepjs/operations.d.ts.map +1 -0
- package/dist/vendored/brepjs/operations.js +26 -0
- package/dist/vendored/brepjs/operations.js.map +1 -0
- package/dist/vendored/brepjs/projection/cameraFns.d.ts +63 -0
- package/dist/vendored/brepjs/projection/cameraFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/projection/cameraFns.js +89 -0
- package/dist/vendored/brepjs/projection/cameraFns.js.map +1 -0
- package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts +14 -0
- package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts.map +1 -0
- package/dist/vendored/brepjs/projection/makeProjectedEdges.js +111 -0
- package/dist/vendored/brepjs/projection/makeProjectedEdges.js.map +1 -0
- package/dist/vendored/brepjs/projection/projectionPlanes.d.ts +18 -0
- package/dist/vendored/brepjs/projection/projectionPlanes.d.ts.map +1 -0
- package/dist/vendored/brepjs/projection/projectionPlanes.js +23 -0
- package/dist/vendored/brepjs/projection/projectionPlanes.js.map +1 -0
- package/dist/vendored/brepjs/projection.d.ts +12 -0
- package/dist/vendored/brepjs/projection.d.ts.map +1 -0
- package/dist/vendored/brepjs/projection.js +12 -0
- package/dist/vendored/brepjs/projection.js.map +1 -0
- package/dist/vendored/brepjs/query/cornerFinder.d.ts +54 -0
- package/dist/vendored/brepjs/query/cornerFinder.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/cornerFinder.js +73 -0
- package/dist/vendored/brepjs/query/cornerFinder.js.map +1 -0
- package/dist/vendored/brepjs/query/directionUtils.d.ts +9 -0
- package/dist/vendored/brepjs/query/directionUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/directionUtils.js +18 -0
- package/dist/vendored/brepjs/query/directionUtils.js.map +1 -0
- package/dist/vendored/brepjs/query/edgeFinder.d.ts +5 -0
- package/dist/vendored/brepjs/query/edgeFinder.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/edgeFinder.js +5 -0
- package/dist/vendored/brepjs/query/edgeFinder.js.map +1 -0
- package/dist/vendored/brepjs/query/faceFinder.d.ts +5 -0
- package/dist/vendored/brepjs/query/faceFinder.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/faceFinder.js +5 -0
- package/dist/vendored/brepjs/query/faceFinder.js.map +1 -0
- package/dist/vendored/brepjs/query/finderCore.d.ts +49 -0
- package/dist/vendored/brepjs/query/finderCore.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/finderCore.js +120 -0
- package/dist/vendored/brepjs/query/finderCore.js.map +1 -0
- package/dist/vendored/brepjs/query/finderFns.d.ts +25 -0
- package/dist/vendored/brepjs/query/finderFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/finderFns.js +25 -0
- package/dist/vendored/brepjs/query/finderFns.js.map +1 -0
- package/dist/vendored/brepjs/query/helpers.d.ts +11 -0
- package/dist/vendored/brepjs/query/helpers.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/helpers.js +17 -0
- package/dist/vendored/brepjs/query/helpers.js.map +1 -0
- package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts +15 -0
- package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/shapeDistanceFilter.js +21 -0
- package/dist/vendored/brepjs/query/shapeDistanceFilter.js.map +1 -0
- package/dist/vendored/brepjs/query/shapeFinders.d.ts +39 -0
- package/dist/vendored/brepjs/query/shapeFinders.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/shapeFinders.js +82 -0
- package/dist/vendored/brepjs/query/shapeFinders.js.map +1 -0
- package/dist/vendored/brepjs/query/vertexFinder.d.ts +19 -0
- package/dist/vendored/brepjs/query/vertexFinder.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/vertexFinder.js +73 -0
- package/dist/vendored/brepjs/query/vertexFinder.js.map +1 -0
- package/dist/vendored/brepjs/query/wireFinder.d.ts +5 -0
- package/dist/vendored/brepjs/query/wireFinder.d.ts.map +1 -0
- package/dist/vendored/brepjs/query/wireFinder.js +5 -0
- package/dist/vendored/brepjs/query/wireFinder.js.map +1 -0
- package/dist/vendored/brepjs/query.d.ts +6 -0
- package/dist/vendored/brepjs/query.d.ts.map +1 -0
- package/dist/vendored/brepjs/query.js +6 -0
- package/dist/vendored/brepjs/query.js.map +1 -0
- package/dist/vendored/brepjs/result.d.ts +7 -0
- package/dist/vendored/brepjs/result.d.ts.map +1 -0
- package/dist/vendored/brepjs/result.js +7 -0
- package/dist/vendored/brepjs/result.js.map +1 -0
- package/dist/vendored/brepjs/shapeRef.d.ts +13 -0
- package/dist/vendored/brepjs/shapeRef.d.ts.map +1 -0
- package/dist/vendored/brepjs/shapeRef.js +13 -0
- package/dist/vendored/brepjs/shapeRef.js.map +1 -0
- package/dist/vendored/brepjs/sketching/cannedSketches.d.ts +144 -0
- package/dist/vendored/brepjs/sketching/cannedSketches.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/cannedSketches.js +327 -0
- package/dist/vendored/brepjs/sketching/cannedSketches.js.map +1 -0
- package/dist/vendored/brepjs/sketching/compoundSketch.d.ts +70 -0
- package/dist/vendored/brepjs/sketching/compoundSketch.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/compoundSketch.js +87 -0
- package/dist/vendored/brepjs/sketching/compoundSketch.js.map +1 -0
- package/dist/vendored/brepjs/sketching/draw3d.d.ts +22 -0
- package/dist/vendored/brepjs/sketching/draw3d.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/draw3d.js +150 -0
- package/dist/vendored/brepjs/sketching/draw3d.js.map +1 -0
- package/dist/vendored/brepjs/sketching/drawFns.d.ts +122 -0
- package/dist/vendored/brepjs/sketching/drawFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/drawFns.js +129 -0
- package/dist/vendored/brepjs/sketching/drawFns.js.map +1 -0
- package/dist/vendored/brepjs/sketching/drawing.d.ts +128 -0
- package/dist/vendored/brepjs/sketching/drawing.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/drawing.js +275 -0
- package/dist/vendored/brepjs/sketching/drawing.js.map +1 -0
- package/dist/vendored/brepjs/sketching/drawingFactories.d.ts +95 -0
- package/dist/vendored/brepjs/sketching/drawingFactories.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/drawingFactories.js +125 -0
- package/dist/vendored/brepjs/sketching/drawingFactories.js.map +1 -0
- package/dist/vendored/brepjs/sketching/drawingPen.d.ts +35 -0
- package/dist/vendored/brepjs/sketching/drawingPen.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/drawingPen.js +57 -0
- package/dist/vendored/brepjs/sketching/drawingPen.js.map +1 -0
- package/dist/vendored/brepjs/sketching/faceSketcher.d.ts +53 -0
- package/dist/vendored/brepjs/sketching/faceSketcher.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/faceSketcher.js +167 -0
- package/dist/vendored/brepjs/sketching/faceSketcher.js.map +1 -0
- package/dist/vendored/brepjs/sketching/shortcuts.d.ts +16 -0
- package/dist/vendored/brepjs/sketching/shortcuts.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/shortcuts.js +24 -0
- package/dist/vendored/brepjs/sketching/shortcuts.js.map +1 -0
- package/dist/vendored/brepjs/sketching/sketch.d.ts +157 -0
- package/dist/vendored/brepjs/sketching/sketch.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/sketch.js +151 -0
- package/dist/vendored/brepjs/sketching/sketch.js.map +1 -0
- package/dist/vendored/brepjs/sketching/sketchFns.d.ts +89 -0
- package/dist/vendored/brepjs/sketching/sketchFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/sketchFns.js +266 -0
- package/dist/vendored/brepjs/sketching/sketchFns.js.map +1 -0
- package/dist/vendored/brepjs/sketching/sketcher.d.ts +70 -0
- package/dist/vendored/brepjs/sketching/sketcher.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/sketcher.js +181 -0
- package/dist/vendored/brepjs/sketching/sketcher.js.map +1 -0
- package/dist/vendored/brepjs/sketching/sketches.d.ts +70 -0
- package/dist/vendored/brepjs/sketching/sketches.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching/sketches.js +91 -0
- package/dist/vendored/brepjs/sketching/sketches.js.map +1 -0
- package/dist/vendored/brepjs/sketching.d.ts +28 -0
- package/dist/vendored/brepjs/sketching.d.ts.map +1 -0
- package/dist/vendored/brepjs/sketching.js +30 -0
- package/dist/vendored/brepjs/sketching.js.map +1 -0
- package/dist/vendored/brepjs/text/fontRegistry.d.ts +23 -0
- package/dist/vendored/brepjs/text/fontRegistry.d.ts.map +1 -0
- package/dist/vendored/brepjs/text/fontRegistry.js +61 -0
- package/dist/vendored/brepjs/text/fontRegistry.js.map +1 -0
- package/dist/vendored/brepjs/text/sketchText.d.ts +31 -0
- package/dist/vendored/brepjs/text/sketchText.d.ts.map +1 -0
- package/dist/vendored/brepjs/text/sketchText.js +30 -0
- package/dist/vendored/brepjs/text/sketchText.js.map +1 -0
- package/dist/vendored/brepjs/text/textBlueprints.d.ts +19 -0
- package/dist/vendored/brepjs/text/textBlueprints.d.ts.map +1 -0
- package/dist/vendored/brepjs/text/textBlueprints.js +61 -0
- package/dist/vendored/brepjs/text/textBlueprints.js.map +1 -0
- package/dist/vendored/brepjs/text/textMetrics.d.ts +40 -0
- package/dist/vendored/brepjs/text/textMetrics.d.ts.map +1 -0
- package/dist/vendored/brepjs/text/textMetrics.js +43 -0
- package/dist/vendored/brepjs/text/textMetrics.js.map +1 -0
- package/dist/vendored/brepjs/text.d.ts +13 -0
- package/dist/vendored/brepjs/text.d.ts.map +1 -0
- package/dist/vendored/brepjs/text.js +13 -0
- package/dist/vendored/brepjs/text.js.map +1 -0
- package/dist/vendored/brepjs/topology/adjacencyFns.d.ts +89 -0
- package/dist/vendored/brepjs/topology/adjacencyFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/adjacencyFns.js +411 -0
- package/dist/vendored/brepjs/topology/adjacencyFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/api.d.ts +145 -0
- package/dist/vendored/brepjs/topology/api.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/api.js +282 -0
- package/dist/vendored/brepjs/topology/api.js.map +1 -0
- package/dist/vendored/brepjs/topology/apiTypes.d.ts +135 -0
- package/dist/vendored/brepjs/topology/apiTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/apiTypes.js +24 -0
- package/dist/vendored/brepjs/topology/apiTypes.js.map +1 -0
- package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts +52 -0
- package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/booleanBatchFns.js +164 -0
- package/dist/vendored/brepjs/topology/booleanBatchFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts +21 -0
- package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js +23 -0
- package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/booleanFns.d.ts +155 -0
- package/dist/vendored/brepjs/topology/booleanFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/booleanFns.js +600 -0
- package/dist/vendored/brepjs/topology/booleanFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/cast.d.ts +48 -0
- package/dist/vendored/brepjs/topology/cast.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/cast.js +113 -0
- package/dist/vendored/brepjs/topology/cast.js.map +1 -0
- package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts +24 -0
- package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/chamferAngleFns.js +64 -0
- package/dist/vendored/brepjs/topology/chamferAngleFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts +6 -0
- package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/compoundOpsFns.js +6 -0
- package/dist/vendored/brepjs/topology/compoundOpsFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/curveBuilders.d.ts +90 -0
- package/dist/vendored/brepjs/topology/curveBuilders.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/curveBuilders.js +125 -0
- package/dist/vendored/brepjs/topology/curveBuilders.js.map +1 -0
- package/dist/vendored/brepjs/topology/curveFns.d.ts +96 -0
- package/dist/vendored/brepjs/topology/curveFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/curveFns.js +191 -0
- package/dist/vendored/brepjs/topology/curveFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/evolutionFns.d.ts +78 -0
- package/dist/vendored/brepjs/topology/evolutionFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/evolutionFns.js +271 -0
- package/dist/vendored/brepjs/topology/evolutionFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/faceFns.d.ts +86 -0
- package/dist/vendored/brepjs/topology/faceFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/faceFns.js +169 -0
- package/dist/vendored/brepjs/topology/faceFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/healingFns.d.ts +98 -0
- package/dist/vendored/brepjs/topology/healingFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/healingFns.js +338 -0
- package/dist/vendored/brepjs/topology/healingFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/hullFns.d.ts +21 -0
- package/dist/vendored/brepjs/topology/hullFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/hullFns.js +60 -0
- package/dist/vendored/brepjs/topology/hullFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/index.d.ts +14 -0
- package/dist/vendored/brepjs/topology/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/index.js +17 -0
- package/dist/vendored/brepjs/topology/index.js.map +1 -0
- package/dist/vendored/brepjs/topology/meshCache.d.ts +68 -0
- package/dist/vendored/brepjs/topology/meshCache.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/meshCache.js +117 -0
- package/dist/vendored/brepjs/topology/meshCache.js.map +1 -0
- package/dist/vendored/brepjs/topology/meshFns.d.ts +179 -0
- package/dist/vendored/brepjs/topology/meshFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/meshFns.js +393 -0
- package/dist/vendored/brepjs/topology/meshFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts +41 -0
- package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/colorFns.js +128 -0
- package/dist/vendored/brepjs/topology/metadata/colorFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts +44 -0
- package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/faceTagFns.js +168 -0
- package/dist/vendored/brepjs/topology/metadata/faceTagFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts +59 -0
- package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js +109 -0
- package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts +43 -0
- package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js +270 -0
- package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/minkowskiFns.d.ts +26 -0
- package/dist/vendored/brepjs/topology/minkowskiFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/minkowskiFns.js +136 -0
- package/dist/vendored/brepjs/topology/minkowskiFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/modifierFns.d.ts +87 -0
- package/dist/vendored/brepjs/topology/modifierFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/modifierFns.js +446 -0
- package/dist/vendored/brepjs/topology/modifierFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/nurbsFns.d.ts +13 -0
- package/dist/vendored/brepjs/topology/nurbsFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/nurbsFns.js +22 -0
- package/dist/vendored/brepjs/topology/nurbsFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/polyhedronFns.d.ts +11 -0
- package/dist/vendored/brepjs/topology/polyhedronFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/polyhedronFns.js +47 -0
- package/dist/vendored/brepjs/topology/polyhedronFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/positionFns.d.ts +18 -0
- package/dist/vendored/brepjs/topology/positionFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/positionFns.js +34 -0
- package/dist/vendored/brepjs/topology/positionFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/primitiveFns.d.ts +244 -0
- package/dist/vendored/brepjs/topology/primitiveFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/primitiveFns.js +361 -0
- package/dist/vendored/brepjs/topology/primitiveFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeBooleans.d.ts +14 -0
- package/dist/vendored/brepjs/topology/shapeBooleans.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeBooleans.js +24 -0
- package/dist/vendored/brepjs/topology/shapeBooleans.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeFns.d.ts +30 -0
- package/dist/vendored/brepjs/topology/shapeFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeFns.js +50 -0
- package/dist/vendored/brepjs/topology/shapeFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeHelpers.d.ts +9 -0
- package/dist/vendored/brepjs/topology/shapeHelpers.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeHelpers.js +14 -0
- package/dist/vendored/brepjs/topology/shapeHelpers.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeModifiers.d.ts +33 -0
- package/dist/vendored/brepjs/topology/shapeModifiers.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeModifiers.js +28 -0
- package/dist/vendored/brepjs/topology/shapeModifiers.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts +29 -0
- package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js +135 -0
- package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts +25 -0
- package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js +123 -0
- package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/index.d.ts +11 -0
- package/dist/vendored/brepjs/topology/shapeRef/index.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/index.js +10 -0
- package/dist/vendored/brepjs/topology/shapeRef/index.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts +66 -0
- package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js +128 -0
- package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts +18 -0
- package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js +51 -0
- package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts +20 -0
- package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/scoring.js +65 -0
- package/dist/vendored/brepjs/topology/shapeRef/scoring.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts +59 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js +266 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts +153 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js +6 -0
- package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts +24 -0
- package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js +128 -0
- package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/shapeUtils.d.ts +16 -0
- package/dist/vendored/brepjs/topology/shapeUtils.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/shapeUtils.js +28 -0
- package/dist/vendored/brepjs/topology/shapeUtils.js.map +1 -0
- package/dist/vendored/brepjs/topology/solidBuilders.d.ts +74 -0
- package/dist/vendored/brepjs/topology/solidBuilders.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/solidBuilders.js +173 -0
- package/dist/vendored/brepjs/topology/solidBuilders.js.map +1 -0
- package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts +47 -0
- package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/surfaceBuilders.js +162 -0
- package/dist/vendored/brepjs/topology/surfaceBuilders.js.map +1 -0
- package/dist/vendored/brepjs/topology/surfaceFns.d.ts +41 -0
- package/dist/vendored/brepjs/topology/surfaceFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/surfaceFns.js +178 -0
- package/dist/vendored/brepjs/topology/surfaceFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/threeHelpers.d.ts +124 -0
- package/dist/vendored/brepjs/topology/threeHelpers.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/threeHelpers.js +118 -0
- package/dist/vendored/brepjs/topology/threeHelpers.js.map +1 -0
- package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts +100 -0
- package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/topologyQueryFns.js +307 -0
- package/dist/vendored/brepjs/topology/topologyQueryFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/transformFns.d.ts +69 -0
- package/dist/vendored/brepjs/topology/transformFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/transformFns.js +235 -0
- package/dist/vendored/brepjs/topology/transformFns.js.map +1 -0
- package/dist/vendored/brepjs/topology/wrapperFns.d.ts +169 -0
- package/dist/vendored/brepjs/topology/wrapperFns.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology/wrapperFns.js +291 -0
- package/dist/vendored/brepjs/topology/wrapperFns.js.map +1 -0
- package/dist/vendored/brepjs/topology.d.ts +28 -0
- package/dist/vendored/brepjs/topology.d.ts.map +1 -0
- package/dist/vendored/brepjs/topology.js +39 -0
- package/dist/vendored/brepjs/topology.js.map +1 -0
- package/dist/vendored/brepjs/utils/arrayAccess.d.ts +12 -0
- package/dist/vendored/brepjs/utils/arrayAccess.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/arrayAccess.js +25 -0
- package/dist/vendored/brepjs/utils/arrayAccess.js.map +1 -0
- package/dist/vendored/brepjs/utils/bug.d.ts +15 -0
- package/dist/vendored/brepjs/utils/bug.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/bug.js +21 -0
- package/dist/vendored/brepjs/utils/bug.js.map +1 -0
- package/dist/vendored/brepjs/utils/ioFilename.d.ts +3 -0
- package/dist/vendored/brepjs/utils/ioFilename.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/ioFilename.js +7 -0
- package/dist/vendored/brepjs/utils/ioFilename.js.map +1 -0
- package/dist/vendored/brepjs/utils/precisionRound.d.ts +11 -0
- package/dist/vendored/brepjs/utils/precisionRound.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/precisionRound.js +19 -0
- package/dist/vendored/brepjs/utils/precisionRound.js.map +1 -0
- package/dist/vendored/brepjs/utils/quaternion.d.ts +18 -0
- package/dist/vendored/brepjs/utils/quaternion.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/quaternion.js +68 -0
- package/dist/vendored/brepjs/utils/quaternion.js.map +1 -0
- package/dist/vendored/brepjs/utils/range.d.ts +3 -0
- package/dist/vendored/brepjs/utils/range.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/range.js +5 -0
- package/dist/vendored/brepjs/utils/range.js.map +1 -0
- package/dist/vendored/brepjs/utils/uuid.d.ts +3 -0
- package/dist/vendored/brepjs/utils/uuid.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/uuid.js +7 -0
- package/dist/vendored/brepjs/utils/uuid.js.map +1 -0
- package/dist/vendored/brepjs/utils/vec2d.d.ts +62 -0
- package/dist/vendored/brepjs/utils/vec2d.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/vec2d.js +107 -0
- package/dist/vendored/brepjs/utils/vec2d.js.map +1 -0
- package/dist/vendored/brepjs/utils/vec3.d.ts +32 -0
- package/dist/vendored/brepjs/utils/vec3.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/vec3.js +35 -0
- package/dist/vendored/brepjs/utils/vec3.js.map +1 -0
- package/dist/vendored/brepjs/utils/zip.d.ts +5 -0
- package/dist/vendored/brepjs/utils/zip.d.ts.map +1 -0
- package/dist/vendored/brepjs/utils/zip.js +8 -0
- package/dist/vendored/brepjs/utils/zip.js.map +1 -0
- package/dist/vendored/brepjs/vectors.d.ts +11 -0
- package/dist/vendored/brepjs/vectors.d.ts.map +1 -0
- package/dist/vendored/brepjs/vectors.js +9 -0
- package/dist/vendored/brepjs/vectors.js.map +1 -0
- package/package.json +154 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standalone functions for Blueprint operations.
|
|
3
|
+
*
|
|
4
|
+
* Each function wraps the corresponding {@link Blueprint} class method as a
|
|
5
|
+
* pure function, enabling a functional programming style.
|
|
6
|
+
*
|
|
7
|
+
* @see {@link Blueprint} for the OOP equivalent.
|
|
8
|
+
*/
|
|
9
|
+
import type { Point2D, BoundingBox2d } from '../../2d/lib/index.js';
|
|
10
|
+
import type Blueprint from './blueprint.js';
|
|
11
|
+
import type CompoundBlueprint from './compoundBlueprint.js';
|
|
12
|
+
import type { PointInput } from '../../core/types.js';
|
|
13
|
+
import type { Plane, PlaneName } from '../../core/planeTypes.js';
|
|
14
|
+
import type { Face } from '../../core/shapeTypes.js';
|
|
15
|
+
import type { ScaleMode } from '../../2d/curves.js';
|
|
16
|
+
import { type Result } from '../../core/result.js';
|
|
17
|
+
/**
|
|
18
|
+
* Create a new Blueprint from an ordered array of 2D curves.
|
|
19
|
+
*
|
|
20
|
+
* Returns a `Result` — use `unwrap()` in tests or `isOk()`/`match()` in
|
|
21
|
+
* production code.
|
|
22
|
+
*
|
|
23
|
+
* @see {@link Blueprint} constructor.
|
|
24
|
+
*/
|
|
25
|
+
export declare function createBlueprint(curves: Blueprint['curves']): Result<Blueprint>;
|
|
26
|
+
/**
|
|
27
|
+
* Create a CompoundBlueprint from an outer boundary and optional holes.
|
|
28
|
+
*
|
|
29
|
+
* The first element of `blueprints` is the outer boundary; subsequent
|
|
30
|
+
* elements are subtracted as holes.
|
|
31
|
+
*
|
|
32
|
+
* @see {@link CompoundBlueprint} constructor.
|
|
33
|
+
*/
|
|
34
|
+
export declare function createCompoundBlueprint(blueprints: Blueprint[]): Result<CompoundBlueprint>;
|
|
35
|
+
/** Get the axis-aligned bounding box of a 2D blueprint. */
|
|
36
|
+
export declare function getBounds2D(bp: Blueprint): BoundingBox2d;
|
|
37
|
+
/** Get the winding direction of a 2D blueprint. */
|
|
38
|
+
export declare function getOrientation2D(bp: Blueprint): 'clockwise' | 'counterClockwise';
|
|
39
|
+
/** Test whether a 2D point lies strictly inside a blueprint. */
|
|
40
|
+
export declare function isInside2D(bp: Blueprint, point: Point2D): boolean;
|
|
41
|
+
/** Convert a 2D blueprint to an SVG path d attribute string. */
|
|
42
|
+
export declare function toSVGPathD(bp: Blueprint): string;
|
|
43
|
+
/** Translate a 2D blueprint by the given x and y distances. */
|
|
44
|
+
export declare function translate2D(bp: Blueprint, dx: number, dy: number): Blueprint;
|
|
45
|
+
/** Rotate a 2D blueprint by the given angle in degrees. */
|
|
46
|
+
export declare function rotate2D(bp: Blueprint, angle: number, center?: Point2D): Blueprint;
|
|
47
|
+
/** Uniformly scale a 2D blueprint by a factor around a center point. */
|
|
48
|
+
export declare function scale2D(bp: Blueprint, factor: number, center?: Point2D): Blueprint;
|
|
49
|
+
/** Mirror a 2D blueprint across a point or plane. */
|
|
50
|
+
export declare function mirror2D(bp: Blueprint, centerOrDirection: Point2D, origin?: Point2D, mode?: 'center' | 'plane'): Blueprint;
|
|
51
|
+
/** Stretch a 2D blueprint along a direction by a given ratio. */
|
|
52
|
+
export declare function stretch2D(bp: Blueprint, ratio: number, direction: Point2D, origin?: Point2D): Blueprint;
|
|
53
|
+
/** Project a blueprint onto a 3D plane, producing sketch data. */
|
|
54
|
+
export declare function sketchOnPlane2D(bp: Blueprint, inputPlane?: PlaneName | Plane, origin?: PointInput | number): any;
|
|
55
|
+
/** Map a blueprint onto a 3D face's UV surface, producing sketch data. */
|
|
56
|
+
export declare function sketchOnFace2D(bp: Blueprint, face: Face, scaleMode?: ScaleMode): any;
|
|
57
|
+
//# sourceMappingURL=blueprintFns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprintFns.d.ts","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/2d/blueprints/blueprintFns.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,sBAAsB,CAAC;AAG5D;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAU9E;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAU1F;AAID,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,EAAE,EAAE,SAAS,GAAG,aAAa,CAExD;AAED,mDAAmD;AACnD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,SAAS,GAAG,WAAW,GAAG,kBAAkB,CAEhF;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAEjE;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,GAAG,MAAM,CAEhD;AAID,+DAA+D;AAC/D,wBAAgB,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAE5E;AAED,2DAA2D;AAC3D,wBAAgB,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAElF;AAED,wEAAwE;AACxE,wBAAgB,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAElF;AAED,qDAAqD;AACrD,wBAAgB,QAAQ,CACtB,EAAE,EAAE,SAAS,EACb,iBAAiB,EAAE,OAAO,EAC1B,MAAM,CAAC,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GACxB,SAAS,CAEX;AAED,iEAAiE;AACjE,wBAAgB,SAAS,CACvB,EAAE,EAAE,SAAS,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,EAClB,MAAM,CAAC,EAAE,OAAO,GACf,SAAS,CAEX;AAID,kEAAkE;AAClE,wBAAgB,eAAe,CAC7B,EAAE,EAAE,SAAS,EACb,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK,EAC9B,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,GAE3B,GAAG,CAEL;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAC5B,EAAE,EAAE,SAAS,EACb,IAAI,EAAE,IAAI,EACV,SAAS,CAAC,EAAE,SAAS,GAEpB,GAAG,CAEL"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standalone functions for Blueprint operations.
|
|
3
|
+
*
|
|
4
|
+
* Each function wraps the corresponding {@link Blueprint} class method as a
|
|
5
|
+
* pure function, enabling a functional programming style.
|
|
6
|
+
*
|
|
7
|
+
* @see {@link Blueprint} for the OOP equivalent.
|
|
8
|
+
*/
|
|
9
|
+
import BlueprintClass from './blueprint.js';
|
|
10
|
+
import CompoundBlueprintClass from './compoundBlueprint.js';
|
|
11
|
+
import { ok, err } from '../../core/result.js';
|
|
12
|
+
import { validationError, BrepErrorCode } from '../../core/errors.js';
|
|
13
|
+
/**
|
|
14
|
+
* Create a new Blueprint from an ordered array of 2D curves.
|
|
15
|
+
*
|
|
16
|
+
* Returns a `Result` — use `unwrap()` in tests or `isOk()`/`match()` in
|
|
17
|
+
* production code.
|
|
18
|
+
*
|
|
19
|
+
* @see {@link Blueprint} constructor.
|
|
20
|
+
*/
|
|
21
|
+
export function createBlueprint(curves) {
|
|
22
|
+
if (curves.length === 0) {
|
|
23
|
+
return err(validationError(BrepErrorCode.BLUEPRINT_EMPTY_CURVES, 'createBlueprint: at least one curve is required'));
|
|
24
|
+
}
|
|
25
|
+
return ok(new BlueprintClass(curves));
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Create a CompoundBlueprint from an outer boundary and optional holes.
|
|
29
|
+
*
|
|
30
|
+
* The first element of `blueprints` is the outer boundary; subsequent
|
|
31
|
+
* elements are subtracted as holes.
|
|
32
|
+
*
|
|
33
|
+
* @see {@link CompoundBlueprint} constructor.
|
|
34
|
+
*/
|
|
35
|
+
export function createCompoundBlueprint(blueprints) {
|
|
36
|
+
if (blueprints.length === 0) {
|
|
37
|
+
return err(validationError(BrepErrorCode.COMPOUND_BLUEPRINT_EMPTY, 'createCompoundBlueprint: at least one blueprint (outer boundary) is required'));
|
|
38
|
+
}
|
|
39
|
+
return ok(new CompoundBlueprintClass(blueprints));
|
|
40
|
+
}
|
|
41
|
+
// ── Utility Functions (Clean 2D API) ──
|
|
42
|
+
/** Get the axis-aligned bounding box of a 2D blueprint. */
|
|
43
|
+
export function getBounds2D(bp) {
|
|
44
|
+
return bp.boundingBox;
|
|
45
|
+
}
|
|
46
|
+
/** Get the winding direction of a 2D blueprint. */
|
|
47
|
+
export function getOrientation2D(bp) {
|
|
48
|
+
return bp.orientation;
|
|
49
|
+
}
|
|
50
|
+
/** Test whether a 2D point lies strictly inside a blueprint. */
|
|
51
|
+
export function isInside2D(bp, point) {
|
|
52
|
+
return bp.isInside(point);
|
|
53
|
+
}
|
|
54
|
+
/** Convert a 2D blueprint to an SVG path d attribute string. */
|
|
55
|
+
export function toSVGPathD(bp) {
|
|
56
|
+
return bp.toSVGPathD();
|
|
57
|
+
}
|
|
58
|
+
// ── Transform Functions (Clean 2D API) ──
|
|
59
|
+
/** Translate a 2D blueprint by the given x and y distances. */
|
|
60
|
+
export function translate2D(bp, dx, dy) {
|
|
61
|
+
return bp.translate(dx, dy);
|
|
62
|
+
}
|
|
63
|
+
/** Rotate a 2D blueprint by the given angle in degrees. */
|
|
64
|
+
export function rotate2D(bp, angle, center) {
|
|
65
|
+
return bp.rotate(angle, center);
|
|
66
|
+
}
|
|
67
|
+
/** Uniformly scale a 2D blueprint by a factor around a center point. */
|
|
68
|
+
export function scale2D(bp, factor, center) {
|
|
69
|
+
return bp.scale(factor, center);
|
|
70
|
+
}
|
|
71
|
+
/** Mirror a 2D blueprint across a point or plane. */
|
|
72
|
+
export function mirror2D(bp, centerOrDirection, origin, mode) {
|
|
73
|
+
return bp.mirror(centerOrDirection, origin, mode);
|
|
74
|
+
}
|
|
75
|
+
/** Stretch a 2D blueprint along a direction by a given ratio. */
|
|
76
|
+
export function stretch2D(bp, ratio, direction, origin) {
|
|
77
|
+
return bp.stretch(ratio, direction, origin);
|
|
78
|
+
}
|
|
79
|
+
// ── Sketching Functions (Clean 2D API) ──
|
|
80
|
+
/** Project a blueprint onto a 3D plane, producing sketch data. */
|
|
81
|
+
export function sketchOnPlane2D(bp, inputPlane, origin
|
|
82
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Sketch type not yet ported
|
|
83
|
+
) {
|
|
84
|
+
return bp.sketchOnPlane(inputPlane, origin);
|
|
85
|
+
}
|
|
86
|
+
/** Map a blueprint onto a 3D face's UV surface, producing sketch data. */
|
|
87
|
+
export function sketchOnFace2D(bp, face, scaleMode
|
|
88
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Sketch types not yet ported
|
|
89
|
+
) {
|
|
90
|
+
return bp.sketchOnFace(face, scaleMode);
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=blueprintFns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprintFns.js","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/2d/blueprints/blueprintFns.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Standalone functions for Blueprint operations.\n *\n * Each function wraps the corresponding {@link Blueprint} class method as a\n * pure function, enabling a functional programming style.\n *\n * @see {@link Blueprint} for the OOP equivalent.\n */\n\nimport type { Point2D, BoundingBox2d } from '../../2d/lib/index.js';\nimport BlueprintClass from './blueprint.js';\nimport type Blueprint from './blueprint.js';\nimport CompoundBlueprintClass from './compoundBlueprint.js';\nimport type CompoundBlueprint from './compoundBlueprint.js';\nimport type { PointInput } from '../../core/types.js';\nimport type { Plane, PlaneName } from '../../core/planeTypes.js';\nimport type { Face } from '../../core/shapeTypes.js';\nimport type { ScaleMode } from '../../2d/curves.js';\nimport { type Result, ok, err } from '../../core/result.js';\nimport { validationError, BrepErrorCode } from '../../core/errors.js';\n\n/**\n * Create a new Blueprint from an ordered array of 2D curves.\n *\n * Returns a `Result` — use `unwrap()` in tests or `isOk()`/`match()` in\n * production code.\n *\n * @see {@link Blueprint} constructor.\n */\nexport function createBlueprint(curves: Blueprint['curves']): Result<Blueprint> {\n if (curves.length === 0) {\n return err(\n validationError(\n BrepErrorCode.BLUEPRINT_EMPTY_CURVES,\n 'createBlueprint: at least one curve is required'\n )\n );\n }\n return ok(new BlueprintClass(curves));\n}\n\n/**\n * Create a CompoundBlueprint from an outer boundary and optional holes.\n *\n * The first element of `blueprints` is the outer boundary; subsequent\n * elements are subtracted as holes.\n *\n * @see {@link CompoundBlueprint} constructor.\n */\nexport function createCompoundBlueprint(blueprints: Blueprint[]): Result<CompoundBlueprint> {\n if (blueprints.length === 0) {\n return err(\n validationError(\n BrepErrorCode.COMPOUND_BLUEPRINT_EMPTY,\n 'createCompoundBlueprint: at least one blueprint (outer boundary) is required'\n )\n );\n }\n return ok(new CompoundBlueprintClass(blueprints));\n}\n\n// ── Utility Functions (Clean 2D API) ──\n\n/** Get the axis-aligned bounding box of a 2D blueprint. */\nexport function getBounds2D(bp: Blueprint): BoundingBox2d {\n return bp.boundingBox;\n}\n\n/** Get the winding direction of a 2D blueprint. */\nexport function getOrientation2D(bp: Blueprint): 'clockwise' | 'counterClockwise' {\n return bp.orientation;\n}\n\n/** Test whether a 2D point lies strictly inside a blueprint. */\nexport function isInside2D(bp: Blueprint, point: Point2D): boolean {\n return bp.isInside(point);\n}\n\n/** Convert a 2D blueprint to an SVG path d attribute string. */\nexport function toSVGPathD(bp: Blueprint): string {\n return bp.toSVGPathD();\n}\n\n// ── Transform Functions (Clean 2D API) ──\n\n/** Translate a 2D blueprint by the given x and y distances. */\nexport function translate2D(bp: Blueprint, dx: number, dy: number): Blueprint {\n return bp.translate(dx, dy);\n}\n\n/** Rotate a 2D blueprint by the given angle in degrees. */\nexport function rotate2D(bp: Blueprint, angle: number, center?: Point2D): Blueprint {\n return bp.rotate(angle, center);\n}\n\n/** Uniformly scale a 2D blueprint by a factor around a center point. */\nexport function scale2D(bp: Blueprint, factor: number, center?: Point2D): Blueprint {\n return bp.scale(factor, center);\n}\n\n/** Mirror a 2D blueprint across a point or plane. */\nexport function mirror2D(\n bp: Blueprint,\n centerOrDirection: Point2D,\n origin?: Point2D,\n mode?: 'center' | 'plane'\n): Blueprint {\n return bp.mirror(centerOrDirection, origin, mode);\n}\n\n/** Stretch a 2D blueprint along a direction by a given ratio. */\nexport function stretch2D(\n bp: Blueprint,\n ratio: number,\n direction: Point2D,\n origin?: Point2D\n): Blueprint {\n return bp.stretch(ratio, direction, origin);\n}\n\n// ── Sketching Functions (Clean 2D API) ──\n\n/** Project a blueprint onto a 3D plane, producing sketch data. */\nexport function sketchOnPlane2D(\n bp: Blueprint,\n inputPlane?: PlaneName | Plane,\n origin?: PointInput | number\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Sketch type not yet ported\n): any {\n return bp.sketchOnPlane(inputPlane, origin);\n}\n\n/** Map a blueprint onto a 3D face's UV surface, producing sketch data. */\nexport function sketchOnFace2D(\n bp: Blueprint,\n face: Face,\n scaleMode?: ScaleMode\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Sketch types not yet ported\n): any {\n return bp.sketchOnFace(face, scaleMode);\n}\n"]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Curve2D } from '../../2d/lib/index.js';
|
|
2
|
+
import Blueprint from './blueprint.js';
|
|
3
|
+
import type { Shape2D } from './boolean2D.js';
|
|
4
|
+
/**
|
|
5
|
+
* Compute raw offset curves for a single blueprint without self-intersection cleanup.
|
|
6
|
+
*
|
|
7
|
+
* Offsets each curve individually, then joins adjacent offset curves using the
|
|
8
|
+
* configured line-join strategy (round, bevel, or miter).
|
|
9
|
+
*
|
|
10
|
+
* @param blueprint - The blueprint to offset.
|
|
11
|
+
* @param offset - Offset distance (positive = outward, negative = inward).
|
|
12
|
+
* @param offsetConfig - Join style configuration.
|
|
13
|
+
* @returns Array of offset curves (may contain self-intersections).
|
|
14
|
+
*
|
|
15
|
+
* @remarks This is the low-level building block used by {@link offsetBlueprint}.
|
|
16
|
+
* Most callers should prefer {@link offset} instead.
|
|
17
|
+
*/
|
|
18
|
+
export declare function rawOffsets(blueprint: Blueprint, offset: number, offsetConfig?: Offset2DConfig): Curve2D[];
|
|
19
|
+
/** Configuration for 2D offset operations. */
|
|
20
|
+
export interface Offset2DConfig {
|
|
21
|
+
/** Corner join style when offset curves diverge (default: `'round'`). */
|
|
22
|
+
lineJoinType?: 'miter' | 'bevel' | 'round';
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Offset a single blueprint, resolving self-intersections and pruning invalid segments.
|
|
26
|
+
*
|
|
27
|
+
* Produces a new shape whose boundary is at a constant distance from the input
|
|
28
|
+
* blueprint. Self-intersections introduced by the offset are resolved using
|
|
29
|
+
* spatial indexing and curve splitting, following the
|
|
30
|
+
* {@link https://github.com/jbuckmccready/CavalierContours | Cavalier Contours} algorithm.
|
|
31
|
+
*
|
|
32
|
+
* @param blueprint - The source blueprint.
|
|
33
|
+
* @param offset - Offset distance (positive = outward, negative = inward).
|
|
34
|
+
* @param offsetConfig - Join style configuration.
|
|
35
|
+
* @returns The offset shape, or `null` if the offset collapses the blueprint.
|
|
36
|
+
*
|
|
37
|
+
* @see {@link offset} for the polymorphic version that handles all Shape2D types.
|
|
38
|
+
*/
|
|
39
|
+
export declare function offsetBlueprint(blueprint: Blueprint, offset: number, offsetConfig?: Offset2DConfig): Shape2D;
|
|
40
|
+
/**
|
|
41
|
+
* Offset any 2D shape (Blueprint, CompoundBlueprint, or Blueprints) by a distance.
|
|
42
|
+
*
|
|
43
|
+
* Dispatches to {@link offsetBlueprint} for simple blueprints and recursively
|
|
44
|
+
* handles compound and multi-blueprint shapes.
|
|
45
|
+
*
|
|
46
|
+
* @param bp - The shape to offset.
|
|
47
|
+
* @param offsetDistance - Offset distance (positive = outward, negative = inward).
|
|
48
|
+
* @param offsetConfig - Join style configuration.
|
|
49
|
+
* @returns The offset shape, or `null` if the offset collapses entirely.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts
|
|
53
|
+
* const expanded = offset(blueprint, 2);
|
|
54
|
+
* const shrunk = offset(blueprint, -1, { lineJoinType: 'miter' });
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export default function offset(bp: Shape2D, offsetDistance: number, offsetConfig?: Offset2DConfig): Shape2D;
|
|
58
|
+
//# sourceMappingURL=blueprintOffset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprintOffset.d.ts","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/2d/blueprints/blueprintOffset.ts"],"names":[],"mappings":"AAMA,OAAO,EAIL,OAAO,EAQR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAGvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAiO9C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,cAAmB,GAChC,OAAO,EAAE,CAgGX;AAOD,8CAA8C;AAC9C,MAAM,WAAW,cAAc;IAC7B,yEAAyE;IACzE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;CAC5C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,cAAmB,GAChC,OAAO,CA4DT;AAUD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAC5B,EAAE,EAAE,OAAO,EACX,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,cAAmB,GAChC,OAAO,CAeT"}
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
import Flatbush from 'flatbush';
|
|
2
|
+
import { bug, safeIndex } from '../../core/errors.js';
|
|
3
|
+
import { unwrap } from '../../core/result.js';
|
|
4
|
+
import { wasmIndex } from '../../utils/vec3.js';
|
|
5
|
+
import { intersectCurves, stitchCurves, make2dOffset, Curve2D, samePoint as defaultSamePoint, make2dSegmentCurve, squareDistance2d, make2dArcFromCenter, add2d, subtract2d, PRECISION_OFFSET, } from '../../2d/lib/index.js';
|
|
6
|
+
import Blueprint from './blueprint.js';
|
|
7
|
+
import Blueprints from './blueprints.js';
|
|
8
|
+
import CompoundBlueprint from './compoundBlueprint.js';
|
|
9
|
+
import { fuse2D, cut2D } from './boolean2D.js';
|
|
10
|
+
const samePoint = (x, y) => defaultSamePoint(x, y, PRECISION_OFFSET * 100);
|
|
11
|
+
const getIntersectionPoint = (line1Start, line1End, line2Start, line2End) => {
|
|
12
|
+
// Pre-compute direction differences (det([[a,1],[b,1]]) = a - b)
|
|
13
|
+
const dx1 = line1Start[0] - line1End[0];
|
|
14
|
+
const dy1 = line1Start[1] - line1End[1];
|
|
15
|
+
const dx2 = line2Start[0] - line2End[0];
|
|
16
|
+
const dy2 = line2Start[1] - line2End[1];
|
|
17
|
+
// Denominator: det([[dx1, dy1], [dx2, dy2]])
|
|
18
|
+
const denom = dx1 * dy2 - dy1 * dx2;
|
|
19
|
+
if (Math.abs(denom) < 1e-12)
|
|
20
|
+
return null;
|
|
21
|
+
// Cross products for the line equations
|
|
22
|
+
const cross1 = line1Start[0] * line1End[1] - line1Start[1] * line1End[0];
|
|
23
|
+
const cross2 = line2Start[0] * line2End[1] - line2Start[1] * line2End[0];
|
|
24
|
+
// Intersection point using Cramer's rule
|
|
25
|
+
const x = (cross1 * dx2 - cross2 * dx1) / denom;
|
|
26
|
+
const y = (cross1 * dy2 - cross2 * dy1) / denom;
|
|
27
|
+
return [x, y];
|
|
28
|
+
};
|
|
29
|
+
function joinRound(appendCurve, previousLastPoint, firstPoint, previousCurve, _curve) {
|
|
30
|
+
const arcJoiner = make2dArcFromCenter(previousLastPoint, firstPoint, previousCurve.original.lastPoint);
|
|
31
|
+
appendCurve(previousCurve);
|
|
32
|
+
appendCurve(arcJoiner);
|
|
33
|
+
}
|
|
34
|
+
function joinBevel(appendCurve, previousLastPoint, firstPoint, previousCurve, _curve) {
|
|
35
|
+
const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);
|
|
36
|
+
appendCurve(previousCurve);
|
|
37
|
+
appendCurve(bevelJoiner);
|
|
38
|
+
}
|
|
39
|
+
function joinMiter(appendCurve, previousLastPoint, firstPoint, previousCurve, curve) {
|
|
40
|
+
const previousOtherPoint = previousCurve.offset instanceof Curve2D
|
|
41
|
+
? subtract2d(previousLastPoint, previousCurve.offset.tangentAt(1))
|
|
42
|
+
: previousCurve.offset.firstPoint;
|
|
43
|
+
const nextOtherPoint = curve.offset instanceof Curve2D
|
|
44
|
+
? add2d(firstPoint, curve.offset.tangentAt(0))
|
|
45
|
+
: curve.offset.lastPoint;
|
|
46
|
+
const offsetIntersectionPoint = getIntersectionPoint(previousOtherPoint, previousLastPoint, firstPoint, nextOtherPoint);
|
|
47
|
+
if (!offsetIntersectionPoint) {
|
|
48
|
+
// Lines are parallel — fall back to bevel join
|
|
49
|
+
const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);
|
|
50
|
+
appendCurve(previousCurve);
|
|
51
|
+
appendCurve(bevelJoiner);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const midpoint = [
|
|
55
|
+
(previousLastPoint[0] + firstPoint[0]) / 2,
|
|
56
|
+
(previousLastPoint[1] + firstPoint[1]) / 2,
|
|
57
|
+
];
|
|
58
|
+
const miterDist = squareDistance2d(midpoint, offsetIntersectionPoint);
|
|
59
|
+
const endpointDist = squareDistance2d(previousLastPoint, firstPoint);
|
|
60
|
+
if (endpointDist < 1e-18 || miterDist > 16 * endpointDist) {
|
|
61
|
+
const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);
|
|
62
|
+
appendCurve(previousCurve);
|
|
63
|
+
appendCurve(bevelJoiner);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const miterJoiner1 = make2dSegmentCurve(previousLastPoint, offsetIntersectionPoint);
|
|
67
|
+
const miterJoiner2 = make2dSegmentCurve(offsetIntersectionPoint, firstPoint);
|
|
68
|
+
appendCurve(previousCurve);
|
|
69
|
+
appendCurve(miterJoiner1);
|
|
70
|
+
appendCurve(miterJoiner2);
|
|
71
|
+
}
|
|
72
|
+
const OFFSET_JOINERS = {
|
|
73
|
+
round: joinRound,
|
|
74
|
+
bevel: joinBevel,
|
|
75
|
+
miter: joinMiter,
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Handle the case where adjacent offset curves intersect: split both at
|
|
79
|
+
* the closest intersection and return updated previous/current curves.
|
|
80
|
+
*/
|
|
81
|
+
function splitAtIntersection(previousCurve, curve, intersections) {
|
|
82
|
+
const intersection = intersections.length === 1
|
|
83
|
+
? safeIndex(intersections, 0, 'rawOffsets')
|
|
84
|
+
: selectClosestIntersection(intersections, previousCurve.original.lastPoint);
|
|
85
|
+
const splitPreviousCurve = safeIndex(previousCurve.offset.splitAt([intersection], PRECISION_OFFSET), 0, 'rawOffsets');
|
|
86
|
+
const splitCurve = curve.offset.splitAt([intersection], PRECISION_OFFSET).at(-1);
|
|
87
|
+
if (!splitCurve)
|
|
88
|
+
bug('offset.rawOffsets', 'Split produced no trailing curve segment');
|
|
89
|
+
return {
|
|
90
|
+
splitPrevious: { offset: splitPreviousCurve, original: previousCurve.original },
|
|
91
|
+
splitCurrent: { offset: splitCurve, original: curve.original },
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* From an array of candidate intersection points, select the one closest to
|
|
96
|
+
* a reference point (the original curve endpoint).
|
|
97
|
+
*/
|
|
98
|
+
function selectClosestIntersection(intersections, referencePoint) {
|
|
99
|
+
let closest = safeIndex(intersections, 0, 'selectClosestIntersection');
|
|
100
|
+
let minDist = squareDistance2d(closest, referencePoint);
|
|
101
|
+
for (let i = 1; i < intersections.length; i++) {
|
|
102
|
+
const point = safeIndex(intersections, i, 'selectClosestIntersection');
|
|
103
|
+
const d = squareDistance2d(point, referencePoint);
|
|
104
|
+
if (d < minDist) {
|
|
105
|
+
minDist = d;
|
|
106
|
+
closest = point;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return closest;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Build a map of self-intersection points per curve index using a spatial
|
|
113
|
+
* index over offset-curve bounding boxes.
|
|
114
|
+
*/
|
|
115
|
+
function findSelfIntersections(offsettedArray) {
|
|
116
|
+
const allIntersections = new Map();
|
|
117
|
+
const updateIntersections = (index, newPoints) => {
|
|
118
|
+
const intersections = allIntersections.get(index) || [];
|
|
119
|
+
allIntersections.set(index, [...intersections, ...newPoints]);
|
|
120
|
+
};
|
|
121
|
+
// Build spatial index of curve bounding boxes for O(n log n) intersection filtering
|
|
122
|
+
const spatialIndex = new Flatbush(offsettedArray.length);
|
|
123
|
+
for (const curve of offsettedArray) {
|
|
124
|
+
const [[xMin, yMin], [xMax, yMax]] = curve.boundingBox.bounds;
|
|
125
|
+
spatialIndex.add(xMin, yMin, xMax, yMax);
|
|
126
|
+
}
|
|
127
|
+
spatialIndex.finish();
|
|
128
|
+
// Use spatial index to find candidate pairs, avoiding O(n²) comparisons
|
|
129
|
+
offsettedArray.forEach((firstCurve, firstIndex) => {
|
|
130
|
+
const [[xMin, yMin], [xMax, yMax]] = firstCurve.boundingBox.bounds;
|
|
131
|
+
const candidates = spatialIndex.search(xMin, yMin, xMax, yMax);
|
|
132
|
+
for (const secondIndex of candidates) {
|
|
133
|
+
// Only test pairs where secondIndex > firstIndex to avoid duplicates
|
|
134
|
+
if (secondIndex <= firstIndex)
|
|
135
|
+
continue;
|
|
136
|
+
const secondCurve = safeIndex(offsettedArray, secondIndex, 'offsetBlueprint');
|
|
137
|
+
const { intersections: rawIntersections, commonSegmentsPoints } = unwrap(intersectCurves(firstCurve, secondCurve, PRECISION_OFFSET));
|
|
138
|
+
const intersections = [...rawIntersections, ...commonSegmentsPoints].filter((intersection) => {
|
|
139
|
+
const onFirstCurveExtremity = samePoint(intersection, firstCurve.firstPoint) ||
|
|
140
|
+
samePoint(intersection, firstCurve.lastPoint);
|
|
141
|
+
const onSecondCurveExtremity = samePoint(intersection, secondCurve.firstPoint) ||
|
|
142
|
+
samePoint(intersection, secondCurve.lastPoint);
|
|
143
|
+
return !(onFirstCurveExtremity && onSecondCurveExtremity);
|
|
144
|
+
});
|
|
145
|
+
if (!intersections.length)
|
|
146
|
+
continue;
|
|
147
|
+
updateIntersections(firstIndex, intersections);
|
|
148
|
+
updateIntersections(secondIndex, intersections);
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
return allIntersections;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Compute raw offset curves for a single blueprint without self-intersection cleanup.
|
|
155
|
+
*
|
|
156
|
+
* Offsets each curve individually, then joins adjacent offset curves using the
|
|
157
|
+
* configured line-join strategy (round, bevel, or miter).
|
|
158
|
+
*
|
|
159
|
+
* @param blueprint - The blueprint to offset.
|
|
160
|
+
* @param offset - Offset distance (positive = outward, negative = inward).
|
|
161
|
+
* @param offsetConfig - Join style configuration.
|
|
162
|
+
* @returns Array of offset curves (may contain self-intersections).
|
|
163
|
+
*
|
|
164
|
+
* @remarks This is the low-level building block used by {@link offsetBlueprint}.
|
|
165
|
+
* Most callers should prefer {@link offset} instead.
|
|
166
|
+
*/
|
|
167
|
+
export function rawOffsets(blueprint, offset, offsetConfig = {}) {
|
|
168
|
+
const correctedOffset = blueprint.orientation === 'clockwise' ? -offset : offset;
|
|
169
|
+
const offsetCurves = blueprint.curves.map((c) => ({
|
|
170
|
+
offset: make2dOffset(c, correctedOffset),
|
|
171
|
+
original: c,
|
|
172
|
+
}));
|
|
173
|
+
// Ideally we would use the length of the curve to make sure it is
|
|
174
|
+
// not only a point, but the algo we have access to are a bit to
|
|
175
|
+
// convoluted to be usable here
|
|
176
|
+
const offsettedArray = [];
|
|
177
|
+
let savedLastCurve = null;
|
|
178
|
+
let previousCurve = offsetCurves.at(-1);
|
|
179
|
+
// We have no offset curves
|
|
180
|
+
if (!previousCurve)
|
|
181
|
+
return [];
|
|
182
|
+
function appendCurve(curve) {
|
|
183
|
+
// There are different ways to build the array of offsetted curves.
|
|
184
|
+
// This should build the array of offsetted curves depending on the shape of
|
|
185
|
+
// what we are offsetting.
|
|
186
|
+
// if the curve is a Curve2D we just push it
|
|
187
|
+
if (curve instanceof Curve2D) {
|
|
188
|
+
offsettedArray.push(curve);
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
if (!savedLastCurve) {
|
|
192
|
+
// we make the first curve we append available to wrap when iterating
|
|
193
|
+
savedLastCurve = curve;
|
|
194
|
+
}
|
|
195
|
+
else if (curve.offset instanceof Curve2D) {
|
|
196
|
+
// if we have an offset curve that is a Curve2D we push it
|
|
197
|
+
offsettedArray.push(curve.offset);
|
|
198
|
+
}
|
|
199
|
+
else if (!samePoint(curve.offset.firstPoint, curve.offset.lastPoint)) {
|
|
200
|
+
// if the offset curve is collapsed we push a segment curve
|
|
201
|
+
offsettedArray.push(make2dSegmentCurve(curve.offset.firstPoint, curve.offset.lastPoint));
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
const iterateOffsetCurves = function* () {
|
|
205
|
+
for (const curve of offsetCurves.slice(0, -1)) {
|
|
206
|
+
yield curve;
|
|
207
|
+
}
|
|
208
|
+
// This should never happen
|
|
209
|
+
if (!savedLastCurve)
|
|
210
|
+
bug('offset.rawOffsets', 'No saved curve after iterating offset segments');
|
|
211
|
+
yield savedLastCurve;
|
|
212
|
+
};
|
|
213
|
+
for (const curve of iterateOffsetCurves()) {
|
|
214
|
+
const previousLastPoint = previousCurve.offset.lastPoint;
|
|
215
|
+
const firstPoint = curve.offset.firstPoint;
|
|
216
|
+
// When the offset curves do still touch we do nothing
|
|
217
|
+
if (samePoint(previousLastPoint, firstPoint)) {
|
|
218
|
+
appendCurve(previousCurve);
|
|
219
|
+
previousCurve = curve;
|
|
220
|
+
continue;
|
|
221
|
+
}
|
|
222
|
+
let intersections = [];
|
|
223
|
+
if (previousCurve.offset instanceof Curve2D && curve.offset instanceof Curve2D) {
|
|
224
|
+
// When the offset curves intersect we cut them and save them at
|
|
225
|
+
const { intersections: pointIntersections, commonSegmentsPoints } = unwrap(intersectCurves(previousCurve.offset, curve.offset, PRECISION_OFFSET / 100));
|
|
226
|
+
intersections = [...pointIntersections, ...commonSegmentsPoints];
|
|
227
|
+
}
|
|
228
|
+
if (intersections.length > 0) {
|
|
229
|
+
// Pick the intersection closest to the original curve endpoint
|
|
230
|
+
// (following https://github.com/jbuckmccready/cavalier_contours/)
|
|
231
|
+
const { splitPrevious, splitCurrent } = splitAtIntersection(previousCurve, curve, intersections);
|
|
232
|
+
appendCurve(splitPrevious);
|
|
233
|
+
previousCurve = splitCurrent;
|
|
234
|
+
continue;
|
|
235
|
+
}
|
|
236
|
+
// When the offset curves do not intersect we link them with an offset
|
|
237
|
+
// joiner
|
|
238
|
+
const joiner = OFFSET_JOINERS[offsetConfig.lineJoinType ?? 'round'];
|
|
239
|
+
joiner(appendCurve, previousLastPoint, firstPoint, previousCurve, curve);
|
|
240
|
+
previousCurve = curve;
|
|
241
|
+
}
|
|
242
|
+
appendCurve(previousCurve);
|
|
243
|
+
return offsettedArray;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Offset a single blueprint, resolving self-intersections and pruning invalid segments.
|
|
247
|
+
*
|
|
248
|
+
* Produces a new shape whose boundary is at a constant distance from the input
|
|
249
|
+
* blueprint. Self-intersections introduced by the offset are resolved using
|
|
250
|
+
* spatial indexing and curve splitting, following the
|
|
251
|
+
* {@link https://github.com/jbuckmccready/CavalierContours | Cavalier Contours} algorithm.
|
|
252
|
+
*
|
|
253
|
+
* @param blueprint - The source blueprint.
|
|
254
|
+
* @param offset - Offset distance (positive = outward, negative = inward).
|
|
255
|
+
* @param offsetConfig - Join style configuration.
|
|
256
|
+
* @returns The offset shape, or `null` if the offset collapses the blueprint.
|
|
257
|
+
*
|
|
258
|
+
* @see {@link offset} for the polymorphic version that handles all Shape2D types.
|
|
259
|
+
*/
|
|
260
|
+
export function offsetBlueprint(blueprint, offset, offsetConfig = {}) {
|
|
261
|
+
const offsettedArray = rawOffsets(blueprint, offset, offsetConfig);
|
|
262
|
+
if (offsettedArray.length < 2)
|
|
263
|
+
return null;
|
|
264
|
+
// We remove the self intersections with the use the the algorithm as described in https://github.com/jbuckmccready/CavalierContours#offset-algorithm-and-stepwise-example
|
|
265
|
+
const allIntersections = findSelfIntersections(offsettedArray);
|
|
266
|
+
if (!allIntersections.size) {
|
|
267
|
+
const offsettedBlueprint = new Blueprint(offsettedArray);
|
|
268
|
+
if (!blueprint.intersects(offsettedBlueprint))
|
|
269
|
+
return offsettedBlueprint;
|
|
270
|
+
return null;
|
|
271
|
+
}
|
|
272
|
+
const splitCurves = offsettedArray.flatMap((curve, index) => {
|
|
273
|
+
if (!allIntersections.has(index))
|
|
274
|
+
return curve;
|
|
275
|
+
const intersections = allIntersections.get(index) || [];
|
|
276
|
+
const splitCurves = curve.splitAt(intersections, PRECISION_OFFSET * 100);
|
|
277
|
+
return splitCurves;
|
|
278
|
+
});
|
|
279
|
+
// We remove all the segments that are closer to the original curve than the offset
|
|
280
|
+
const originalIndex = new Flatbush(blueprint.curves.length);
|
|
281
|
+
for (const c of blueprint.curves) {
|
|
282
|
+
const [[xMin, yMin], [xMax, yMax]] = c.boundingBox.bounds;
|
|
283
|
+
originalIndex.add(xMin, yMin, xMax, yMax);
|
|
284
|
+
}
|
|
285
|
+
originalIndex.finish();
|
|
286
|
+
const absOffset = Math.abs(offset);
|
|
287
|
+
const prunedCurves = splitCurves.filter((curve) => {
|
|
288
|
+
const [[xMin, yMin], [xMax, yMax]] = curve.boundingBox.bounds;
|
|
289
|
+
const candidates = originalIndex.search(xMin - absOffset, yMin - absOffset, xMax + absOffset, yMax + absOffset);
|
|
290
|
+
return !candidates.some((idx) => {
|
|
291
|
+
const c = wasmIndex(blueprint.curves, idx);
|
|
292
|
+
return c.distanceFrom(curve) < absOffset - PRECISION_OFFSET;
|
|
293
|
+
});
|
|
294
|
+
});
|
|
295
|
+
if (!prunedCurves.length)
|
|
296
|
+
return null;
|
|
297
|
+
const curvesGrouped = stitchCurves(prunedCurves);
|
|
298
|
+
const blueprints = curvesGrouped
|
|
299
|
+
.filter((c) => c.length > 1)
|
|
300
|
+
.map((c) => new Blueprint(c))
|
|
301
|
+
.filter((b) => b.isClosed());
|
|
302
|
+
if (!blueprints.length)
|
|
303
|
+
return null;
|
|
304
|
+
if (blueprints.length === 1) {
|
|
305
|
+
return safeIndex(blueprints, 0, 'offsetBlueprint');
|
|
306
|
+
}
|
|
307
|
+
return new Blueprints(blueprints);
|
|
308
|
+
}
|
|
309
|
+
const fuseAll = (blueprints) => {
|
|
310
|
+
let fused = safeIndex(blueprints, 0, 'fuseAll');
|
|
311
|
+
for (let i = 1; i < blueprints.length; i++) {
|
|
312
|
+
fused = fuse2D(fused, safeIndex(blueprints, i, 'fuseAll'));
|
|
313
|
+
}
|
|
314
|
+
return fused;
|
|
315
|
+
};
|
|
316
|
+
/**
|
|
317
|
+
* Offset any 2D shape (Blueprint, CompoundBlueprint, or Blueprints) by a distance.
|
|
318
|
+
*
|
|
319
|
+
* Dispatches to {@link offsetBlueprint} for simple blueprints and recursively
|
|
320
|
+
* handles compound and multi-blueprint shapes.
|
|
321
|
+
*
|
|
322
|
+
* @param bp - The shape to offset.
|
|
323
|
+
* @param offsetDistance - Offset distance (positive = outward, negative = inward).
|
|
324
|
+
* @param offsetConfig - Join style configuration.
|
|
325
|
+
* @returns The offset shape, or `null` if the offset collapses entirely.
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* ```ts
|
|
329
|
+
* const expanded = offset(blueprint, 2);
|
|
330
|
+
* const shrunk = offset(blueprint, -1, { lineJoinType: 'miter' });
|
|
331
|
+
* ```
|
|
332
|
+
*/
|
|
333
|
+
export default function offset(bp, offsetDistance, offsetConfig = {}) {
|
|
334
|
+
if (bp instanceof Blueprint) {
|
|
335
|
+
return offsetBlueprint(bp, offsetDistance, offsetConfig);
|
|
336
|
+
}
|
|
337
|
+
else if (bp instanceof Blueprints) {
|
|
338
|
+
return fuseAll(bp.blueprints.map((b) => offset(b, offsetDistance, offsetConfig)));
|
|
339
|
+
}
|
|
340
|
+
else if (bp instanceof CompoundBlueprint) {
|
|
341
|
+
const innerShape = fuseAll(bp.blueprints.slice(1).map((b) => offset(b, -offsetDistance, offsetConfig)));
|
|
342
|
+
return cut2D(offset(safeIndex(bp.blueprints, 0, 'offset'), offsetDistance, offsetConfig), innerShape);
|
|
343
|
+
}
|
|
344
|
+
return null;
|
|
345
|
+
}
|
|
346
|
+
//# sourceMappingURL=blueprintOffset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blueprintOffset.js","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/2d/blueprints/blueprintOffset.ts"],"names":[],"mappings":"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","sourcesContent":["import Flatbush from 'flatbush';\n\nimport { bug, safeIndex } from '../../core/errors.js';\nimport { unwrap } from '../../core/result.js';\nimport { wasmIndex } from '../../utils/vec3.js';\nimport type { Point2D } from '../../2d/lib/index.js';\nimport {\n intersectCurves,\n stitchCurves,\n make2dOffset,\n Curve2D,\n samePoint as defaultSamePoint,\n make2dSegmentCurve,\n squareDistance2d,\n make2dArcFromCenter,\n add2d,\n subtract2d,\n PRECISION_OFFSET,\n} from '../../2d/lib/index.js';\nimport Blueprint from './blueprint.js';\nimport Blueprints from './blueprints.js';\nimport CompoundBlueprint from './compoundBlueprint.js';\nimport type { Shape2D } from './boolean2D.js';\nimport { fuse2D, cut2D } from './boolean2D.js';\n\nconst samePoint = (x: Point2D, y: Point2D) => defaultSamePoint(x, y, PRECISION_OFFSET * 100);\n\nconst getIntersectionPoint = (\n line1Start: Point2D,\n line1End: Point2D,\n line2Start: Point2D,\n line2End: Point2D\n): Point2D | null => {\n // Pre-compute direction differences (det([[a,1],[b,1]]) = a - b)\n const dx1 = line1Start[0] - line1End[0];\n const dy1 = line1Start[1] - line1End[1];\n const dx2 = line2Start[0] - line2End[0];\n const dy2 = line2Start[1] - line2End[1];\n\n // Denominator: det([[dx1, dy1], [dx2, dy2]])\n const denom = dx1 * dy2 - dy1 * dx2;\n if (Math.abs(denom) < 1e-12) return null;\n\n // Cross products for the line equations\n const cross1 = line1Start[0] * line1End[1] - line1Start[1] * line1End[0];\n const cross2 = line2Start[0] * line2End[1] - line2Start[1] * line2End[0];\n\n // Intersection point using Cramer's rule\n const x = (cross1 * dx2 - cross2 * dx1) / denom;\n const y = (cross1 * dy2 - cross2 * dy1) / denom;\n\n return [x, y] as Point2D;\n};\n\nfunction joinRound(\n appendCurve: (curve: OffsetCurvePair | Curve2D) => void,\n previousLastPoint: Point2D,\n firstPoint: Point2D,\n previousCurve: OffsetCurvePair,\n _curve: OffsetCurvePair\n) {\n const arcJoiner = make2dArcFromCenter(\n previousLastPoint,\n firstPoint,\n previousCurve.original.lastPoint\n );\n\n appendCurve(previousCurve);\n appendCurve(arcJoiner);\n}\n\nfunction joinBevel(\n appendCurve: (curve: OffsetCurvePair | Curve2D) => void,\n previousLastPoint: Point2D,\n firstPoint: Point2D,\n previousCurve: OffsetCurvePair,\n _curve: OffsetCurvePair\n) {\n const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);\n\n appendCurve(previousCurve);\n appendCurve(bevelJoiner);\n}\n\nfunction joinMiter(\n appendCurve: (curve: OffsetCurvePair | Curve2D) => void,\n previousLastPoint: Point2D,\n firstPoint: Point2D,\n previousCurve: OffsetCurvePair,\n curve: OffsetCurvePair\n) {\n const previousOtherPoint =\n previousCurve.offset instanceof Curve2D\n ? subtract2d(previousLastPoint, previousCurve.offset.tangentAt(1))\n : previousCurve.offset.firstPoint;\n const nextOtherPoint =\n curve.offset instanceof Curve2D\n ? add2d(firstPoint, curve.offset.tangentAt(0))\n : curve.offset.lastPoint;\n\n const offsetIntersectionPoint = getIntersectionPoint(\n previousOtherPoint,\n previousLastPoint,\n firstPoint,\n nextOtherPoint\n );\n\n if (!offsetIntersectionPoint) {\n // Lines are parallel — fall back to bevel join\n const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);\n appendCurve(previousCurve);\n appendCurve(bevelJoiner);\n return;\n }\n\n const midpoint: Point2D = [\n (previousLastPoint[0] + firstPoint[0]) / 2,\n (previousLastPoint[1] + firstPoint[1]) / 2,\n ];\n const miterDist = squareDistance2d(midpoint, offsetIntersectionPoint);\n const endpointDist = squareDistance2d(previousLastPoint, firstPoint);\n if (endpointDist < 1e-18 || miterDist > 16 * endpointDist) {\n const bevelJoiner = make2dSegmentCurve(previousLastPoint, firstPoint);\n appendCurve(previousCurve);\n appendCurve(bevelJoiner);\n return;\n }\n\n const miterJoiner1 = make2dSegmentCurve(previousLastPoint, offsetIntersectionPoint);\n const miterJoiner2 = make2dSegmentCurve(offsetIntersectionPoint, firstPoint);\n\n appendCurve(previousCurve);\n appendCurve(miterJoiner1);\n appendCurve(miterJoiner2);\n}\n\nconst OFFSET_JOINERS = {\n round: joinRound,\n bevel: joinBevel,\n miter: joinMiter,\n} as const;\n\n/**\n * Handle the case where adjacent offset curves intersect: split both at\n * the closest intersection and return updated previous/current curves.\n */\nfunction splitAtIntersection(\n previousCurve: OffsetCurvePair,\n curve: OffsetCurvePair,\n intersections: Point2D[]\n): { splitPrevious: OffsetCurvePair; splitCurrent: OffsetCurvePair } {\n const intersection: Point2D =\n intersections.length === 1\n ? safeIndex(intersections, 0, 'rawOffsets')\n : selectClosestIntersection(intersections, previousCurve.original.lastPoint);\n\n const splitPreviousCurve: Curve2D = safeIndex(\n (previousCurve.offset as Curve2D).splitAt([intersection], PRECISION_OFFSET),\n 0,\n 'rawOffsets'\n );\n const splitCurve = (curve.offset as Curve2D).splitAt([intersection], PRECISION_OFFSET).at(-1);\n\n if (!splitCurve) bug('offset.rawOffsets', 'Split produced no trailing curve segment');\n\n return {\n splitPrevious: { offset: splitPreviousCurve, original: previousCurve.original },\n splitCurrent: { offset: splitCurve, original: curve.original },\n };\n}\n\n/**\n * From an array of candidate intersection points, select the one closest to\n * a reference point (the original curve endpoint).\n */\nfunction selectClosestIntersection(intersections: Point2D[], referencePoint: Point2D): Point2D {\n let closest = safeIndex(intersections, 0, 'selectClosestIntersection');\n let minDist = squareDistance2d(closest, referencePoint);\n for (let i = 1; i < intersections.length; i++) {\n const point = safeIndex(intersections, i, 'selectClosestIntersection');\n const d = squareDistance2d(point, referencePoint);\n if (d < minDist) {\n minDist = d;\n closest = point;\n }\n }\n return closest;\n}\n\n/**\n * Build a map of self-intersection points per curve index using a spatial\n * index over offset-curve bounding boxes.\n */\nfunction findSelfIntersections(offsettedArray: Curve2D[]): Map<number, Point2D[]> {\n const allIntersections: Map<number, Point2D[]> = new Map();\n const updateIntersections = (index: number, newPoints: Point2D[]) => {\n const intersections = allIntersections.get(index) || [];\n allIntersections.set(index, [...intersections, ...newPoints]);\n };\n\n // Build spatial index of curve bounding boxes for O(n log n) intersection filtering\n const spatialIndex = new Flatbush(offsettedArray.length);\n for (const curve of offsettedArray) {\n const [[xMin, yMin], [xMax, yMax]] = curve.boundingBox.bounds;\n spatialIndex.add(xMin, yMin, xMax, yMax);\n }\n spatialIndex.finish();\n\n // Use spatial index to find candidate pairs, avoiding O(n²) comparisons\n offsettedArray.forEach((firstCurve, firstIndex) => {\n const [[xMin, yMin], [xMax, yMax]] = firstCurve.boundingBox.bounds;\n const candidates = spatialIndex.search(xMin, yMin, xMax, yMax);\n\n for (const secondIndex of candidates) {\n // Only test pairs where secondIndex > firstIndex to avoid duplicates\n if (secondIndex <= firstIndex) continue;\n\n const secondCurve = safeIndex(offsettedArray, secondIndex, 'offsetBlueprint');\n\n const { intersections: rawIntersections, commonSegmentsPoints } = unwrap(\n intersectCurves(firstCurve, secondCurve, PRECISION_OFFSET)\n );\n\n const intersections = [...rawIntersections, ...commonSegmentsPoints].filter(\n (intersection) => {\n const onFirstCurveExtremity =\n samePoint(intersection, firstCurve.firstPoint) ||\n samePoint(intersection, firstCurve.lastPoint);\n\n const onSecondCurveExtremity =\n samePoint(intersection, secondCurve.firstPoint) ||\n samePoint(intersection, secondCurve.lastPoint);\n\n return !(onFirstCurveExtremity && onSecondCurveExtremity);\n }\n );\n\n if (!intersections.length) continue;\n\n updateIntersections(firstIndex, intersections);\n updateIntersections(secondIndex, intersections);\n }\n });\n\n return allIntersections;\n}\n\n/**\n * Compute raw offset curves for a single blueprint without self-intersection cleanup.\n *\n * Offsets each curve individually, then joins adjacent offset curves using the\n * configured line-join strategy (round, bevel, or miter).\n *\n * @param blueprint - The blueprint to offset.\n * @param offset - Offset distance (positive = outward, negative = inward).\n * @param offsetConfig - Join style configuration.\n * @returns Array of offset curves (may contain self-intersections).\n *\n * @remarks This is the low-level building block used by {@link offsetBlueprint}.\n * Most callers should prefer {@link offset} instead.\n */\nexport function rawOffsets(\n blueprint: Blueprint,\n offset: number,\n offsetConfig: Offset2DConfig = {}\n): Curve2D[] {\n const correctedOffset = blueprint.orientation === 'clockwise' ? -offset : offset;\n const offsetCurves: OffsetCurvePair[] = blueprint.curves.map((c) => ({\n offset: make2dOffset(c, correctedOffset),\n original: c,\n }));\n\n // Ideally we would use the length of the curve to make sure it is\n // not only a point, but the algo we have access to are a bit to\n // convoluted to be usable here\n\n const offsettedArray: Curve2D[] = [];\n\n let savedLastCurve: null | OffsetCurvePair = null;\n\n let previousCurve = offsetCurves.at(-1);\n\n // We have no offset curves\n if (!previousCurve) return [];\n\n function appendCurve(curve: OffsetCurvePair | Curve2D) {\n // There are different ways to build the array of offsetted curves.\n // This should build the array of offsetted curves depending on the shape of\n // what we are offsetting.\n\n // if the curve is a Curve2D we just push it\n if (curve instanceof Curve2D) {\n offsettedArray.push(curve);\n return;\n }\n\n if (!savedLastCurve) {\n // we make the first curve we append available to wrap when iterating\n savedLastCurve = curve;\n } else if (curve.offset instanceof Curve2D) {\n // if we have an offset curve that is a Curve2D we push it\n offsettedArray.push(curve.offset);\n } else if (!samePoint(curve.offset.firstPoint, curve.offset.lastPoint)) {\n // if the offset curve is collapsed we push a segment curve\n offsettedArray.push(make2dSegmentCurve(curve.offset.firstPoint, curve.offset.lastPoint));\n }\n }\n\n const iterateOffsetCurves = function* (): Generator<OffsetCurvePair> {\n for (const curve of offsetCurves.slice(0, -1)) {\n yield curve;\n }\n // This should never happen\n if (!savedLastCurve) bug('offset.rawOffsets', 'No saved curve after iterating offset segments');\n yield savedLastCurve;\n };\n\n for (const curve of iterateOffsetCurves()) {\n const previousLastPoint = previousCurve.offset.lastPoint;\n const firstPoint = curve.offset.firstPoint;\n\n // When the offset curves do still touch we do nothing\n if (samePoint(previousLastPoint, firstPoint)) {\n appendCurve(previousCurve);\n previousCurve = curve;\n continue;\n }\n\n let intersections: Point2D[] = [];\n\n if (previousCurve.offset instanceof Curve2D && curve.offset instanceof Curve2D) {\n // When the offset curves intersect we cut them and save them at\n const { intersections: pointIntersections, commonSegmentsPoints } = unwrap(\n intersectCurves(previousCurve.offset, curve.offset, PRECISION_OFFSET / 100)\n );\n intersections = [...pointIntersections, ...commonSegmentsPoints];\n }\n\n if (intersections.length > 0) {\n // Pick the intersection closest to the original curve endpoint\n // (following https://github.com/jbuckmccready/cavalier_contours/)\n const { splitPrevious, splitCurrent } = splitAtIntersection(\n previousCurve,\n curve,\n intersections\n );\n appendCurve(splitPrevious);\n previousCurve = splitCurrent;\n continue;\n }\n\n // When the offset curves do not intersect we link them with an offset\n // joiner\n const joiner = OFFSET_JOINERS[offsetConfig.lineJoinType ?? 'round'];\n joiner(appendCurve, previousLastPoint, firstPoint, previousCurve, curve);\n\n previousCurve = curve;\n }\n\n appendCurve(previousCurve);\n return offsettedArray;\n}\n\ninterface OffsetCurvePair {\n offset: Curve2D | { collapsed: true; firstPoint: Point2D; lastPoint: Point2D };\n original: Curve2D;\n}\n\n/** Configuration for 2D offset operations. */\nexport interface Offset2DConfig {\n /** Corner join style when offset curves diverge (default: `'round'`). */\n lineJoinType?: 'miter' | 'bevel' | 'round';\n}\n\n/**\n * Offset a single blueprint, resolving self-intersections and pruning invalid segments.\n *\n * Produces a new shape whose boundary is at a constant distance from the input\n * blueprint. Self-intersections introduced by the offset are resolved using\n * spatial indexing and curve splitting, following the\n * {@link https://github.com/jbuckmccready/CavalierContours | Cavalier Contours} algorithm.\n *\n * @param blueprint - The source blueprint.\n * @param offset - Offset distance (positive = outward, negative = inward).\n * @param offsetConfig - Join style configuration.\n * @returns The offset shape, or `null` if the offset collapses the blueprint.\n *\n * @see {@link offset} for the polymorphic version that handles all Shape2D types.\n */\nexport function offsetBlueprint(\n blueprint: Blueprint,\n offset: number,\n offsetConfig: Offset2DConfig = {}\n): Shape2D {\n const offsettedArray = rawOffsets(blueprint, offset, offsetConfig);\n\n if (offsettedArray.length < 2) return null;\n\n // We remove the self intersections with the use the the algorithm as described in https://github.com/jbuckmccready/CavalierContours#offset-algorithm-and-stepwise-example\n\n const allIntersections = findSelfIntersections(offsettedArray);\n\n if (!allIntersections.size) {\n const offsettedBlueprint = new Blueprint(offsettedArray);\n if (!blueprint.intersects(offsettedBlueprint)) return offsettedBlueprint;\n return null;\n }\n\n const splitCurves = offsettedArray.flatMap((curve, index) => {\n if (!allIntersections.has(index)) return curve;\n\n const intersections = allIntersections.get(index) || [];\n const splitCurves = curve.splitAt(intersections, PRECISION_OFFSET * 100);\n return splitCurves;\n });\n\n // We remove all the segments that are closer to the original curve than the offset\n const originalIndex = new Flatbush(blueprint.curves.length);\n for (const c of blueprint.curves) {\n const [[xMin, yMin], [xMax, yMax]] = c.boundingBox.bounds;\n originalIndex.add(xMin, yMin, xMax, yMax);\n }\n originalIndex.finish();\n\n const absOffset = Math.abs(offset);\n const prunedCurves = splitCurves.filter((curve) => {\n const [[xMin, yMin], [xMax, yMax]] = curve.boundingBox.bounds;\n const candidates = originalIndex.search(\n xMin - absOffset,\n yMin - absOffset,\n xMax + absOffset,\n yMax + absOffset\n );\n return !candidates.some((idx) => {\n const c = wasmIndex(blueprint.curves, idx);\n return c.distanceFrom(curve) < absOffset - PRECISION_OFFSET;\n });\n });\n\n if (!prunedCurves.length) return null;\n\n const curvesGrouped = stitchCurves(prunedCurves);\n\n const blueprints = curvesGrouped\n .filter((c) => c.length > 1)\n .map((c) => new Blueprint(c))\n .filter((b) => b.isClosed());\n\n if (!blueprints.length) return null;\n if (blueprints.length === 1) {\n return safeIndex(blueprints, 0, 'offsetBlueprint');\n }\n return new Blueprints(blueprints);\n}\n\nconst fuseAll = (blueprints: Shape2D[]): Shape2D => {\n let fused: Shape2D = safeIndex(blueprints, 0, 'fuseAll');\n for (let i = 1; i < blueprints.length; i++) {\n fused = fuse2D(fused, safeIndex(blueprints, i, 'fuseAll'));\n }\n return fused;\n};\n\n/**\n * Offset any 2D shape (Blueprint, CompoundBlueprint, or Blueprints) by a distance.\n *\n * Dispatches to {@link offsetBlueprint} for simple blueprints and recursively\n * handles compound and multi-blueprint shapes.\n *\n * @param bp - The shape to offset.\n * @param offsetDistance - Offset distance (positive = outward, negative = inward).\n * @param offsetConfig - Join style configuration.\n * @returns The offset shape, or `null` if the offset collapses entirely.\n *\n * @example\n * ```ts\n * const expanded = offset(blueprint, 2);\n * const shrunk = offset(blueprint, -1, { lineJoinType: 'miter' });\n * ```\n */\nexport default function offset(\n bp: Shape2D,\n offsetDistance: number,\n offsetConfig: Offset2DConfig = {}\n): Shape2D {\n if (bp instanceof Blueprint) {\n return offsetBlueprint(bp, offsetDistance, offsetConfig);\n } else if (bp instanceof Blueprints) {\n return fuseAll(bp.blueprints.map((b) => offset(b, offsetDistance, offsetConfig)));\n } else if (bp instanceof CompoundBlueprint) {\n const innerShape = fuseAll(\n bp.blueprints.slice(1).map((b) => offset(b, -offsetDistance, offsetConfig))\n );\n return cut2D(\n offset(safeIndex(bp.blueprints, 0, 'offset'), offsetDistance, offsetConfig),\n innerShape\n );\n }\n return null;\n}\n"]}
|