@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 @@
|
|
|
1
|
+
{"version":3,"file":"kernel2dOps.js","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/kernel/occtWasm/kernel2dOps.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * 2D curve operations for the occt-wasm adapter.\n *\n * occt-wasm doesn't expose Geom2d via Embind, so these methods sit on top\n * of the pure-TS `geometry2d` module (`ow2d`). Curve handles are opaque\n * `Curve2dObj` instances passed through `c2dWrap` / `c2d` identity casts.\n *\n * @module\n */\n\nimport type { KernelShape, KernelType } from '../../kernel/types.js';\nimport type { Curve2dHandle, BBox2dHandle } from '../../kernel/kernel2dTypes.js';\nimport * as ow2d from '../../kernel/geometry2d.js';\nimport type { Curve2dObj } from '../../kernel/geometry2d.js';\nimport type { OcctKernelWasm, OcctWasmModule } from './occtWasmTypes.js';\nimport { handle, unwrap } from './helpers.js';\nimport { curveParameters, curvePointAtParam } from './curveOps.js';\nimport { uvFromPoint } from './surfaceOps.js';\n\n// ─── Curve handle wrappers — identity casts at the kernel boundary ──────────\n\nfunction c2d(h: Curve2dHandle): Curve2dObj {\n return h;\n}\n\nfunction c2dWrap(obj: Curve2dObj): Curve2dHandle {\n return obj;\n}\n\n// ─── Constructors for plain-object 2D primitives ────────────────────────────\n\nexport function createPoint2d(x: number, y: number): KernelType {\n return { x, y };\n}\n\nexport function createDirection2d(x: number, y: number): KernelType {\n const l = Math.sqrt(x * x + y * y);\n if (l < 1e-15) {\n throw new Error('occt-wasm: createDirection2d called with zero-length vector');\n }\n return { x: x / l, y: y / l };\n}\n\nexport function createVector2d(x: number, y: number): KernelType {\n return { x, y };\n}\n\nexport function createAxis2d(px: number, py: number, dx: number, dy: number): KernelType {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type bridge\n return { px, py, dx, dy, delete() {} } as any;\n}\n\nexport function wrapCurve2dHandle(h: KernelType): Curve2dHandle {\n return h;\n}\n\n// ─── Curve constructors ─────────────────────────────────────────────────────\n\nexport function makeLine2d(x1: number, y1: number, x2: number, y2: number): Curve2dHandle {\n return c2dWrap(ow2d.makeLine2d(x1, y1, x2, y2));\n}\n\nexport function makeCircle2d(\n cx: number,\n cy: number,\n radius: number,\n sense?: boolean\n): Curve2dHandle {\n return c2dWrap(ow2d.makeCircle2d(cx, cy, radius, sense));\n}\n\nexport function makeArc2dThreePoints(\n x1: number,\n y1: number,\n xm: number,\n ym: number,\n x2: number,\n y2: number\n): Curve2dHandle {\n // Circumscribed circle through 3 points.\n const d = 2 * (x1 * (ym - y2) + xm * (y2 - y1) + x2 * (y1 - ym));\n if (Math.abs(d) < 1e-12) {\n return c2dWrap(ow2d.makeLine2d(x1, y1, x2, y2));\n }\n const cx =\n ((x1 * x1 + y1 * y1) * (ym - y2) +\n (xm * xm + ym * ym) * (y2 - y1) +\n (x2 * x2 + y2 * y2) * (y1 - ym)) /\n d;\n const cy =\n ((x1 * x1 + y1 * y1) * (x2 - xm) +\n (xm * xm + ym * ym) * (x1 - x2) +\n (x2 * x2 + y2 * y2) * (xm - x1)) /\n d;\n const radius = Math.sqrt((x1 - cx) ** 2 + (y1 - cy) ** 2);\n\n const a1 = Math.atan2(y1 - cy, x1 - cx);\n const am = Math.atan2(ym - cy, xm - cx);\n const a2 = Math.atan2(y2 - cy, x2 - cx);\n\n let da1m = am - a1;\n if (da1m < 0) da1m += 2 * Math.PI;\n let da12 = a2 - a1;\n if (da12 < 0) da12 += 2 * Math.PI;\n const sense = da1m < da12;\n\n const circle = ow2d.makeCircle2d(cx, cy, radius, sense);\n if (!sense) {\n const tStart = -a1;\n let tEnd = -a2;\n if (tEnd < tStart - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: circle, tStart, tEnd });\n }\n let tEnd = a2;\n if (tEnd < a1 - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: circle, tStart: a1, tEnd });\n}\n\nexport function makeArc2dTangent(\n startX: number,\n startY: number,\n tangentX: number,\n tangentY: number,\n endX: number,\n endY: number\n): Curve2dHandle {\n const len = Math.sqrt(tangentX * tangentX + tangentY * tangentY);\n const ntx = len > 0 ? tangentX / len : 0;\n const nty = len > 0 ? tangentY / len : 0;\n\n const dx = startX - endX;\n const dy = startY - endY;\n const denom = 2 * (dy * ntx - dx * nty);\n\n if (Math.abs(denom) < 1e-12) {\n return c2dWrap(ow2d.makeLine2d(startX, startY, endX, endY));\n }\n\n const chord2 = dx * dx + dy * dy;\n const t = -chord2 / denom;\n const cx = startX - t * nty;\n const cy = startY + t * ntx;\n const radius = Math.abs(t);\n\n const a1 = Math.atan2(startY - cy, startX - cx);\n const a2 = Math.atan2(endY - cy, endX - cx);\n\n const ccwTanX = -(startY - cy) / radius;\n const ccwTanY = (startX - cx) / radius;\n const sense = ccwTanX * ntx + ccwTanY * nty > 0;\n\n const circle = ow2d.makeCircle2d(cx, cy, radius, sense);\n if (!sense) {\n const tStart = -a1;\n let tEnd = -a2;\n if (tEnd < tStart - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: circle, tStart, tEnd });\n }\n let tEnd = a2;\n if (tEnd < a1 - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: circle, tStart: a1, tEnd });\n}\n\nexport function makeEllipse2d(\n cx: number,\n cy: number,\n majorRadius: number,\n minorRadius: number,\n xDirX?: number,\n xDirY?: number,\n sense?: boolean\n): Curve2dHandle {\n return c2dWrap(\n ow2d.makeEllipse2d(cx, cy, majorRadius, minorRadius, xDirX ?? 1, xDirY ?? 0, sense ?? true)\n );\n}\n\nexport function makeEllipseArc2d(\n cx: number,\n cy: number,\n majorRadius: number,\n minorRadius: number,\n startAngle: number,\n endAngle: number,\n xDirX?: number,\n xDirY?: number,\n sense?: boolean\n): Curve2dHandle {\n const full = ow2d.makeEllipse2d(\n cx,\n cy,\n majorRadius,\n minorRadius,\n xDirX ?? 1,\n xDirY ?? 0,\n sense ?? true\n );\n // Evaluation negates the parameter for sense=false, so the trim range\n // flips sign with it (same mapping as the circle-arc makers above).\n if (!(sense ?? true)) {\n const tStart = -startAngle;\n let tEnd = -endAngle;\n if (tEnd < tStart - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: full, tStart, tEnd });\n }\n let tEnd = endAngle;\n if (tEnd < startAngle - 1e-9) tEnd += 2 * Math.PI;\n return c2dWrap({ __bk2d: 'trimmed', basis: full, tStart: startAngle, tEnd });\n}\n\nexport function makeBezier2d(points: [number, number][]): Curve2dHandle {\n return c2dWrap(ow2d.makeBezier2d(points));\n}\n\nexport function makeBSpline2d(\n points: [number, number][],\n options?: {\n degMin?: number;\n degMax?: number;\n continuity?: 'C0' | 'C1' | 'C2' | 'C3';\n tolerance?: number;\n smoothing?: [number, number, number] | null;\n }\n): Curve2dHandle {\n // Build a genuine B-spline (poles = input points, clamped knot vector) so\n // getCurve2dType reports BSPLINE_CURVE and decomposeBSpline2dToBeziers works.\n // The pure-TS 2D system has no fitting solver, so this approximates (passes\n // through the endpoints) rather than interpolating every point.\n const poles = points;\n const n = poles.length;\n const degree = Math.max(1, Math.min(options?.degMax ?? 3, n - 1));\n const knots: number[] = [0];\n const mults: number[] = [degree + 1];\n const nInternalKnots = n - degree - 1;\n for (let i = 1; i <= nInternalKnots; i++) {\n knots.push(i / (nInternalKnots + 1));\n mults.push(1);\n }\n knots.push(1);\n mults.push(degree + 1);\n return c2dWrap({\n __bk2d: 'bspline' as const,\n poles,\n knots,\n multiplicities: mults,\n degree,\n isPeriodic: false,\n });\n}\n\n// ─── Curve evaluation / metadata ────────────────────────────────────────────\n\nexport function evaluateCurve2d(curve: Curve2dHandle, param: number): [number, number] {\n return ow2d.evaluateCurve2d(c2d(curve), param);\n}\n\nexport function evaluateCurve2dD1(\n curve: Curve2dHandle,\n param: number\n): { point: [number, number]; tangent: [number, number] } {\n return {\n point: ow2d.evaluateCurve2d(c2d(curve), param),\n tangent: ow2d.tangentCurve2d(c2d(curve), param),\n };\n}\n\nexport function getCurve2dBounds(curve: Curve2dHandle): { first: number; last: number } {\n return ow2d.curveBounds(c2d(curve));\n}\n\nexport function getCurve2dType(curve: Curve2dHandle): string {\n let cu = c2d(curve);\n while (cu.__bk2d === 'trimmed') {\n cu = cu.basis;\n }\n return ow2d.curveTypeName(cu);\n}\n\n// ─── Curve transforms ───────────────────────────────────────────────────────\n\nexport function trimCurve2d(curve: Curve2dHandle, start: number, end: number): Curve2dHandle {\n return c2dWrap({ __bk2d: 'trimmed' as const, basis: c2d(curve), tStart: start, tEnd: end });\n}\n\nexport function reverseCurve2d(_curve: Curve2dHandle): void {\n // Curves are immutable in our pure-TS 2D system — reverse is a no-op.\n}\n\nexport function copyCurve2d(curve: Curve2dHandle): Curve2dHandle {\n return c2dWrap(JSON.parse(JSON.stringify(c2d(curve))));\n}\n\nexport function offsetCurve2d(curve: Curve2dHandle, offset: number): Curve2dHandle {\n // Approximate offset by sampling + shifting normals.\n const c = c2d(curve);\n const bounds = ow2d.curveBounds(c);\n const pts: [number, number][] = [];\n for (let i = 0; i <= 20; i++) {\n const t = bounds.first + ((bounds.last - bounds.first) * i) / 20;\n const [px, py] = ow2d.evaluateCurve2d(c, t);\n const [tx, ty] = ow2d.tangentCurve2d(c, t);\n const len = Math.sqrt(tx * tx + ty * ty) || 1;\n pts.push([px - (ty / len) * offset, py + (tx / len) * offset]);\n }\n return c2dWrap(\n ow2d.makeBezier2d(\n pts.length <= 25 ? pts : pts.filter((_, i) => i % 2 === 0 || i === pts.length - 1)\n )\n );\n}\n\nexport function translateCurve2d(curve: Curve2dHandle, dx: number, dy: number): Curve2dHandle {\n return c2dWrap(ow2d.translateCurve2d(c2d(curve), dx, dy));\n}\n\nexport function rotateCurve2d(\n curve: Curve2dHandle,\n angle: number,\n cx: number,\n cy: number\n): Curve2dHandle {\n return c2dWrap(ow2d.rotateCurve2d(c2d(curve), angle, cx, cy));\n}\n\nexport function scaleCurve2d(\n curve: Curve2dHandle,\n factor: number,\n cx: number,\n cy: number\n): Curve2dHandle {\n // geometry2d.scaleCurve2d already scales line endpoints and recomputes length;\n // do not re-patch len here (it would double-apply).\n return c2dWrap(ow2d.scaleCurve2d(c2d(curve), factor, cx, cy));\n}\n\nexport function mirrorCurve2dAtPoint(curve: Curve2dHandle, cx: number, cy: number): Curve2dHandle {\n return c2dWrap(ow2d.mirrorAtPoint(c2d(curve), cx, cy));\n}\n\nexport function mirrorCurve2dAcrossAxis(\n curve: Curve2dHandle,\n originX: number,\n originY: number,\n dirX: number,\n dirY: number\n): Curve2dHandle {\n return c2dWrap(ow2d.mirrorAcrossAxis(c2d(curve), originX, originY, dirX, dirY));\n}\n\n/**\n * Directional affinity matching OCCT `gp_GTrsf2d::SetAffinity`: scales the\n * component perpendicular to the axis `(dx, dy)` through `(ox, oy)` by `ratio`,\n * leaving the parallel component fixed. Applied by sampling and refitting as a\n * Bezier, since occt-wasm has no native Geom2d transform.\n */\nexport function affinityCurve2d(\n curve: Curve2dHandle,\n ox: number,\n oy: number,\n dx: number,\n dy: number,\n ratio: number\n): Curve2dHandle {\n const len = Math.sqrt(dx * dx + dy * dy);\n if (len < 1e-15) return curve;\n const px = -dy / len,\n py = dx / len; // perpendicular to axis\n const k = ratio - 1;\n const a = 1 + k * px * px,\n b = k * px * py,\n d = k * py * px,\n e = 1 + k * py * py;\n const tx = ox - a * ox - b * oy;\n const ty = oy - d * ox - e * oy;\n const c = c2d(curve);\n const bounds = ow2d.curveBounds(c);\n const N = 20;\n const pts: [number, number][] = [];\n for (let i = 0; i <= N; i++) {\n const t = bounds.first + ((bounds.last - bounds.first) * i) / N;\n const [qx, qy] = ow2d.evaluateCurve2d(c, t);\n pts.push([a * qx + b * qy + tx, d * qx + e * qy + ty]);\n }\n return c2dWrap(ow2d.makeBezier2d(pts));\n}\n\nexport function affinityTransform2d(\n curve: Curve2dHandle,\n ox: number,\n oy: number,\n dx: number,\n dy: number,\n ratio: number\n): Curve2dHandle {\n return affinityCurve2d(curve, ox, oy, dx, dy, ratio);\n}\n\n// ─── 2D general transforms (GTrsf) ──────────────────────────────────────────\n\nexport function createIdentityGTrsf2d(): KernelType {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n return { type: 'identity2d', delete() {} } as any;\n}\n\nexport function createAffinityGTrsf2d(\n originX: number,\n originY: number,\n dirX: number,\n dirY: number,\n ratio: number\n): KernelType {\n return {\n type: 'affinity2d',\n axOriginX: originX,\n axOriginY: originY,\n axDirX: dirX,\n axDirY: dirY,\n ratio,\n delete() {},\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n } as any;\n}\n\nexport function createTranslationGTrsf2d(dx: number, dy: number): KernelType {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n return { type: 'translate2d', dx, dy, delete() {} } as any;\n}\n\nexport function createMirrorGTrsf2d(\n cx: number,\n cy: number,\n mode: 'point' | 'axis',\n originX?: number,\n originY?: number,\n dirX?: number,\n dirY?: number\n): KernelType {\n return {\n type: 'mirror2d',\n cx,\n cy,\n mode,\n originX,\n originY,\n dirX,\n dirY,\n delete() {},\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n } as any;\n}\n\nexport function createRotationGTrsf2d(angle: number, cx: number, cy: number): KernelType {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n return { type: 'rotate2d', angle, cx, cy, delete() {} } as any;\n}\n\nexport function createScaleGTrsf2d(factor: number, cx: number, cy: number): KernelType {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type\n return { type: 'scale2d', sx: factor, sy: factor, cx, cy, delete() {} } as any;\n}\n\nexport function setGTrsf2dTranslationPart(gtrsf: KernelType, dx: number, dy: number): void {\n const t = gtrsf;\n t['dx'] = (Number(t['dx']) || 0) + dx;\n t['dy'] = (Number(t['dy']) || 0) + dy;\n}\n\nexport function multiplyGTrsf2d(base: KernelType, other: KernelType): void {\n const b = base;\n const o = other;\n b['dx'] = (Number(b['dx']) || 0) + (Number(o['dx']) || 0);\n b['dy'] = (Number(b['dy']) || 0) + (Number(o['dy']) || 0);\n if (o['type'] === 'scale2d') {\n b['type'] = 'scale2d';\n b['sx'] = o['sx'];\n b['sy'] = o['sy'];\n }\n}\n\nexport function transformCurve2dGeneral(curve: Curve2dHandle, gtrsf: KernelType): Curve2dHandle {\n const t = gtrsf;\n if (t['type'] === 'translate2d') {\n return translateCurve2d(curve, Number(t['dx']) || 0, Number(t['dy']) || 0);\n }\n if (t['type'] === 'rotate2d') {\n return rotateCurve2d(\n curve,\n Number(t['angle']) || 0,\n Number(t['cx']) || 0,\n Number(t['cy']) || 0\n );\n }\n if (t['type'] === 'scale2d') {\n return scaleCurve2d(curve, Number(t['sx']) || 1, Number(t['cx']) || 0, Number(t['cy']) || 0);\n }\n if (t['type'] === 'mirror2d') {\n if (t['mode'] === 'axis') {\n return mirrorCurve2dAcrossAxis(\n curve,\n Number(t['originX']) || 0,\n Number(t['originY']) || 0,\n Number(t['dirX']) || 0,\n Number(t['dirY']) || 0\n );\n }\n return mirrorCurve2dAtPoint(curve, Number(t['cx']) || 0, Number(t['cy']) || 0);\n }\n if (t['type'] === 'affinity2d') {\n return affinityCurve2d(\n curve,\n Number(t['axOriginX']) || 0,\n Number(t['axOriginY']) || 0,\n Number(t['axDirX']) || 0,\n Number(t['axDirY']) || 0,\n Number(t['ratio']) || 1\n );\n }\n if (Number(t['dx']) || Number(t['dy'])) {\n return translateCurve2d(curve, Number(t['dx']) || 0, Number(t['dy']) || 0);\n }\n return curve;\n}\n\n// ─── Intersection / projection / split ──────────────────────────────────────\n\nexport function intersectCurves2d(\n c1: Curve2dHandle,\n c2: Curve2dHandle,\n tolerance: number\n): { points: [number, number][]; segments: Curve2dHandle[] } {\n const result = ow2d.intersectCurves2dFn(c2d(c1), c2d(c2), tolerance);\n return { points: result.points, segments: result.segments.map((s) => c2dWrap(s)) };\n}\n\n// brepjs-patterns-disable: max-function-lines\nexport function projectPointOnCurve2d(\n curve: Curve2dHandle,\n x: number,\n y: number\n): { param: number; distance: number } | null {\n const c = c2d(curve);\n const bounds = ow2d.curveBounds(c);\n\n const projectOnBasis = (\n basis: Curve2dObj,\n bFirst: number,\n bLast: number\n ): { param: number; distance: number } | null => {\n if (basis.__bk2d === 'line') {\n const rawT = (x - basis.ox) * basis.dx + (y - basis.oy) * basis.dy;\n const t = Math.max(bFirst, Math.min(bLast, rawT));\n const [px, py] = ow2d.evaluateCurve2d(basis, t);\n return { param: t, distance: Math.sqrt((px - x) ** 2 + (py - y) ** 2) };\n }\n // For circles and general curves: dense sampling.\n const N = 200;\n let bestT = bFirst;\n let bestDist = Infinity;\n for (let i = 0; i <= N; i++) {\n const t = bFirst + ((bLast - bFirst) * i) / N;\n const [px, py] = ow2d.evaluateCurve2d(basis, t);\n const d = (px - x) ** 2 + (py - y) ** 2;\n if (d < bestDist) {\n bestDist = d;\n bestT = t;\n }\n }\n return { param: bestT, distance: Math.sqrt(bestDist) };\n };\n\n if (c.__bk2d === 'trimmed') {\n const tStart = c.tStart;\n const tEnd = c.tEnd;\n const basisResult = projectOnBasis(c.basis, tStart, tEnd);\n if (!basisResult) return null;\n const range = tEnd - tStart;\n const trimmedT = range > 1e-15 ? (basisResult.param - tStart) / range : 0;\n return { param: Math.max(0, Math.min(1, trimmedT)), distance: basisResult.distance };\n }\n\n return projectOnBasis(c, bounds.first, bounds.last);\n}\n\nexport function distanceBetweenCurves2d(\n c1: Curve2dHandle,\n c2: Curve2dHandle,\n p1Start: number,\n p1End: number,\n p2Start: number,\n p2End: number\n): number {\n const n = 20;\n let minDist = Infinity;\n for (let i = 0; i <= n; i++) {\n const t1 = p1Start + (p1End - p1Start) * (i / n);\n const [x1, y1] = ow2d.evaluateCurve2d(c2d(c1), t1);\n for (let j = 0; j <= n; j++) {\n const t2 = p2Start + (p2End - p2Start) * (j / n);\n const [x2, y2] = ow2d.evaluateCurve2d(c2d(c2), t2);\n const d = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\n if (d < minDist) minDist = d;\n }\n }\n return minDist;\n}\n\nexport function approximateCurve2dAsBSpline(\n curve: Curve2dHandle,\n maxSegments: number\n): Curve2dHandle {\n const cu = c2d(curve);\n const bounds = ow2d.curveBounds(cu);\n const nPts = Math.min(Math.max(maxSegments + 1, 10), 100);\n const poles: [number, number][] = [];\n for (let i = 0; i < nPts; i++) {\n const t = bounds.first + ((bounds.last - bounds.first) * i) / (nPts - 1);\n poles.push(ow2d.evaluateCurve2d(cu, t));\n }\n const degree = Math.min(3, nPts - 1);\n const n = poles.length;\n const knots: number[] = [];\n const mults: number[] = [];\n const nInternalKnots = n - degree - 1;\n knots.push(0);\n mults.push(degree + 1);\n for (let i = 1; i <= nInternalKnots; i++) {\n knots.push(i / (nInternalKnots + 1));\n mults.push(1);\n }\n knots.push(1);\n mults.push(degree + 1);\n\n return c2dWrap({\n __bk2d: 'bspline' as const,\n poles,\n knots,\n multiplicities: mults,\n degree,\n isPeriodic: false,\n });\n}\n\nexport function decomposeBSpline2dToBeziers(curve: Curve2dHandle): Curve2dHandle[] {\n let cu = c2d(curve);\n while (cu.__bk2d === 'trimmed') cu = cu.basis;\n if (cu.__bk2d !== 'bspline') return [curve];\n\n const poles: [number, number][] = cu.poles;\n const p: number = cu.degree;\n // Expand knots+multiplicities into the full knot vector U.\n const U: number[] = [];\n for (let i = 0; i < cu.knots.length; i++) {\n const knot = cu.knots[i] ?? 0;\n const mult = cu.multiplicities[i] ?? 0;\n for (let j = 0; j < mult; j++) U.push(knot);\n }\n const n = poles.length - 1;\n const m = n + p + 1;\n // A clamped, non-rational B-spline has |U| = n + p + 2. Bail to a single\n // Bezier on the control polygon if the curve is malformed.\n if (p < 1 || U.length !== m + 1) {\n return [c2dWrap(ow2d.makeBezier2d(poles))];\n }\n\n // NURBS Book Algorithm A5.6 (DecomposeCurve): knot-insert every interior knot\n // up to multiplicity p, yielding one Bezier segment (p+1 poles) per span.\n const clone = (pt: [number, number]): [number, number] => [pt[0], pt[1]];\n const segments: [number, number][][] = [];\n let a = p;\n let b = p + 1;\n let segPoles: [number, number][] = [];\n for (let i = 0; i <= p; i++) segPoles[i] = clone(poles[i] as [number, number]);\n let nextPoles: [number, number][] = [];\n while (b < m) {\n const i0 = b;\n while (b < m && U[b + 1] === U[b]) b++;\n const mult = b - i0 + 1;\n if (mult < p) {\n const numer = (U[b] as number) - (U[a] as number);\n const alphas: number[] = [];\n for (let j = p; j > mult; j--) {\n alphas[j - mult - 1] = numer / ((U[a + j] as number) - (U[a] as number));\n }\n const r = p - mult;\n for (let j = 1; j <= r; j++) {\n const save = r - j;\n const s = mult + j;\n for (let k = p; k >= s; k--) {\n const alpha = alphas[k - s] as number;\n const cur = segPoles[k] as [number, number];\n const prev = segPoles[k - 1] as [number, number];\n segPoles[k] = [\n alpha * cur[0] + (1 - alpha) * prev[0],\n alpha * cur[1] + (1 - alpha) * prev[1],\n ];\n }\n if (b < m) nextPoles[save] = clone(segPoles[p] as [number, number]);\n }\n }\n segments.push(segPoles);\n if (b < m) {\n for (let i = p - mult; i <= p; i++) {\n nextPoles[i] = clone(poles[b - p + i] as [number, number]);\n }\n segPoles = nextPoles;\n nextPoles = [];\n a = b;\n b++;\n }\n }\n return segments.map((sp) => c2dWrap(ow2d.makeBezier2d(sp)));\n}\n\n// ─── 2D bounding boxes ──────────────────────────────────────────────────────\n\nexport function createBoundingBox2d(): BBox2dHandle {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- opaque type bridge\n return ow2d.createBBox2d() as any;\n}\n\nexport function addCurveToBBox2d(\n bbox: BBox2dHandle,\n curve: Curve2dHandle,\n tolerance: number\n): void {\n ow2d.addCurveToBBox(bbox, c2d(curve), tolerance);\n}\n\nexport function getBBox2dBounds(bbox: BBox2dHandle): {\n xMin: number;\n yMin: number;\n xMax: number;\n yMax: number;\n} {\n return { xMin: bbox.xMin, yMin: bbox.yMin, xMax: bbox.xMax, yMax: bbox.yMax };\n}\n\nexport function mergeBBox2d(target: BBox2dHandle, other: BBox2dHandle): void {\n (target as { xMin: number }).xMin = Math.min(target.xMin, other.xMin);\n (target as { yMin: number }).yMin = Math.min(target.yMin, other.yMin);\n (target as { xMax: number }).xMax = Math.max(target.xMax, other.xMax);\n (target as { yMax: number }).yMax = Math.max(target.yMax, other.yMax);\n}\n\nexport function isBBox2dOut(a: BBox2dHandle, b: BBox2dHandle): boolean {\n return a.xMax < b.xMin || a.xMin > b.xMax || a.yMax < b.yMin || a.yMin > b.yMax;\n}\n\nexport function isBBox2dOutPoint(bbox: BBox2dHandle, x: number, y: number): boolean {\n return x < bbox.xMin || x > bbox.xMax || y < bbox.yMin || y > bbox.yMax;\n}\n\n// ─── Curve introspection ───────────────────────────────────────────────────\n\nexport function getCurve2dCircleData(\n curve: Curve2dHandle\n): { cx: number; cy: number; radius: number; isDirect: boolean } | null {\n let c = c2d(curve);\n while (c.__bk2d === 'trimmed') c = c.basis;\n if (c.__bk2d === 'circle') return { cx: c.cx, cy: c.cy, radius: c.radius, isDirect: c.sense };\n return null;\n}\n\nexport function getCurve2dEllipseData(\n curve: Curve2dHandle\n): { majorRadius: number; minorRadius: number; xAxisAngle: number; isDirect: boolean } | null {\n let c = c2d(curve);\n while (c.__bk2d === 'trimmed') c = c.basis;\n if (c.__bk2d === 'ellipse')\n return {\n majorRadius: c.majorRadius,\n minorRadius: c.minorRadius,\n xAxisAngle: c.xDirAngle,\n isDirect: c.sense,\n };\n return null;\n}\n\nexport function getCurve2dBezierPoles(curve: Curve2dHandle): [number, number][] | null {\n let c = c2d(curve);\n while (c.__bk2d === 'trimmed') c = c.basis;\n if (c.__bk2d === 'bezier') return c.poles;\n return null;\n}\n\nexport function getCurve2dBezierDegree(curve: Curve2dHandle): number | null {\n let c = c2d(curve);\n while (c.__bk2d === 'trimmed') c = c.basis;\n if (c.__bk2d === 'bezier') {\n return c.poles.length - 1;\n }\n return null;\n}\n\nexport function serializeCurve2d(curve: Curve2dHandle): string {\n return ow2d.serializeCurve2d(c2d(curve));\n}\n\nexport function deserializeCurve2d(data: string): Curve2dHandle {\n return c2dWrap(ow2d.deserializeCurve2d(data));\n}\n\nexport function splitCurve2d(curve: Curve2dHandle, params: number[]): Curve2dHandle[] {\n const bounds = ow2d.curveBounds(c2d(curve));\n const sorted = [bounds.first, ...params.sort((a, b) => a - b), bounds.last];\n const result: Curve2dHandle[] = [];\n for (let i = 0; i < sorted.length - 1; i++) {\n const start = sorted[i] ?? bounds.first;\n const end = sorted[i + 1] ?? bounds.last;\n result.push(trimCurve2d(curve, start, end));\n }\n return result;\n}\n\n// ─── Lifting 2D curves to 3D edges ──────────────────────────────────────────\n\n// brepjs-patterns-disable: max-function-lines\nexport function liftCurve2dToPlane(\n k: OcctKernelWasm,\n Module: OcctWasmModule,\n curve: Curve2dHandle,\n planeOrigin: [number, number, number],\n planeZ: [number, number, number],\n planeX: [number, number, number]\n): KernelShape {\n const cu = c2d(curve);\n const [ox, oy, oz] = planeOrigin;\n const [zx, zy, zz] = planeZ;\n const [xx, xy, xz] = planeX;\n const yx = zy * xz - zz * xy,\n yy = zz * xx - zx * xz,\n yz = zx * xy - zy * xx;\n const lift = (u: number, v: number): [number, number, number] => [\n ox + u * xx + v * yx,\n oy + u * xy + v * yy,\n oz + u * xz + v * yz,\n ];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- inspect curve internals\n const bk2dType = (cu as any).__bk2d as string;\n if (bk2dType === 'line') {\n const bounds = ow2d.curveBounds(cu);\n const [u1, v1] = ow2d.evaluateCurve2d(cu, bounds.first);\n const [u2, v2] = ow2d.evaluateCurve2d(cu, bounds.last);\n const p1 = lift(u1, v1);\n const p2 = lift(u2, v2);\n return handle('edge', k.makeLineEdge(p1[0], p1[1], p1[2], p2[0], p2[1], p2[2]));\n }\n if (bk2dType === 'trimmed') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- inspect trimmed basis\n const trimmed = cu as any;\n if (trimmed.basis && trimmed.basis.__bk2d === 'line') {\n const [u1, v1] = ow2d.evaluateCurve2d(cu, 0);\n const [u2, v2] = ow2d.evaluateCurve2d(cu, 1);\n const p1 = lift(u1, v1);\n const p2 = lift(u2, v2);\n return handle('edge', k.makeLineEdge(p1[0], p1[1], p1[2], p2[0], p2[1], p2[2]));\n }\n if (trimmed.basis && trimmed.basis.__bk2d === 'circle') {\n // 3-point arc through three lifted points to ensure endpoint coordinates\n // are bit-identical with the line branches' lifts (so MakeWire merges\n // with default tolerance).\n const bounds = ow2d.curveBounds(cu);\n const [u1, v1] = ow2d.evaluateCurve2d(cu, bounds.first);\n const [um, vm] = ow2d.evaluateCurve2d(cu, (bounds.first + bounds.last) / 2);\n const [u2, v2] = ow2d.evaluateCurve2d(cu, bounds.last);\n const p1 = lift(u1, v1);\n const pm = lift(um, vm);\n const p2 = lift(u2, v2);\n return handle(\n 'edge',\n k.makeArcEdge(p1[0], p1[1], p1[2], pm[0], pm[1], pm[2], p2[0], p2[1], p2[2])\n );\n }\n }\n if (bk2dType === 'circle') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- inspect circle data\n const circleData = cu as any;\n if (circleData.cx !== undefined && circleData.radius !== undefined) {\n const [pcx, pcy, pcz] = lift(circleData.cx, circleData.cy);\n return handle('edge', k.makeCircleEdge(pcx, pcy, pcz, zx, zy, zz, circleData.radius));\n }\n const bounds = ow2d.curveBounds(cu);\n const [u1, v1] = ow2d.evaluateCurve2d(cu, bounds.first);\n const [um, vm] = ow2d.evaluateCurve2d(cu, (bounds.first + bounds.last) / 2);\n const [u2, v2] = ow2d.evaluateCurve2d(cu, bounds.last);\n const p1 = lift(u1, v1);\n const pm = lift(um, vm);\n const p2 = lift(u2, v2);\n return handle(\n 'edge',\n k.makeArcEdge(p1[0], p1[1], p1[2], pm[0], pm[1], pm[2], p2[0], p2[1], p2[2])\n );\n }\n // Fallback: sample + interpolate.\n const bounds = ow2d.curveBounds(cu);\n const nSamples = 24;\n const dt = (bounds.last - bounds.first) / nSamples;\n const pts: number[] = [];\n for (let i = 0; i <= nSamples; i++) {\n const [u, v] = ow2d.evaluateCurve2d(cu, bounds.first + i * dt);\n const [px, py, pz] = lift(u, v);\n pts.push(px, py, pz);\n }\n const vec = new Module.VectorDouble();\n for (const p of pts) vec.push_back(p);\n try {\n return handle('edge', k.interpolatePoints(vec, false));\n } finally {\n vec.delete();\n }\n}\n\nexport function buildEdgeOnSurface(\n k: OcctKernelWasm,\n Module: OcctWasmModule,\n curve: Curve2dHandle,\n surface: KernelType\n): KernelShape {\n const cu = c2d(curve);\n const bounds = ow2d.curveBounds(cu);\n // brepjs-patterns-disable: no-double-cast\n const faceId = unwrap(surface);\n const nSamples = 30;\n const vec = new Module.VectorDouble();\n for (let i = 0; i <= nSamples; i++) {\n const t = bounds.first + ((bounds.last - bounds.first) * i) / nSamples;\n const [u, v] = ow2d.evaluateCurve2d(cu, t);\n const pt = k.pointOnSurface(faceId, u, v);\n try {\n vec.push_back(pt.get(0));\n vec.push_back(pt.get(1));\n vec.push_back(pt.get(2));\n } finally {\n pt.delete();\n }\n }\n try {\n return handle('edge', k.interpolatePoints(vec, false));\n } finally {\n vec.delete();\n }\n}\n\nexport function extractSurfaceFromFace(face: KernelShape): KernelType {\n // occt-wasm uses faces as surface proxies — just pass through.\n // brepjs-patterns-disable: no-double-cast\n return face;\n}\n\nexport function extractCurve2dFromEdge(\n k: OcctKernelWasm,\n edge: KernelShape,\n face: KernelShape\n): Curve2dHandle {\n // occt-wasm exposes no native pcurve adaptor (BRepAdaptor_Curve2d), so\n // reconstruct the edge's 2D curve on the face: sample the 3D edge, project each\n // point onto the face surface via uvFromPoint (GeomAPI_ProjectPointOnSurf), and\n // fit a 2D B-spline through the samples — the same projection approach brepkit\n // uses. Accuracy: makeBSpline2d has no fitting solver and treats the samples as\n // control poles, so a straight (LINE) edge is exact, while a curved pcurve (an\n // arc/circle on a planar face, or any curved edge) is a smooth approximation\n // that bows slightly inside the samples — the deviation shrinks as N rises.\n // Point projection also snaps to the nearest UV branch, so a seam-crossing edge\n // on a periodic surface (cylinder/cone) can jump branches.\n const [first, last] = curveParameters(k, edge);\n const N = 60;\n const points: [number, number][] = [];\n for (let i = 0; i <= N; i++) {\n const t = first + ((last - first) * i) / N;\n const uv = uvFromPoint(k, face, curvePointAtParam(k, edge, t));\n if (uv) points.push(uv);\n }\n if (points.length < 2) {\n throw new Error(\n 'occt-wasm: extractCurve2dFromEdge could not project the edge onto the face surface'\n );\n }\n return makeBSpline2d(points);\n}\n\nexport function buildCurves3d(k: OcctKernelWasm, wire: KernelShape): void {\n k.buildCurves3d(unwrap(wire));\n}\n\nexport function fixWireOnFace(\n k: OcctKernelWasm,\n wire: KernelShape,\n face: KernelShape,\n tolerance: number\n): KernelShape {\n return handle('wire', k.fixWireOnFace(unwrap(wire), unwrap(face), tolerance));\n}\n"]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Measurement operations for the occt-wasm adapter.
|
|
3
|
+
*
|
|
4
|
+
* Includes simple wrappers (volume/area/length/COM/bbox) and the more
|
|
5
|
+
* involved `distance` and `surfaceCurvature` paths, which sample geometry
|
|
6
|
+
* and reconstruct principal directions via finite-difference fundamental
|
|
7
|
+
* forms. The C++ facade returns scalars (distance value, k1/k2); JS recovers
|
|
8
|
+
* witness points and direction vectors.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import type { DistanceResult, KernelShape } from '../../kernel/types.js';
|
|
13
|
+
import type { BulkMeasurement } from '../../kernel/interfaces/measureOps.js';
|
|
14
|
+
import type { OcctKernelWasm, OcctWasmModule } from './occtWasmTypes.js';
|
|
15
|
+
/**
|
|
16
|
+
* Result of {@link surfaceCurvature} — kept shape-identical to the upstream
|
|
17
|
+
* `kernel/occt/measureOps.CurvatureResult` (that module is cut per the layered
|
|
18
|
+
* plan; the ported measurement layer re-exports this type).
|
|
19
|
+
*/
|
|
20
|
+
export interface CurvatureResult {
|
|
21
|
+
/** Mean curvature: H = (k1 + k2) / 2 */
|
|
22
|
+
mean: number;
|
|
23
|
+
/** Gaussian curvature: K = k1 * k2 */
|
|
24
|
+
gaussian: number;
|
|
25
|
+
/** Maximum principal curvature */
|
|
26
|
+
maxCurvature: number;
|
|
27
|
+
/** Minimum principal curvature */
|
|
28
|
+
minCurvature: number;
|
|
29
|
+
/** Direction of maximum curvature */
|
|
30
|
+
maxDirection: [number, number, number];
|
|
31
|
+
/** Direction of minimum curvature */
|
|
32
|
+
minDirection: [number, number, number];
|
|
33
|
+
}
|
|
34
|
+
export declare function volume(k: OcctKernelWasm, shape: KernelShape): number;
|
|
35
|
+
export declare function area(k: OcctKernelWasm, shape: KernelShape): number;
|
|
36
|
+
export declare function length(k: OcctKernelWasm, shape: KernelShape): number;
|
|
37
|
+
export declare function centerOfMass(k: OcctKernelWasm, shape: KernelShape): [number, number, number];
|
|
38
|
+
export declare function linearCenterOfMass(k: OcctKernelWasm, shape: KernelShape): [number, number, number];
|
|
39
|
+
export declare function boundingBox(k: OcctKernelWasm, shape: KernelShape): {
|
|
40
|
+
min: [number, number, number];
|
|
41
|
+
max: [number, number, number];
|
|
42
|
+
};
|
|
43
|
+
export declare function surfaceCenterOfMass(k: OcctKernelWasm, face: KernelShape): [number, number, number];
|
|
44
|
+
export declare function measureBulk(k: OcctKernelWasm, shape: KernelShape, includeLinear?: boolean): BulkMeasurement;
|
|
45
|
+
export declare function createDistanceQuery(k: OcctKernelWasm, referenceShape: KernelShape): {
|
|
46
|
+
distanceTo(shape: KernelShape): {
|
|
47
|
+
value: number;
|
|
48
|
+
point1: [number, number, number];
|
|
49
|
+
point2: [number, number, number];
|
|
50
|
+
};
|
|
51
|
+
dispose(): void;
|
|
52
|
+
};
|
|
53
|
+
export declare function distance(k: OcctKernelWasm, mod: OcctWasmModule, shape1: KernelShape, shape2: KernelShape): DistanceResult;
|
|
54
|
+
export declare function surfaceCurvature(k: OcctKernelWasm, face: KernelShape, u: number, v: number): {
|
|
55
|
+
gaussian: number;
|
|
56
|
+
mean: number;
|
|
57
|
+
max: number;
|
|
58
|
+
min: number;
|
|
59
|
+
maxDirection: [number, number, number];
|
|
60
|
+
minDirection: [number, number, number];
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=measureOps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measureOps.d.ts","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/kernel/occtWasm/measureOps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Measurement operations for the occt-wasm adapter.
|
|
3
|
+
*
|
|
4
|
+
* Includes simple wrappers (volume/area/length/COM/bbox) and the more
|
|
5
|
+
* involved `distance` and `surfaceCurvature` paths, which sample geometry
|
|
6
|
+
* and reconstruct principal directions via finite-difference fundamental
|
|
7
|
+
* forms. The C++ facade returns scalars (distance value, k1/k2); JS recovers
|
|
8
|
+
* witness points and direction vectors.
|
|
9
|
+
*
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
import { noop, unwrap } from './helpers.js';
|
|
13
|
+
export function volume(k, shape) {
|
|
14
|
+
return k.getVolume(unwrap(shape));
|
|
15
|
+
}
|
|
16
|
+
export function area(k, shape) {
|
|
17
|
+
return k.getSurfaceArea(unwrap(shape));
|
|
18
|
+
}
|
|
19
|
+
export function length(k, shape) {
|
|
20
|
+
return k.getLength(unwrap(shape));
|
|
21
|
+
}
|
|
22
|
+
export function centerOfMass(k, shape) {
|
|
23
|
+
const vec = k.getCenterOfMass(unwrap(shape));
|
|
24
|
+
try {
|
|
25
|
+
return [vec.get(0), vec.get(1), vec.get(2)];
|
|
26
|
+
}
|
|
27
|
+
finally {
|
|
28
|
+
vec.delete();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export function linearCenterOfMass(k, shape) {
|
|
32
|
+
const vec = k.getLinearCenterOfMass(unwrap(shape));
|
|
33
|
+
try {
|
|
34
|
+
return [vec.get(0), vec.get(1), vec.get(2)];
|
|
35
|
+
}
|
|
36
|
+
finally {
|
|
37
|
+
vec.delete();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export function boundingBox(k, shape) {
|
|
41
|
+
const bb = k.getBoundingBox(unwrap(shape), true);
|
|
42
|
+
return {
|
|
43
|
+
min: [bb.xmin, bb.ymin, bb.zmin],
|
|
44
|
+
max: [bb.xmax, bb.ymax, bb.zmax],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export function surfaceCenterOfMass(k, face) {
|
|
48
|
+
// Delegates to occt-wasm's exact `BRepGProp::SurfaceProperties.CentreOfMass()`
|
|
49
|
+
// (added in occt-wasm 2.0). The previous tessellation-triangle centroid
|
|
50
|
+
// diverged from brepjs-occt for non-planar faces.
|
|
51
|
+
try {
|
|
52
|
+
const v = k.getSurfaceCenterOfMass(unwrap(face));
|
|
53
|
+
try {
|
|
54
|
+
return [v.get(0), v.get(1), v.get(2)];
|
|
55
|
+
}
|
|
56
|
+
finally {
|
|
57
|
+
v.delete();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// Degenerate or unmeshable face — preserve previous behavior of
|
|
62
|
+
// returning origin rather than propagating the WASM exception.
|
|
63
|
+
return [0, 0, 0];
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export function measureBulk(k, shape, includeLinear) {
|
|
67
|
+
return {
|
|
68
|
+
volume: volume(k, shape),
|
|
69
|
+
area: area(k, shape),
|
|
70
|
+
length: includeLinear ? length(k, shape) : 0,
|
|
71
|
+
centerOfMass: centerOfMass(k, shape),
|
|
72
|
+
boundingBox: boundingBox(k, shape),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
export function createDistanceQuery(k, referenceShape) {
|
|
76
|
+
const refId = unwrap(referenceShape);
|
|
77
|
+
return {
|
|
78
|
+
distanceTo(shape) {
|
|
79
|
+
const d = k.distanceBetween(refId, unwrap(shape));
|
|
80
|
+
return { value: d, point1: [0, 0, 0], point2: [0, 0, 0] };
|
|
81
|
+
},
|
|
82
|
+
dispose: noop,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
// Cap mesh samples so distance()'s nested O(N·M) loop stays bounded
|
|
86
|
+
// (~65k pair comparisons at the cap × cap product). Stride-sample by
|
|
87
|
+
// vertex (3 floats) when the mesh exceeds the cap; the closest-pair
|
|
88
|
+
// approximation degrades gracefully because every retained sample is
|
|
89
|
+
// still on the surface.
|
|
90
|
+
const MAX_MESH_SAMPLES = 256;
|
|
91
|
+
/**
|
|
92
|
+
* Collect 3D sample points from a shape for nearest-pair queries: every
|
|
93
|
+
* topological vertex, plus tessellation vertices when the shape carries
|
|
94
|
+
* surfaces. Used by distance() to approximate witness points.
|
|
95
|
+
*/
|
|
96
|
+
function collectDistanceSamples(k, mod, shapeId) {
|
|
97
|
+
const out = [];
|
|
98
|
+
const verts = k.getSubShapes(shapeId, 'vertex');
|
|
99
|
+
try {
|
|
100
|
+
const n = verts.size();
|
|
101
|
+
for (let i = 0; i < n; i++) {
|
|
102
|
+
const p = k.vertexPosition(verts.get(i));
|
|
103
|
+
out.push([p.get(0), p.get(1), p.get(2)]);
|
|
104
|
+
p.delete();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
finally {
|
|
108
|
+
verts.delete();
|
|
109
|
+
}
|
|
110
|
+
// Tessellation samples — coarse linear deflection (≈1% of bbox diagonal)
|
|
111
|
+
// is enough to seed a witness-point search; refinement comes from picking
|
|
112
|
+
// the closest pair, not from sample density per se.
|
|
113
|
+
// useTriangulation=true matches brepjs-occt's BRepBndLib.Add(shape, box, true)
|
|
114
|
+
// semantics — refines the bound via surface analysis when triangulation is
|
|
115
|
+
// present, falls back to surface-precise AddOptimal otherwise.
|
|
116
|
+
const bb = k.getBoundingBox(shapeId, true);
|
|
117
|
+
const diag = Math.sqrt((bb.xmax - bb.xmin) ** 2 + (bb.ymax - bb.ymin) ** 2 + (bb.zmax - bb.zmin) ** 2);
|
|
118
|
+
const linDef = Math.max(diag * 1e-2, 1e-4);
|
|
119
|
+
let mesh;
|
|
120
|
+
try {
|
|
121
|
+
mesh = k.tessellate(shapeId, linDef, 0.5);
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
return out;
|
|
125
|
+
}
|
|
126
|
+
try {
|
|
127
|
+
const posCount = mesh.positionCount;
|
|
128
|
+
if (posCount > 0) {
|
|
129
|
+
const ptr = mesh.getPositionsPtr() >> 2;
|
|
130
|
+
const heap = mod.HEAPF32;
|
|
131
|
+
const vertexCount = Math.floor(posCount / 3);
|
|
132
|
+
const stride = vertexCount > MAX_MESH_SAMPLES ? Math.ceil(vertexCount / MAX_MESH_SAMPLES) : 1;
|
|
133
|
+
const step = stride * 3;
|
|
134
|
+
for (let i = 0; i < posCount; i += step) {
|
|
135
|
+
out.push([heap[ptr + i] ?? 0, heap[ptr + i + 1] ?? 0, heap[ptr + i + 2] ?? 0]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
finally {
|
|
140
|
+
mesh.delete();
|
|
141
|
+
}
|
|
142
|
+
return out;
|
|
143
|
+
}
|
|
144
|
+
export function distance(k, mod, shape1, shape2) {
|
|
145
|
+
const id1 = unwrap(shape1);
|
|
146
|
+
const id2 = unwrap(shape2);
|
|
147
|
+
const value = k.distanceBetween(id1, id2);
|
|
148
|
+
// Witness points: the C++ facade returns only a scalar distance, so we
|
|
149
|
+
// sample each shape (topological vertices + face tessellation) and pick
|
|
150
|
+
// the closest pair. The `value` above stays exact (from BRepExtrema);
|
|
151
|
+
// `point1`/`point2` are an approximation whose error scales with the
|
|
152
|
+
// tessellation deflection.
|
|
153
|
+
const samples1 = collectDistanceSamples(k, mod, id1);
|
|
154
|
+
const samples2 = collectDistanceSamples(k, mod, id2);
|
|
155
|
+
if (samples1.length === 0 || samples2.length === 0) {
|
|
156
|
+
return { value, point1: [0, 0, 0], point2: [0, 0, 0] };
|
|
157
|
+
}
|
|
158
|
+
let bestD2 = Infinity;
|
|
159
|
+
let bestP1 = samples1[0] ?? [0, 0, 0];
|
|
160
|
+
let bestP2 = samples2[0] ?? [0, 0, 0];
|
|
161
|
+
for (const p1 of samples1) {
|
|
162
|
+
for (const p2 of samples2) {
|
|
163
|
+
const dx = p2[0] - p1[0];
|
|
164
|
+
const dy = p2[1] - p1[1];
|
|
165
|
+
const dz = p2[2] - p1[2];
|
|
166
|
+
const d2 = dx * dx + dy * dy + dz * dz;
|
|
167
|
+
if (d2 < bestD2) {
|
|
168
|
+
bestD2 = d2;
|
|
169
|
+
bestP1 = p1;
|
|
170
|
+
bestP2 = p2;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return { value, point1: bestP1, point2: bestP2 };
|
|
175
|
+
}
|
|
176
|
+
function pointAt(k, faceId, u, v) {
|
|
177
|
+
const p = k.pointOnSurface(faceId, u, v);
|
|
178
|
+
const r = [p.get(0), p.get(1), p.get(2)];
|
|
179
|
+
p.delete();
|
|
180
|
+
return r;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Sample a 9-point stencil around (u, v) and return central-difference
|
|
184
|
+
* partial derivatives Pu, Pv, Puu, Pvv, Puv. Step size is 1e-3 of the
|
|
185
|
+
* parametric range (clamped at 1e-6) — the sweet spot between truncation
|
|
186
|
+
* error and float-eval noise. Near the boundary the stencil shifts inward
|
|
187
|
+
* so all sample points stay in the domain.
|
|
188
|
+
*/
|
|
189
|
+
function surfaceDerivatives(k, faceId, u, v) {
|
|
190
|
+
const bounds = k.uvBounds(faceId);
|
|
191
|
+
const uMin = bounds.get(0);
|
|
192
|
+
const uMax = bounds.get(1);
|
|
193
|
+
const vMin = bounds.get(2);
|
|
194
|
+
const vMax = bounds.get(3);
|
|
195
|
+
bounds.delete();
|
|
196
|
+
const hu = Math.max(Math.max(uMax - uMin, 1e-12) * 1e-3, 1e-6);
|
|
197
|
+
const hv = Math.max(Math.max(vMax - vMin, 1e-12) * 1e-3, 1e-6);
|
|
198
|
+
const uc = Math.min(Math.max(u, uMin + hu), uMax - hu);
|
|
199
|
+
const vc = Math.min(Math.max(v, vMin + hv), vMax - hv);
|
|
200
|
+
const P = pointAt(k, faceId, uc, vc);
|
|
201
|
+
const Pup = pointAt(k, faceId, uc + hu, vc);
|
|
202
|
+
const Pum = pointAt(k, faceId, uc - hu, vc);
|
|
203
|
+
const Pvp = pointAt(k, faceId, uc, vc + hv);
|
|
204
|
+
const Pvm = pointAt(k, faceId, uc, vc - hv);
|
|
205
|
+
const Ppp = pointAt(k, faceId, uc + hu, vc + hv);
|
|
206
|
+
const Ppm = pointAt(k, faceId, uc + hu, vc - hv);
|
|
207
|
+
const Pmp = pointAt(k, faceId, uc - hu, vc + hv);
|
|
208
|
+
const Pmm = pointAt(k, faceId, uc - hu, vc - hv);
|
|
209
|
+
const huu = hu * hu;
|
|
210
|
+
const hvv = hv * hv;
|
|
211
|
+
const huv4 = 4 * hu * hv;
|
|
212
|
+
return {
|
|
213
|
+
Pu: [(Pup[0] - Pum[0]) / (2 * hu), (Pup[1] - Pum[1]) / (2 * hu), (Pup[2] - Pum[2]) / (2 * hu)],
|
|
214
|
+
Pv: [(Pvp[0] - Pvm[0]) / (2 * hv), (Pvp[1] - Pvm[1]) / (2 * hv), (Pvp[2] - Pvm[2]) / (2 * hv)],
|
|
215
|
+
Puu: [
|
|
216
|
+
(Pup[0] - 2 * P[0] + Pum[0]) / huu,
|
|
217
|
+
(Pup[1] - 2 * P[1] + Pum[1]) / huu,
|
|
218
|
+
(Pup[2] - 2 * P[2] + Pum[2]) / huu,
|
|
219
|
+
],
|
|
220
|
+
Pvv: [
|
|
221
|
+
(Pvp[0] - 2 * P[0] + Pvm[0]) / hvv,
|
|
222
|
+
(Pvp[1] - 2 * P[1] + Pvm[1]) / hvv,
|
|
223
|
+
(Pvp[2] - 2 * P[2] + Pvm[2]) / hvv,
|
|
224
|
+
],
|
|
225
|
+
Puv: [
|
|
226
|
+
(Ppp[0] - Ppm[0] - Pmp[0] + Pmm[0]) / huv4,
|
|
227
|
+
(Ppp[1] - Ppm[1] - Pmp[1] + Pmm[1]) / huv4,
|
|
228
|
+
(Ppp[2] - Ppm[2] - Pmp[2] + Pmm[2]) / huv4,
|
|
229
|
+
],
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Return a non-zero eigenvector of the singular matrix [[a,b],[c,d]] (whose
|
|
234
|
+
* eigenvalue is implicit — caller has already subtracted λ from the diagonal).
|
|
235
|
+
* Picks the row with the larger magnitude for numerical stability.
|
|
236
|
+
*/
|
|
237
|
+
function eigenvector2x2(a, b, c, d) {
|
|
238
|
+
const useFirst = Math.abs(a) + Math.abs(b) >= Math.abs(c) + Math.abs(d);
|
|
239
|
+
if (useFirst) {
|
|
240
|
+
if (Math.abs(a) + Math.abs(b) < 1e-12)
|
|
241
|
+
return [1, 0];
|
|
242
|
+
return [-b, a];
|
|
243
|
+
}
|
|
244
|
+
if (Math.abs(c) + Math.abs(d) < 1e-12)
|
|
245
|
+
return [0, 1];
|
|
246
|
+
return [-d, c];
|
|
247
|
+
}
|
|
248
|
+
function liftAndNormalize(ab, Pu, Pv) {
|
|
249
|
+
const x = ab[0] * Pu[0] + ab[1] * Pv[0];
|
|
250
|
+
const y = ab[0] * Pu[1] + ab[1] * Pv[1];
|
|
251
|
+
const z = ab[0] * Pu[2] + ab[1] * Pv[2];
|
|
252
|
+
const len = Math.sqrt(x * x + y * y + z * z);
|
|
253
|
+
if (len < 1e-12)
|
|
254
|
+
return [1, 0, 0];
|
|
255
|
+
return [x / len, y / len, z / len];
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Fallback when curvature is direction-degenerate: return an orthonormal
|
|
259
|
+
* tangent frame derived from Pu and the Gram-Schmidt-corrected Pv.
|
|
260
|
+
*/
|
|
261
|
+
function degenerateOrthoFrame(Pu, Pv) {
|
|
262
|
+
const uLen = Math.sqrt(Pu[0] * Pu[0] + Pu[1] * Pu[1] + Pu[2] * Pu[2]);
|
|
263
|
+
if (uLen < 1e-12) {
|
|
264
|
+
return { maxDirection: [1, 0, 0], minDirection: [0, 1, 0] };
|
|
265
|
+
}
|
|
266
|
+
const ux = Pu[0] / uLen, uy = Pu[1] / uLen, uz = Pu[2] / uLen;
|
|
267
|
+
const dot = ux * Pv[0] + uy * Pv[1] + uz * Pv[2];
|
|
268
|
+
const vx = Pv[0] - dot * ux;
|
|
269
|
+
const vy = Pv[1] - dot * uy;
|
|
270
|
+
const vz = Pv[2] - dot * uz;
|
|
271
|
+
const vLen = Math.sqrt(vx * vx + vy * vy + vz * vz);
|
|
272
|
+
if (vLen < 1e-12) {
|
|
273
|
+
const ax = Math.abs(ux) < 0.9 ? [1, 0, 0] : [0, 1, 0];
|
|
274
|
+
const ox = uy * ax[2] - uz * ax[1];
|
|
275
|
+
const oy = uz * ax[0] - ux * ax[2];
|
|
276
|
+
const oz = ux * ax[1] - uy * ax[0];
|
|
277
|
+
const oLen = Math.sqrt(ox * ox + oy * oy + oz * oz) || 1;
|
|
278
|
+
return {
|
|
279
|
+
maxDirection: [ux, uy, uz],
|
|
280
|
+
minDirection: [ox / oLen, oy / oLen, oz / oLen],
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
return {
|
|
284
|
+
maxDirection: [ux, uy, uz],
|
|
285
|
+
minDirection: [vx / vLen, vy / vLen, vz / vLen],
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Compute principal curvature directions at (u, v) via finite-difference
|
|
290
|
+
* fundamental forms. The C++ facade exposes only k1 and k2 as scalars; this
|
|
291
|
+
* helper recovers the corresponding tangent directions in 3D space.
|
|
292
|
+
*/
|
|
293
|
+
function computePrincipalDirections(k, faceId, u, v, maxK, minK) {
|
|
294
|
+
const { Pu, Pv, Puu, Pvv, Puv } = surfaceDerivatives(k, faceId, u, v);
|
|
295
|
+
const nx = Pu[1] * Pv[2] - Pu[2] * Pv[1];
|
|
296
|
+
const ny = Pu[2] * Pv[0] - Pu[0] * Pv[2];
|
|
297
|
+
const nz = Pu[0] * Pv[1] - Pu[1] * Pv[0];
|
|
298
|
+
const nlen = Math.sqrt(nx * nx + ny * ny + nz * nz);
|
|
299
|
+
const E = Pu[0] * Pu[0] + Pu[1] * Pu[1] + Pu[2] * Pu[2];
|
|
300
|
+
const F = Pu[0] * Pv[0] + Pu[1] * Pv[1] + Pu[2] * Pv[2];
|
|
301
|
+
const G = Pv[0] * Pv[0] + Pv[1] * Pv[1] + Pv[2] * Pv[2];
|
|
302
|
+
if (nlen < 1e-12 || E * G - F * F < 1e-24) {
|
|
303
|
+
return degenerateOrthoFrame(Pu, Pv);
|
|
304
|
+
}
|
|
305
|
+
const e = (Puu[0] * nx + Puu[1] * ny + Puu[2] * nz) / nlen;
|
|
306
|
+
const f = (Puv[0] * nx + Puv[1] * ny + Puv[2] * nz) / nlen;
|
|
307
|
+
const g = (Pvv[0] * nx + Pvv[1] * ny + Pvv[2] * nz) / nlen;
|
|
308
|
+
// Shape operator W = I⁻¹ · II in the {Pu, Pv} basis. Solves the
|
|
309
|
+
// generalized eigenproblem II·x = k·I·x so eigenvectors are in {Pu, Pv}.
|
|
310
|
+
const det = E * G - F * F;
|
|
311
|
+
const w11 = (e * G - f * F) / det;
|
|
312
|
+
const w12 = (f * G - g * F) / det;
|
|
313
|
+
const w21 = (f * E - e * F) / det;
|
|
314
|
+
const w22 = (g * E - f * F) / det;
|
|
315
|
+
// Isotropic point (k1 ≈ k2) — any direction is principal.
|
|
316
|
+
if (Math.abs(maxK - minK) < 1e-9 * (Math.abs(maxK) + Math.abs(minK) + 1)) {
|
|
317
|
+
return degenerateOrthoFrame(Pu, Pv);
|
|
318
|
+
}
|
|
319
|
+
const dirMax2D = eigenvector2x2(w11 - maxK, w12, w21, w22 - maxK);
|
|
320
|
+
const dirMin2D = eigenvector2x2(w11 - minK, w12, w21, w22 - minK);
|
|
321
|
+
return {
|
|
322
|
+
maxDirection: liftAndNormalize(dirMax2D, Pu, Pv),
|
|
323
|
+
minDirection: liftAndNormalize(dirMin2D, Pu, Pv),
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
export function surfaceCurvature(k, face, u, v) {
|
|
327
|
+
const faceId = unwrap(face);
|
|
328
|
+
const vec = k.surfaceCurvature(faceId, u, v);
|
|
329
|
+
// C++ returns [mean, gaussian, maxK, minK]
|
|
330
|
+
const mean = vec.get(0);
|
|
331
|
+
const gaussian = vec.get(1);
|
|
332
|
+
const maxK = vec.get(2);
|
|
333
|
+
const minK = vec.get(3);
|
|
334
|
+
vec.delete();
|
|
335
|
+
const { maxDirection, minDirection } = computePrincipalDirections(k, faceId, u, v, maxK, minK);
|
|
336
|
+
return { gaussian, mean, max: maxK, min: minK, maxDirection, minDirection };
|
|
337
|
+
}
|
|
338
|
+
//# sourceMappingURL=measureOps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measureOps.js","sourceRoot":"","sources":["../../../../../src/vendored/brepjs/kernel/occtWasm/measureOps.ts"],"names":[],"mappings":"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AC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9F,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9F,GAAG,EAAE;YACH,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;SACnC;QACD,GAAG,EAAE;YACH,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;SACnC;QACD,GAAG,EAAE;YACH,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;YAC1C,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;YAC1C,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;SAC3C;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK;YAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CACvB,EAAoB,EACpB,EAA4B,EAC5B,EAA4B;IAE5B,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,IAAI,GAAG,GAAG,KAAK;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAC3B,EAA4B,EAC5B,EAA4B;IAK5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QACjB,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC9D,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EACrB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,EACjB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpB,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;IAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;IAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QACjB,MAAM,EAAE,GAA6B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YAC1B,YAAY,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC;SAChD,CAAC;IACJ,CAAC;IACD,OAAO;QACL,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QAC1B,YAAY,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC;KAChD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,0BAA0B,CACjC,CAAiB,EACjB,MAAc,EACd,CAAS,EACT,CAAS,EACT,IAAY,EACZ,IAAY;IAKZ,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEtE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAExD,IAAI,IAAI,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,CAAC;QAC1C,OAAO,oBAAoB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;IAC3D,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;IAC3D,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;IAE3D,gEAAgE;IAChE,yEAAyE;IACzE,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IAElC,0DAA0D;IAC1D,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,oBAAoB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;IAElE,OAAO;QACL,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC;QAChD,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,CAAiB,EACjB,IAAiB,EACjB,CAAS,EACT,CAAS;IAST,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,2CAA2C;IAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,GAAG,CAAC,MAAM,EAAE,CAAC;IAEb,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,0BAA0B,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAE/F,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AAC9E,CAAC","sourcesContent":["/**\n * Measurement operations for the occt-wasm adapter.\n *\n * Includes simple wrappers (volume/area/length/COM/bbox) and the more\n * involved `distance` and `surfaceCurvature` paths, which sample geometry\n * and reconstruct principal directions via finite-difference fundamental\n * forms. The C++ facade returns scalars (distance value, k1/k2); JS recovers\n * witness points and direction vectors.\n *\n * @module\n */\n\nimport type { DistanceResult, KernelShape } from '../../kernel/types.js';\nimport type { BulkMeasurement } from '../../kernel/interfaces/measureOps.js';\nimport type { OcctKernelWasm, OcctWasmModule } from './occtWasmTypes.js';\nimport { noop, unwrap } from './helpers.js';\n\n/**\n * Result of {@link surfaceCurvature} — kept shape-identical to the upstream\n * `kernel/occt/measureOps.CurvatureResult` (that module is cut per the layered\n * plan; the ported measurement layer re-exports this type).\n */\nexport interface CurvatureResult {\n /** Mean curvature: H = (k1 + k2) / 2 */\n mean: number;\n /** Gaussian curvature: K = k1 * k2 */\n gaussian: number;\n /** Maximum principal curvature */\n maxCurvature: number;\n /** Minimum principal curvature */\n minCurvature: number;\n /** Direction of maximum curvature */\n maxDirection: [number, number, number];\n /** Direction of minimum curvature */\n minDirection: [number, number, number];\n}\n\nexport function volume(k: OcctKernelWasm, shape: KernelShape): number {\n return k.getVolume(unwrap(shape));\n}\n\nexport function area(k: OcctKernelWasm, shape: KernelShape): number {\n return k.getSurfaceArea(unwrap(shape));\n}\n\nexport function length(k: OcctKernelWasm, shape: KernelShape): number {\n return k.getLength(unwrap(shape));\n}\n\nexport function centerOfMass(k: OcctKernelWasm, shape: KernelShape): [number, number, number] {\n const vec = k.getCenterOfMass(unwrap(shape));\n try {\n return [vec.get(0), vec.get(1), vec.get(2)];\n } finally {\n vec.delete();\n }\n}\n\nexport function linearCenterOfMass(\n k: OcctKernelWasm,\n shape: KernelShape\n): [number, number, number] {\n const vec = k.getLinearCenterOfMass(unwrap(shape));\n try {\n return [vec.get(0), vec.get(1), vec.get(2)];\n } finally {\n vec.delete();\n }\n}\n\nexport function boundingBox(\n k: OcctKernelWasm,\n shape: KernelShape\n): { min: [number, number, number]; max: [number, number, number] } {\n const bb = k.getBoundingBox(unwrap(shape), true);\n return {\n min: [bb.xmin, bb.ymin, bb.zmin],\n max: [bb.xmax, bb.ymax, bb.zmax],\n };\n}\n\nexport function surfaceCenterOfMass(\n k: OcctKernelWasm,\n face: KernelShape\n): [number, number, number] {\n // Delegates to occt-wasm's exact `BRepGProp::SurfaceProperties.CentreOfMass()`\n // (added in occt-wasm 2.0). The previous tessellation-triangle centroid\n // diverged from brepjs-occt for non-planar faces.\n try {\n const v = k.getSurfaceCenterOfMass(unwrap(face));\n try {\n return [v.get(0), v.get(1), v.get(2)];\n } finally {\n v.delete();\n }\n } catch {\n // Degenerate or unmeshable face — preserve previous behavior of\n // returning origin rather than propagating the WASM exception.\n return [0, 0, 0];\n }\n}\n\nexport function measureBulk(\n k: OcctKernelWasm,\n shape: KernelShape,\n includeLinear?: boolean\n): BulkMeasurement {\n return {\n volume: volume(k, shape),\n area: area(k, shape),\n length: includeLinear ? length(k, shape) : 0,\n centerOfMass: centerOfMass(k, shape),\n boundingBox: boundingBox(k, shape),\n };\n}\n\nexport function createDistanceQuery(\n k: OcctKernelWasm,\n referenceShape: KernelShape\n): {\n distanceTo(shape: KernelShape): {\n value: number;\n point1: [number, number, number];\n point2: [number, number, number];\n };\n dispose(): void;\n} {\n const refId = unwrap(referenceShape);\n return {\n distanceTo(shape: KernelShape) {\n const d = k.distanceBetween(refId, unwrap(shape));\n return { value: d, point1: [0, 0, 0], point2: [0, 0, 0] };\n },\n dispose: noop,\n };\n}\n\n// Cap mesh samples so distance()'s nested O(N·M) loop stays bounded\n// (~65k pair comparisons at the cap × cap product). Stride-sample by\n// vertex (3 floats) when the mesh exceeds the cap; the closest-pair\n// approximation degrades gracefully because every retained sample is\n// still on the surface.\nconst MAX_MESH_SAMPLES = 256;\n\n/**\n * Collect 3D sample points from a shape for nearest-pair queries: every\n * topological vertex, plus tessellation vertices when the shape carries\n * surfaces. Used by distance() to approximate witness points.\n */\nfunction collectDistanceSamples(\n k: OcctKernelWasm,\n mod: OcctWasmModule,\n shapeId: number\n): Array<[number, number, number]> {\n const out: Array<[number, number, number]> = [];\n\n const verts = k.getSubShapes(shapeId, 'vertex');\n try {\n const n = verts.size();\n for (let i = 0; i < n; i++) {\n const p = k.vertexPosition(verts.get(i));\n out.push([p.get(0), p.get(1), p.get(2)]);\n p.delete();\n }\n } finally {\n verts.delete();\n }\n\n // Tessellation samples — coarse linear deflection (≈1% of bbox diagonal)\n // is enough to seed a witness-point search; refinement comes from picking\n // the closest pair, not from sample density per se.\n // useTriangulation=true matches brepjs-occt's BRepBndLib.Add(shape, box, true)\n // semantics — refines the bound via surface analysis when triangulation is\n // present, falls back to surface-precise AddOptimal otherwise.\n const bb = k.getBoundingBox(shapeId, true);\n const diag = Math.sqrt(\n (bb.xmax - bb.xmin) ** 2 + (bb.ymax - bb.ymin) ** 2 + (bb.zmax - bb.zmin) ** 2\n );\n const linDef = Math.max(diag * 1e-2, 1e-4);\n let mesh: ReturnType<OcctKernelWasm['tessellate']> | undefined;\n try {\n mesh = k.tessellate(shapeId, linDef, 0.5);\n } catch {\n return out;\n }\n try {\n const posCount = mesh.positionCount;\n if (posCount > 0) {\n const ptr = mesh.getPositionsPtr() >> 2;\n const heap = mod.HEAPF32;\n const vertexCount = Math.floor(posCount / 3);\n const stride = vertexCount > MAX_MESH_SAMPLES ? Math.ceil(vertexCount / MAX_MESH_SAMPLES) : 1;\n const step = stride * 3;\n for (let i = 0; i < posCount; i += step) {\n out.push([heap[ptr + i] ?? 0, heap[ptr + i + 1] ?? 0, heap[ptr + i + 2] ?? 0]);\n }\n }\n } finally {\n mesh.delete();\n }\n\n return out;\n}\n\nexport function distance(\n k: OcctKernelWasm,\n mod: OcctWasmModule,\n shape1: KernelShape,\n shape2: KernelShape\n): DistanceResult {\n const id1 = unwrap(shape1);\n const id2 = unwrap(shape2);\n const value = k.distanceBetween(id1, id2);\n // Witness points: the C++ facade returns only a scalar distance, so we\n // sample each shape (topological vertices + face tessellation) and pick\n // the closest pair. The `value` above stays exact (from BRepExtrema);\n // `point1`/`point2` are an approximation whose error scales with the\n // tessellation deflection.\n const samples1 = collectDistanceSamples(k, mod, id1);\n const samples2 = collectDistanceSamples(k, mod, id2);\n if (samples1.length === 0 || samples2.length === 0) {\n return { value, point1: [0, 0, 0], point2: [0, 0, 0] };\n }\n let bestD2 = Infinity;\n let bestP1: [number, number, number] = samples1[0] ?? [0, 0, 0];\n let bestP2: [number, number, number] = samples2[0] ?? [0, 0, 0];\n for (const p1 of samples1) {\n for (const p2 of samples2) {\n const dx = p2[0] - p1[0];\n const dy = p2[1] - p1[1];\n const dz = p2[2] - p1[2];\n const d2 = dx * dx + dy * dy + dz * dz;\n if (d2 < bestD2) {\n bestD2 = d2;\n bestP1 = p1;\n bestP2 = p2;\n }\n }\n }\n return { value, point1: bestP1, point2: bestP2 };\n}\n\nfunction pointAt(\n k: OcctKernelWasm,\n faceId: number,\n u: number,\n v: number\n): [number, number, number] {\n const p = k.pointOnSurface(faceId, u, v);\n const r: [number, number, number] = [p.get(0), p.get(1), p.get(2)];\n p.delete();\n return r;\n}\n\n/**\n * Sample a 9-point stencil around (u, v) and return central-difference\n * partial derivatives Pu, Pv, Puu, Pvv, Puv. Step size is 1e-3 of the\n * parametric range (clamped at 1e-6) — the sweet spot between truncation\n * error and float-eval noise. Near the boundary the stencil shifts inward\n * so all sample points stay in the domain.\n */\nfunction surfaceDerivatives(\n k: OcctKernelWasm,\n faceId: number,\n u: number,\n v: number\n): {\n Pu: [number, number, number];\n Pv: [number, number, number];\n Puu: [number, number, number];\n Pvv: [number, number, number];\n Puv: [number, number, number];\n} {\n const bounds = k.uvBounds(faceId);\n const uMin = bounds.get(0);\n const uMax = bounds.get(1);\n const vMin = bounds.get(2);\n const vMax = bounds.get(3);\n bounds.delete();\n\n const hu = Math.max(Math.max(uMax - uMin, 1e-12) * 1e-3, 1e-6);\n const hv = Math.max(Math.max(vMax - vMin, 1e-12) * 1e-3, 1e-6);\n const uc = Math.min(Math.max(u, uMin + hu), uMax - hu);\n const vc = Math.min(Math.max(v, vMin + hv), vMax - hv);\n\n const P = pointAt(k, faceId, uc, vc);\n const Pup = pointAt(k, faceId, uc + hu, vc);\n const Pum = pointAt(k, faceId, uc - hu, vc);\n const Pvp = pointAt(k, faceId, uc, vc + hv);\n const Pvm = pointAt(k, faceId, uc, vc - hv);\n const Ppp = pointAt(k, faceId, uc + hu, vc + hv);\n const Ppm = pointAt(k, faceId, uc + hu, vc - hv);\n const Pmp = pointAt(k, faceId, uc - hu, vc + hv);\n const Pmm = pointAt(k, faceId, uc - hu, vc - hv);\n const huu = hu * hu;\n const hvv = hv * hv;\n const huv4 = 4 * hu * hv;\n\n return {\n Pu: [(Pup[0] - Pum[0]) / (2 * hu), (Pup[1] - Pum[1]) / (2 * hu), (Pup[2] - Pum[2]) / (2 * hu)],\n Pv: [(Pvp[0] - Pvm[0]) / (2 * hv), (Pvp[1] - Pvm[1]) / (2 * hv), (Pvp[2] - Pvm[2]) / (2 * hv)],\n Puu: [\n (Pup[0] - 2 * P[0] + Pum[0]) / huu,\n (Pup[1] - 2 * P[1] + Pum[1]) / huu,\n (Pup[2] - 2 * P[2] + Pum[2]) / huu,\n ],\n Pvv: [\n (Pvp[0] - 2 * P[0] + Pvm[0]) / hvv,\n (Pvp[1] - 2 * P[1] + Pvm[1]) / hvv,\n (Pvp[2] - 2 * P[2] + Pvm[2]) / hvv,\n ],\n Puv: [\n (Ppp[0] - Ppm[0] - Pmp[0] + Pmm[0]) / huv4,\n (Ppp[1] - Ppm[1] - Pmp[1] + Pmm[1]) / huv4,\n (Ppp[2] - Ppm[2] - Pmp[2] + Pmm[2]) / huv4,\n ],\n };\n}\n\n/**\n * Return a non-zero eigenvector of the singular matrix [[a,b],[c,d]] (whose\n * eigenvalue is implicit — caller has already subtracted λ from the diagonal).\n * Picks the row with the larger magnitude for numerical stability.\n */\nfunction eigenvector2x2(a: number, b: number, c: number, d: number): [number, number] {\n const useFirst = Math.abs(a) + Math.abs(b) >= Math.abs(c) + Math.abs(d);\n if (useFirst) {\n if (Math.abs(a) + Math.abs(b) < 1e-12) return [1, 0];\n return [-b, a];\n }\n if (Math.abs(c) + Math.abs(d) < 1e-12) return [0, 1];\n return [-d, c];\n}\n\nfunction liftAndNormalize(\n ab: [number, number],\n Pu: [number, number, number],\n Pv: [number, number, number]\n): [number, number, number] {\n const x = ab[0] * Pu[0] + ab[1] * Pv[0];\n const y = ab[0] * Pu[1] + ab[1] * Pv[1];\n const z = ab[0] * Pu[2] + ab[1] * Pv[2];\n const len = Math.sqrt(x * x + y * y + z * z);\n if (len < 1e-12) return [1, 0, 0];\n return [x / len, y / len, z / len];\n}\n\n/**\n * Fallback when curvature is direction-degenerate: return an orthonormal\n * tangent frame derived from Pu and the Gram-Schmidt-corrected Pv.\n */\nfunction degenerateOrthoFrame(\n Pu: [number, number, number],\n Pv: [number, number, number]\n): {\n maxDirection: [number, number, number];\n minDirection: [number, number, number];\n} {\n const uLen = Math.sqrt(Pu[0] * Pu[0] + Pu[1] * Pu[1] + Pu[2] * Pu[2]);\n if (uLen < 1e-12) {\n return { maxDirection: [1, 0, 0], minDirection: [0, 1, 0] };\n }\n const ux = Pu[0] / uLen,\n uy = Pu[1] / uLen,\n uz = Pu[2] / uLen;\n const dot = ux * Pv[0] + uy * Pv[1] + uz * Pv[2];\n const vx = Pv[0] - dot * ux;\n const vy = Pv[1] - dot * uy;\n const vz = Pv[2] - dot * uz;\n const vLen = Math.sqrt(vx * vx + vy * vy + vz * vz);\n if (vLen < 1e-12) {\n const ax: [number, number, number] = Math.abs(ux) < 0.9 ? [1, 0, 0] : [0, 1, 0];\n const ox = uy * ax[2] - uz * ax[1];\n const oy = uz * ax[0] - ux * ax[2];\n const oz = ux * ax[1] - uy * ax[0];\n const oLen = Math.sqrt(ox * ox + oy * oy + oz * oz) || 1;\n return {\n maxDirection: [ux, uy, uz],\n minDirection: [ox / oLen, oy / oLen, oz / oLen],\n };\n }\n return {\n maxDirection: [ux, uy, uz],\n minDirection: [vx / vLen, vy / vLen, vz / vLen],\n };\n}\n\n/**\n * Compute principal curvature directions at (u, v) via finite-difference\n * fundamental forms. The C++ facade exposes only k1 and k2 as scalars; this\n * helper recovers the corresponding tangent directions in 3D space.\n */\nfunction computePrincipalDirections(\n k: OcctKernelWasm,\n faceId: number,\n u: number,\n v: number,\n maxK: number,\n minK: number\n): {\n maxDirection: [number, number, number];\n minDirection: [number, number, number];\n} {\n const { Pu, Pv, Puu, Pvv, Puv } = surfaceDerivatives(k, faceId, u, v);\n\n const nx = Pu[1] * Pv[2] - Pu[2] * Pv[1];\n const ny = Pu[2] * Pv[0] - Pu[0] * Pv[2];\n const nz = Pu[0] * Pv[1] - Pu[1] * Pv[0];\n const nlen = Math.sqrt(nx * nx + ny * ny + nz * nz);\n const E = Pu[0] * Pu[0] + Pu[1] * Pu[1] + Pu[2] * Pu[2];\n const F = Pu[0] * Pv[0] + Pu[1] * Pv[1] + Pu[2] * Pv[2];\n const G = Pv[0] * Pv[0] + Pv[1] * Pv[1] + Pv[2] * Pv[2];\n\n if (nlen < 1e-12 || E * G - F * F < 1e-24) {\n return degenerateOrthoFrame(Pu, Pv);\n }\n\n const e = (Puu[0] * nx + Puu[1] * ny + Puu[2] * nz) / nlen;\n const f = (Puv[0] * nx + Puv[1] * ny + Puv[2] * nz) / nlen;\n const g = (Pvv[0] * nx + Pvv[1] * ny + Pvv[2] * nz) / nlen;\n\n // Shape operator W = I⁻¹ · II in the {Pu, Pv} basis. Solves the\n // generalized eigenproblem II·x = k·I·x so eigenvectors are in {Pu, Pv}.\n const det = E * G - F * F;\n const w11 = (e * G - f * F) / det;\n const w12 = (f * G - g * F) / det;\n const w21 = (f * E - e * F) / det;\n const w22 = (g * E - f * F) / det;\n\n // Isotropic point (k1 ≈ k2) — any direction is principal.\n if (Math.abs(maxK - minK) < 1e-9 * (Math.abs(maxK) + Math.abs(minK) + 1)) {\n return degenerateOrthoFrame(Pu, Pv);\n }\n\n const dirMax2D = eigenvector2x2(w11 - maxK, w12, w21, w22 - maxK);\n const dirMin2D = eigenvector2x2(w11 - minK, w12, w21, w22 - minK);\n\n return {\n maxDirection: liftAndNormalize(dirMax2D, Pu, Pv),\n minDirection: liftAndNormalize(dirMin2D, Pu, Pv),\n };\n}\n\nexport function surfaceCurvature(\n k: OcctKernelWasm,\n face: KernelShape,\n u: number,\n v: number\n): {\n gaussian: number;\n mean: number;\n max: number;\n min: number;\n maxDirection: [number, number, number];\n minDirection: [number, number, number];\n} {\n const faceId = unwrap(face);\n const vec = k.surfaceCurvature(faceId, u, v);\n // C++ returns [mean, gaussian, maxK, minK]\n const mean = vec.get(0);\n const gaussian = vec.get(1);\n const maxK = vec.get(2);\n const minK = vec.get(3);\n vec.delete();\n\n const { maxDirection, minDirection } = computePrincipalDirections(k, faceId, u, v, maxK, minK);\n\n return { gaussian, mean, max: maxK, min: minK, maxDirection, minDirection };\n}\n"]}
|