fluidcad 0.0.2
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.txt +504 -0
- package/README.md +175 -0
- package/bin/fluidcad.js +94 -0
- package/bin/watcher.js +55 -0
- package/lib/dist/common/edge.d.ts +14 -0
- package/lib/dist/common/edge.js +32 -0
- package/lib/dist/common/face.d.ts +31 -0
- package/lib/dist/common/face.js +83 -0
- package/lib/dist/common/materials.d.ts +7 -0
- package/lib/dist/common/materials.js +22 -0
- package/lib/dist/common/scene-object.d.ts +111 -0
- package/lib/dist/common/scene-object.js +380 -0
- package/lib/dist/common/shape-factory.d.ts +8 -0
- package/lib/dist/common/shape-factory.js +31 -0
- package/lib/dist/common/shape-type.d.ts +1 -0
- package/lib/dist/common/shape-type.js +1 -0
- package/lib/dist/common/shape.d.ts +43 -0
- package/lib/dist/common/shape.js +95 -0
- package/lib/dist/common/shapes.d.ts +6 -0
- package/lib/dist/common/shapes.js +6 -0
- package/lib/dist/common/solid-face.d.ts +9 -0
- package/lib/dist/common/solid-face.js +22 -0
- package/lib/dist/common/solid.d.ts +20 -0
- package/lib/dist/common/solid.js +68 -0
- package/lib/dist/common/vertex.d.ts +17 -0
- package/lib/dist/common/vertex.js +44 -0
- package/lib/dist/common/wire.d.ts +22 -0
- package/lib/dist/common/wire.js +97 -0
- package/lib/dist/constraints/constraint.d.ts +11 -0
- package/lib/dist/constraints/constraint.js +51 -0
- package/lib/dist/constraints/outside.d.ts +3 -0
- package/lib/dist/constraints/outside.js +4 -0
- package/lib/dist/core/2d/aline.d.ts +28 -0
- package/lib/dist/core/2d/aline.js +26 -0
- package/lib/dist/core/2d/arc.d.ts +77 -0
- package/lib/dist/core/2d/arc.js +49 -0
- package/lib/dist/core/2d/aslot.d.ts +12 -0
- package/lib/dist/core/2d/aslot.js +40 -0
- package/lib/dist/core/2d/bezier.d.ts +16 -0
- package/lib/dist/core/2d/bezier.js +15 -0
- package/lib/dist/core/2d/circle.d.ts +24 -0
- package/lib/dist/core/2d/circle.js +44 -0
- package/lib/dist/core/2d/connect.d.ts +11 -0
- package/lib/dist/core/2d/connect.js +10 -0
- package/lib/dist/core/2d/crect.d.ts +12 -0
- package/lib/dist/core/2d/crect.js +74 -0
- package/lib/dist/core/2d/face-driller.d.ts +8 -0
- package/lib/dist/core/2d/face-driller.js +70 -0
- package/lib/dist/core/2d/face-maker.d.ts +13 -0
- package/lib/dist/core/2d/face-maker.js +119 -0
- package/lib/dist/core/2d/face-maker2.d.ts +6 -0
- package/lib/dist/core/2d/face-maker2.js +54 -0
- package/lib/dist/core/2d/hline.d.ts +33 -0
- package/lib/dist/core/2d/hline.js +37 -0
- package/lib/dist/core/2d/hmove.d.ts +9 -0
- package/lib/dist/core/2d/hmove.js +11 -0
- package/lib/dist/core/2d/index.d.ts +22 -0
- package/lib/dist/core/2d/index.js +22 -0
- package/lib/dist/core/2d/line.d.ts +24 -0
- package/lib/dist/core/2d/line.js +40 -0
- package/lib/dist/core/2d/move.d.ts +13 -0
- package/lib/dist/core/2d/move.js +13 -0
- package/lib/dist/core/2d/offset.d.ts +21 -0
- package/lib/dist/core/2d/offset.js +24 -0
- package/lib/dist/core/2d/pmove.d.ts +11 -0
- package/lib/dist/core/2d/pmove.js +12 -0
- package/lib/dist/core/2d/polygon.d.ts +38 -0
- package/lib/dist/core/2d/polygon.js +63 -0
- package/lib/dist/core/2d/project.d.ts +17 -0
- package/lib/dist/core/2d/project.js +20 -0
- package/lib/dist/core/2d/rect.d.ts +27 -0
- package/lib/dist/core/2d/rect.js +58 -0
- package/lib/dist/core/2d/rmove.d.ts +17 -0
- package/lib/dist/core/2d/rmove.js +14 -0
- package/lib/dist/core/2d/slot.d.ts +49 -0
- package/lib/dist/core/2d/slot.js +65 -0
- package/lib/dist/core/2d/tarc.d.ts +46 -0
- package/lib/dist/core/2d/tarc.js +61 -0
- package/lib/dist/core/2d/tcircle.d.ts +15 -0
- package/lib/dist/core/2d/tcircle.js +24 -0
- package/lib/dist/core/2d/tline.d.ts +24 -0
- package/lib/dist/core/2d/tline.js +30 -0
- package/lib/dist/core/2d/vline.d.ts +33 -0
- package/lib/dist/core/2d/vline.js +37 -0
- package/lib/dist/core/2d/vmove.d.ts +9 -0
- package/lib/dist/core/2d/vmove.js +11 -0
- package/lib/dist/core/2d/wire.d.ts +11 -0
- package/lib/dist/core/2d/wire.js +29 -0
- package/lib/dist/core/axis.d.ts +41 -0
- package/lib/dist/core/axis.js +104 -0
- package/lib/dist/core/chamfer.d.ts +31 -0
- package/lib/dist/core/chamfer.js +32 -0
- package/lib/dist/core/color.d.ts +16 -0
- package/lib/dist/core/color.js +19 -0
- package/lib/dist/core/common.d.ts +12 -0
- package/lib/dist/core/common.js +36 -0
- package/lib/dist/core/copy.d.ts +58 -0
- package/lib/dist/core/copy.js +49 -0
- package/lib/dist/core/cut.d.ts +46 -0
- package/lib/dist/core/cut.js +53 -0
- package/lib/dist/core/cylinder.d.ts +11 -0
- package/lib/dist/core/cylinder.js +10 -0
- package/lib/dist/core/extrude.d.ts +36 -0
- package/lib/dist/core/extrude.js +55 -0
- package/lib/dist/core/fillet.d.ts +33 -0
- package/lib/dist/core/fillet.js +58 -0
- package/lib/dist/core/fuse.d.ts +14 -0
- package/lib/dist/core/fuse.js +36 -0
- package/lib/dist/core/index.d.ts +32 -0
- package/lib/dist/core/index.js +30 -0
- package/lib/dist/core/interfaces.d.ts +411 -0
- package/lib/dist/core/interfaces.js +1 -0
- package/lib/dist/core/load.d.ts +10 -0
- package/lib/dist/core/load.js +10 -0
- package/lib/dist/core/loft.d.ts +10 -0
- package/lib/dist/core/loft.js +21 -0
- package/lib/dist/core/mirror.d.ts +40 -0
- package/lib/dist/core/mirror.js +95 -0
- package/lib/dist/core/part.d.ts +7 -0
- package/lib/dist/core/part.js +29 -0
- package/lib/dist/core/plane.d.ts +56 -0
- package/lib/dist/core/plane.js +111 -0
- package/lib/dist/core/region.d.ts +13 -0
- package/lib/dist/core/region.js +18 -0
- package/lib/dist/core/remove.d.ts +10 -0
- package/lib/dist/core/remove.js +10 -0
- package/lib/dist/core/repeat.d.ts +41 -0
- package/lib/dist/core/repeat.js +146 -0
- package/lib/dist/core/revolve.d.ts +19 -0
- package/lib/dist/core/revolve.js +39 -0
- package/lib/dist/core/rotate.d.ts +34 -0
- package/lib/dist/core/rotate.js +48 -0
- package/lib/dist/core/select.d.ts +12 -0
- package/lib/dist/core/select.js +21 -0
- package/lib/dist/core/shell.d.ts +16 -0
- package/lib/dist/core/shell.js +28 -0
- package/lib/dist/core/sketch.d.ts +18 -0
- package/lib/dist/core/sketch.js +34 -0
- package/lib/dist/core/sphere.d.ts +16 -0
- package/lib/dist/core/sphere.js +11 -0
- package/lib/dist/core/split.d.ts +12 -0
- package/lib/dist/core/split.js +26 -0
- package/lib/dist/core/subtract.d.ts +11 -0
- package/lib/dist/core/subtract.js +10 -0
- package/lib/dist/core/sweep.d.ts +16 -0
- package/lib/dist/core/sweep.js +29 -0
- package/lib/dist/core/translate.d.ts +64 -0
- package/lib/dist/core/translate.js +39 -0
- package/lib/dist/core/trim.d.ts +13 -0
- package/lib/dist/core/trim.js +18 -0
- package/lib/dist/core/use.d.ts +5 -0
- package/lib/dist/core/use.js +22 -0
- package/lib/dist/features/2d/aline.d.ts +18 -0
- package/lib/dist/features/2d/aline.js +78 -0
- package/lib/dist/features/2d/amove.d.ts +14 -0
- package/lib/dist/features/2d/amove.js +33 -0
- package/lib/dist/features/2d/arc-from-center.d.ts +16 -0
- package/lib/dist/features/2d/arc-from-center.js +69 -0
- package/lib/dist/features/2d/arc-to-point.d.ts +17 -0
- package/lib/dist/features/2d/arc-to-point.js +95 -0
- package/lib/dist/features/2d/arc.d.ts +19 -0
- package/lib/dist/features/2d/arc.js +94 -0
- package/lib/dist/features/2d/bezier.d.ts +15 -0
- package/lib/dist/features/2d/bezier.js +77 -0
- package/lib/dist/features/2d/circle.d.ts +17 -0
- package/lib/dist/features/2d/circle.js +58 -0
- package/lib/dist/features/2d/connect.d.ts +12 -0
- package/lib/dist/features/2d/connect.js +105 -0
- package/lib/dist/features/2d/constraints/constraint.d.ts +11 -0
- package/lib/dist/features/2d/constraints/constraint.js +49 -0
- package/lib/dist/features/2d/constraints/geometry-qualifier.d.ts +6 -0
- package/lib/dist/features/2d/constraints/geometry-qualifier.js +13 -0
- package/lib/dist/features/2d/constraints/outside.d.ts +3 -0
- package/lib/dist/features/2d/constraints/outside.js +4 -0
- package/lib/dist/features/2d/constraints/qualified-geometry.d.ts +16 -0
- package/lib/dist/features/2d/constraints/qualified-geometry.js +36 -0
- package/lib/dist/features/2d/extrudable-base.d.ts +15 -0
- package/lib/dist/features/2d/extrudable-base.js +27 -0
- package/lib/dist/features/2d/geometry.d.ts +20 -0
- package/lib/dist/features/2d/geometry.js +77 -0
- package/lib/dist/features/2d/hline.d.ts +16 -0
- package/lib/dist/features/2d/hline.js +66 -0
- package/lib/dist/features/2d/hmove.d.ts +14 -0
- package/lib/dist/features/2d/hmove.js +37 -0
- package/lib/dist/features/2d/line.d.ts +15 -0
- package/lib/dist/features/2d/line.js +59 -0
- package/lib/dist/features/2d/move.d.ts +15 -0
- package/lib/dist/features/2d/move.js +36 -0
- package/lib/dist/features/2d/offset.d.ts +18 -0
- package/lib/dist/features/2d/offset.js +117 -0
- package/lib/dist/features/2d/pmove.d.ts +16 -0
- package/lib/dist/features/2d/pmove.js +40 -0
- package/lib/dist/features/2d/polygon.d.ts +25 -0
- package/lib/dist/features/2d/polygon.js +107 -0
- package/lib/dist/features/2d/projection.d.ts +15 -0
- package/lib/dist/features/2d/projection.js +94 -0
- package/lib/dist/features/2d/rect.d.ts +45 -0
- package/lib/dist/features/2d/rect.js +262 -0
- package/lib/dist/features/2d/rmove.d.ts +17 -0
- package/lib/dist/features/2d/rmove.js +39 -0
- package/lib/dist/features/2d/sketch.d.ts +34 -0
- package/lib/dist/features/2d/sketch.js +171 -0
- package/lib/dist/features/2d/slot-from-edge.d.ts +19 -0
- package/lib/dist/features/2d/slot-from-edge.js +66 -0
- package/lib/dist/features/2d/slot.d.ts +24 -0
- package/lib/dist/features/2d/slot.js +119 -0
- package/lib/dist/features/2d/tarc-constrained.d.ts +20 -0
- package/lib/dist/features/2d/tarc-constrained.js +64 -0
- package/lib/dist/features/2d/tarc-to-point-tangent.d.ts +15 -0
- package/lib/dist/features/2d/tarc-to-point-tangent.js +86 -0
- package/lib/dist/features/2d/tarc-to-point.d.ts +13 -0
- package/lib/dist/features/2d/tarc-to-point.js +86 -0
- package/lib/dist/features/2d/tarc-two-circles.d.ts +18 -0
- package/lib/dist/features/2d/tarc-two-circles.js +61 -0
- package/lib/dist/features/2d/tarc-with-tangent.d.ts +17 -0
- package/lib/dist/features/2d/tarc-with-tangent.js +71 -0
- package/lib/dist/features/2d/tarc.d.ts +13 -0
- package/lib/dist/features/2d/tarc.js +71 -0
- package/lib/dist/features/2d/tcircle-constrained.d.ts +14 -0
- package/lib/dist/features/2d/tcircle-constrained.js +37 -0
- package/lib/dist/features/2d/tcircle-three-tan.d.ts +13 -0
- package/lib/dist/features/2d/tcircle-three-tan.js +33 -0
- package/lib/dist/features/2d/tcircle-two-tan.d.ts +13 -0
- package/lib/dist/features/2d/tcircle-two-tan.js +33 -0
- package/lib/dist/features/2d/tline-constrained.d.ts +27 -0
- package/lib/dist/features/2d/tline-constrained.js +82 -0
- package/lib/dist/features/2d/tline.d.ts +12 -0
- package/lib/dist/features/2d/tline.js +49 -0
- package/lib/dist/features/2d/vline.d.ts +16 -0
- package/lib/dist/features/2d/vline.js +65 -0
- package/lib/dist/features/2d/vmove.d.ts +14 -0
- package/lib/dist/features/2d/vmove.js +37 -0
- package/lib/dist/features/2d/wire.d.ts +12 -0
- package/lib/dist/features/2d/wire.js +76 -0
- package/lib/dist/features/Extrude.d.ts +1 -0
- package/lib/dist/features/Extrude.js +1 -0
- package/lib/dist/features/axis-from-edge.d.ts +15 -0
- package/lib/dist/features/axis-from-edge.js +82 -0
- package/lib/dist/features/axis-mid.d.ts +16 -0
- package/lib/dist/features/axis-mid.js +59 -0
- package/lib/dist/features/axis-renderable-base.d.ts +8 -0
- package/lib/dist/features/axis-renderable-base.js +12 -0
- package/lib/dist/features/axis.d.ts +14 -0
- package/lib/dist/features/axis.js +43 -0
- package/lib/dist/features/chamfer.d.ts +20 -0
- package/lib/dist/features/chamfer.js +129 -0
- package/lib/dist/features/color.d.ts +11 -0
- package/lib/dist/features/color.js +93 -0
- package/lib/dist/features/common.d.ts +12 -0
- package/lib/dist/features/common.js +70 -0
- package/lib/dist/features/common2d.d.ts +15 -0
- package/lib/dist/features/common2d.js +96 -0
- package/lib/dist/features/copy-circular.d.ts +23 -0
- package/lib/dist/features/copy-circular.js +73 -0
- package/lib/dist/features/copy-circular2d.d.ts +15 -0
- package/lib/dist/features/copy-circular2d.js +84 -0
- package/lib/dist/features/copy-linear.d.ts +23 -0
- package/lib/dist/features/copy-linear.js +101 -0
- package/lib/dist/features/copy-linear2d.d.ts +15 -0
- package/lib/dist/features/copy-linear2d.js +108 -0
- package/lib/dist/features/cut-base.d.ts +49 -0
- package/lib/dist/features/cut-base.js +312 -0
- package/lib/dist/features/cut-symmetric.d.ts +23 -0
- package/lib/dist/features/cut-symmetric.js +119 -0
- package/lib/dist/features/cut-two-distances.d.ts +24 -0
- package/lib/dist/features/cut-two-distances.js +110 -0
- package/lib/dist/features/cut.d.ts +27 -0
- package/lib/dist/features/cut.js +101 -0
- package/lib/dist/features/cylinder.d.ts +13 -0
- package/lib/dist/features/cylinder.js +33 -0
- package/lib/dist/features/extrude-base.d.ts +56 -0
- package/lib/dist/features/extrude-base.js +331 -0
- package/lib/dist/features/extrude-options.d.ts +8 -0
- package/lib/dist/features/extrude-options.js +1 -0
- package/lib/dist/features/extrude-symmetric.d.ts +28 -0
- package/lib/dist/features/extrude-symmetric.js +177 -0
- package/lib/dist/features/extrude-to-face.d.ts +35 -0
- package/lib/dist/features/extrude-to-face.js +275 -0
- package/lib/dist/features/extrude-two-distances.d.ts +21 -0
- package/lib/dist/features/extrude-two-distances.js +116 -0
- package/lib/dist/features/extrude.d.ts +25 -0
- package/lib/dist/features/extrude.js +182 -0
- package/lib/dist/features/fillet.d.ts +24 -0
- package/lib/dist/features/fillet.js +125 -0
- package/lib/dist/features/fillet2d.d.ts +16 -0
- package/lib/dist/features/fillet2d.js +98 -0
- package/lib/dist/features/fuse.d.ts +10 -0
- package/lib/dist/features/fuse.js +63 -0
- package/lib/dist/features/fuse2d.d.ts +13 -0
- package/lib/dist/features/fuse2d.js +86 -0
- package/lib/dist/features/infinite-extrude.d.ts +10 -0
- package/lib/dist/features/infinite-extrude.js +44 -0
- package/lib/dist/features/lazy-scene-object.d.ts +16 -0
- package/lib/dist/features/lazy-scene-object.js +52 -0
- package/lib/dist/features/lazy-vertex.d.ts +19 -0
- package/lib/dist/features/lazy-vertex.js +62 -0
- package/lib/dist/features/load.d.ts +9 -0
- package/lib/dist/features/load.js +31 -0
- package/lib/dist/features/loft.d.ts +27 -0
- package/lib/dist/features/loft.js +273 -0
- package/lib/dist/features/mirror-feature.d.ts +15 -0
- package/lib/dist/features/mirror-feature.js +39 -0
- package/lib/dist/features/mirror-shape.d.ts +14 -0
- package/lib/dist/features/mirror-shape.js +86 -0
- package/lib/dist/features/mirror-shape2d.d.ts +18 -0
- package/lib/dist/features/mirror-shape2d.js +110 -0
- package/lib/dist/features/part.d.ts +12 -0
- package/lib/dist/features/part.js +36 -0
- package/lib/dist/features/plane-from-object.d.ts +29 -0
- package/lib/dist/features/plane-from-object.js +103 -0
- package/lib/dist/features/plane-mid.d.ts +18 -0
- package/lib/dist/features/plane-mid.js +54 -0
- package/lib/dist/features/plane-renderable-base.d.ts +9 -0
- package/lib/dist/features/plane-renderable-base.js +15 -0
- package/lib/dist/features/plane.d.ts +21 -0
- package/lib/dist/features/plane.js +64 -0
- package/lib/dist/features/region2d.d.ts +25 -0
- package/lib/dist/features/region2d.js +185 -0
- package/lib/dist/features/remove.d.ts +9 -0
- package/lib/dist/features/remove.js +33 -0
- package/lib/dist/features/repeat-circular.d.ts +23 -0
- package/lib/dist/features/repeat-circular.js +47 -0
- package/lib/dist/features/repeat-circular2d.d.ts +17 -0
- package/lib/dist/features/repeat-circular2d.js +90 -0
- package/lib/dist/features/repeat-linear.d.ts +23 -0
- package/lib/dist/features/repeat-linear.js +52 -0
- package/lib/dist/features/repeat-linear2d.d.ts +17 -0
- package/lib/dist/features/repeat-linear2d.js +114 -0
- package/lib/dist/features/revolve-options.d.ts +6 -0
- package/lib/dist/features/revolve-options.js +1 -0
- package/lib/dist/features/revolve.d.ts +23 -0
- package/lib/dist/features/revolve.js +150 -0
- package/lib/dist/features/rotate.d.ts +16 -0
- package/lib/dist/features/rotate.js +89 -0
- package/lib/dist/features/rotate2d.d.ts +15 -0
- package/lib/dist/features/rotate2d.js +83 -0
- package/lib/dist/features/select.d.ts +26 -0
- package/lib/dist/features/select.js +113 -0
- package/lib/dist/features/shell.d.ts +24 -0
- package/lib/dist/features/shell.js +214 -0
- package/lib/dist/features/simple-extruder.d.ts +22 -0
- package/lib/dist/features/simple-extruder.js +108 -0
- package/lib/dist/features/sphere.d.ts +13 -0
- package/lib/dist/features/sphere.js +33 -0
- package/lib/dist/features/split.d.ts +14 -0
- package/lib/dist/features/split.js +74 -0
- package/lib/dist/features/split2d.d.ts +13 -0
- package/lib/dist/features/split2d.js +69 -0
- package/lib/dist/features/state-scene-object.d.ts +15 -0
- package/lib/dist/features/state-scene-object.js +44 -0
- package/lib/dist/features/state-select.d.ts +21 -0
- package/lib/dist/features/state-select.js +73 -0
- package/lib/dist/features/static-scene-object.d.ts +10 -0
- package/lib/dist/features/static-scene-object.js +21 -0
- package/lib/dist/features/subtract.d.ts +13 -0
- package/lib/dist/features/subtract.js +56 -0
- package/lib/dist/features/sweep.d.ts +22 -0
- package/lib/dist/features/sweep.js +129 -0
- package/lib/dist/features/translate.d.ts +17 -0
- package/lib/dist/features/translate.js +76 -0
- package/lib/dist/features/translate2d.d.ts +16 -0
- package/lib/dist/features/translate2d.js +61 -0
- package/lib/dist/features/trim2d.d.ts +15 -0
- package/lib/dist/features/trim2d.js +154 -0
- package/lib/dist/filters/all-filter.d.ts +8 -0
- package/lib/dist/filters/all-filter.js +12 -0
- package/lib/dist/filters/edge/at-index.d.ts +21 -0
- package/lib/dist/filters/edge/at-index.js +82 -0
- package/lib/dist/filters/edge/circle-filter.d.ts +17 -0
- package/lib/dist/filters/edge/circle-filter.js +34 -0
- package/lib/dist/filters/edge/curve-filter.d.ts +17 -0
- package/lib/dist/filters/edge/curve-filter.js +34 -0
- package/lib/dist/filters/edge/edge-filter.d.ts +22 -0
- package/lib/dist/filters/edge/edge-filter.js +169 -0
- package/lib/dist/filters/edge/line-filter.d.ts +14 -0
- package/lib/dist/filters/edge/line-filter.js +27 -0
- package/lib/dist/filters/edge/on-plane.d.ts +20 -0
- package/lib/dist/filters/edge/on-plane.js +70 -0
- package/lib/dist/filters/edge/parallel.d.ts +18 -0
- package/lib/dist/filters/edge/parallel.js +41 -0
- package/lib/dist/filters/edge/vertical-plane.d.ts +18 -0
- package/lib/dist/filters/edge/vertical-plane.js +41 -0
- package/lib/dist/filters/face/at-index.d.ts +21 -0
- package/lib/dist/filters/face/at-index.js +89 -0
- package/lib/dist/filters/face/circle-filter.d.ts +17 -0
- package/lib/dist/filters/face/circle-filter.js +34 -0
- package/lib/dist/filters/face/cone-filter.d.ts +15 -0
- package/lib/dist/filters/face/cone-filter.js +30 -0
- package/lib/dist/filters/face/cylinder-curve.d.ts +17 -0
- package/lib/dist/filters/face/cylinder-curve.js +34 -0
- package/lib/dist/filters/face/cylinder.d.ts +17 -0
- package/lib/dist/filters/face/cylinder.js +34 -0
- package/lib/dist/filters/face/face-filter.d.ts +21 -0
- package/lib/dist/filters/face/face-filter.js +134 -0
- package/lib/dist/filters/face/on-plane.d.ts +18 -0
- package/lib/dist/filters/face/on-plane.js +41 -0
- package/lib/dist/filters/face/parallel.d.ts +18 -0
- package/lib/dist/filters/face/parallel.js +41 -0
- package/lib/dist/filters/filter-base.d.ts +8 -0
- package/lib/dist/filters/filter-base.js +2 -0
- package/lib/dist/filters/filter-builder-base.d.ts +10 -0
- package/lib/dist/filters/filter-builder-base.js +31 -0
- package/lib/dist/filters/filter.d.ts +8 -0
- package/lib/dist/filters/filter.js +33 -0
- package/lib/dist/filters/index.d.ts +4 -0
- package/lib/dist/filters/index.js +8 -0
- package/lib/dist/filters/near-point-filter.d.ts +11 -0
- package/lib/dist/filters/near-point-filter.js +33 -0
- package/lib/dist/helpers/clone-transform.d.ts +3 -0
- package/lib/dist/helpers/clone-transform.js +46 -0
- package/lib/dist/helpers/cut-helpers.d.ts +13 -0
- package/lib/dist/helpers/cut-helpers.js +79 -0
- package/lib/dist/helpers/math-helpers.d.ts +2 -0
- package/lib/dist/helpers/math-helpers.js +6 -0
- package/lib/dist/helpers/normalize.d.ts +12 -0
- package/lib/dist/helpers/normalize.js +118 -0
- package/lib/dist/helpers/resolve-filters.d.ts +6 -0
- package/lib/dist/helpers/resolve-filters.js +25 -0
- package/lib/dist/helpers/resolve.d.ts +8 -0
- package/lib/dist/helpers/resolve.js +45 -0
- package/lib/dist/helpers/scene-helpers.d.ts +17 -0
- package/lib/dist/helpers/scene-helpers.js +67 -0
- package/lib/dist/helpers/types.d.ts +27 -0
- package/lib/dist/helpers/types.js +1 -0
- package/lib/dist/index.d.ts +37 -0
- package/lib/dist/index.js +75 -0
- package/lib/dist/io/file-export.d.ts +30 -0
- package/lib/dist/io/file-export.js +45 -0
- package/lib/dist/io/file-import.d.ts +8 -0
- package/lib/dist/io/file-import.js +81 -0
- package/lib/dist/load.d.ts +1 -0
- package/lib/dist/load.js +1 -0
- package/lib/dist/math/axis.d.ts +72 -0
- package/lib/dist/math/axis.js +157 -0
- package/lib/dist/math/axis.test.d.ts +1 -0
- package/lib/dist/math/axis.test.js +287 -0
- package/lib/dist/math/convert.d.ts +2 -0
- package/lib/dist/math/convert.js +1 -0
- package/lib/dist/math/coordinate-system.d.ts +43 -0
- package/lib/dist/math/coordinate-system.js +140 -0
- package/lib/dist/math/coordinate-system.test.d.ts +1 -0
- package/lib/dist/math/coordinate-system.test.js +308 -0
- package/lib/dist/math/index.d.ts +8 -0
- package/lib/dist/math/index.js +8 -0
- package/lib/dist/math/matrix4.d.ts +53 -0
- package/lib/dist/math/matrix4.js +336 -0
- package/lib/dist/math/matrix4.test.d.ts +1 -0
- package/lib/dist/math/matrix4.test.js +357 -0
- package/lib/dist/math/plane.d.ts +60 -0
- package/lib/dist/math/plane.js +243 -0
- package/lib/dist/math/plane.test.d.ts +1 -0
- package/lib/dist/math/plane.test.js +398 -0
- package/lib/dist/math/point.d.ts +73 -0
- package/lib/dist/math/point.js +227 -0
- package/lib/dist/math/point.test.d.ts +1 -0
- package/lib/dist/math/point.test.js +385 -0
- package/lib/dist/math/quaternion.d.ts +37 -0
- package/lib/dist/math/quaternion.js +234 -0
- package/lib/dist/math/quaternion.test.d.ts +1 -0
- package/lib/dist/math/quaternion.test.js +278 -0
- package/lib/dist/math/vector3d.d.ts +43 -0
- package/lib/dist/math/vector3d.js +143 -0
- package/lib/dist/math/vector3d.test.d.ts +1 -0
- package/lib/dist/math/vector3d.test.js +276 -0
- package/lib/dist/oc/boolean-ops.d.ts +36 -0
- package/lib/dist/oc/boolean-ops.js +337 -0
- package/lib/dist/oc/constraint-resolver.d.ts +7 -0
- package/lib/dist/oc/constraint-resolver.js +31 -0
- package/lib/dist/oc/constraints/constraint-helpers.d.ts +33 -0
- package/lib/dist/oc/constraints/constraint-helpers.js +252 -0
- package/lib/dist/oc/constraints/constraint-solver-adaptor.d.ts +22 -0
- package/lib/dist/oc/constraints/constraint-solver-adaptor.js +62 -0
- package/lib/dist/oc/constraints/constraint-solver.d.ts +18 -0
- package/lib/dist/oc/constraints/constraint-solver.js +2 -0
- package/lib/dist/oc/constraints/create-solver.d.ts +2 -0
- package/lib/dist/oc/constraints/create-solver.js +6 -0
- package/lib/dist/oc/constraints/curve/curve-constraint-solver.d.ts +13 -0
- package/lib/dist/oc/constraints/curve/curve-constraint-solver.js +18 -0
- package/lib/dist/oc/constraints/curve/tangent-circle-solver.d.ts +16 -0
- package/lib/dist/oc/constraints/curve/tangent-circle-solver.js +112 -0
- package/lib/dist/oc/constraints/curve/tangent-line-solver.d.ts +19 -0
- package/lib/dist/oc/constraints/curve/tangent-line-solver.js +83 -0
- package/lib/dist/oc/constraints/curve-constraint-solver.d.ts +1 -0
- package/lib/dist/oc/constraints/curve-constraint-solver.js +2 -0
- package/lib/dist/oc/constraints/geometric/geometric-constraint-solver.d.ts +12 -0
- package/lib/dist/oc/constraints/geometric/geometric-constraint-solver.js +17 -0
- package/lib/dist/oc/constraints/geometric/tangent-circle-solver.d.ts +21 -0
- package/lib/dist/oc/constraints/geometric/tangent-circle-solver.js +220 -0
- package/lib/dist/oc/constraints/geometric/tangent-line-solver.d.ts +19 -0
- package/lib/dist/oc/constraints/geometric/tangent-line-solver.js +92 -0
- package/lib/dist/oc/constraints/geometric-constraint-solver.d.ts +1 -0
- package/lib/dist/oc/constraints/geometric-constraint-solver.js +5 -0
- package/lib/dist/oc/convert.d.ts +42 -0
- package/lib/dist/oc/convert.js +231 -0
- package/lib/dist/oc/edge-ops.d.ts +37 -0
- package/lib/dist/oc/edge-ops.js +306 -0
- package/lib/dist/oc/edge-props.d.ts +11 -0
- package/lib/dist/oc/edge-props.js +45 -0
- package/lib/dist/oc/edge-query.d.ts +44 -0
- package/lib/dist/oc/edge-query.js +235 -0
- package/lib/dist/oc/explorer.d.ts +34 -0
- package/lib/dist/oc/explorer.js +179 -0
- package/lib/dist/oc/extrude-ops.d.ts +22 -0
- package/lib/dist/oc/extrude-ops.js +149 -0
- package/lib/dist/oc/face-maker.d.ts +14 -0
- package/lib/dist/oc/face-maker.js +191 -0
- package/lib/dist/oc/face-maker2.d.ts +10 -0
- package/lib/dist/oc/face-maker2.js +139 -0
- package/lib/dist/oc/face-ops.d.ts +28 -0
- package/lib/dist/oc/face-ops.js +252 -0
- package/lib/dist/oc/face-props.d.ts +12 -0
- package/lib/dist/oc/face-props.js +81 -0
- package/lib/dist/oc/face-query.d.ts +35 -0
- package/lib/dist/oc/face-query.js +341 -0
- package/lib/dist/oc/fillet-ops.d.ts +13 -0
- package/lib/dist/oc/fillet-ops.js +153 -0
- package/lib/dist/oc/geometry.d.ts +22 -0
- package/lib/dist/oc/geometry.js +231 -0
- package/lib/dist/oc/hit-test.d.ts +11 -0
- package/lib/dist/oc/hit-test.js +85 -0
- package/lib/dist/oc/index.d.ts +24 -0
- package/lib/dist/oc/index.js +21 -0
- package/lib/dist/oc/init.d.ts +3 -0
- package/lib/dist/oc/init.js +17 -0
- package/lib/dist/oc/intersection.d.ts +10 -0
- package/lib/dist/oc/intersection.js +107 -0
- package/lib/dist/oc/io.d.ts +49 -0
- package/lib/dist/oc/io.js +417 -0
- package/lib/dist/oc/loft-ops.d.ts +5 -0
- package/lib/dist/oc/loft-ops.js +26 -0
- package/lib/dist/oc/measure.d.ts +21 -0
- package/lib/dist/oc/measure.js +256 -0
- package/lib/dist/oc/mesh.d.ts +15 -0
- package/lib/dist/oc/mesh.js +110 -0
- package/lib/dist/oc/primitives.d.ts +5 -0
- package/lib/dist/oc/primitives.js +19 -0
- package/lib/dist/oc/props.d.ts +13 -0
- package/lib/dist/oc/props.js +18 -0
- package/lib/dist/oc/shape-ops.d.ts +34 -0
- package/lib/dist/oc/shape-ops.js +208 -0
- package/lib/dist/oc/shell-ops.d.ts +5 -0
- package/lib/dist/oc/shell-ops.js +25 -0
- package/lib/dist/oc/sweep-ops.d.ts +12 -0
- package/lib/dist/oc/sweep-ops.js +39 -0
- package/lib/dist/oc/tangent-circle-solver.d.ts +17 -0
- package/lib/dist/oc/tangent-circle-solver.js +72 -0
- package/lib/dist/oc/tangent-line-solver.d.ts +17 -0
- package/lib/dist/oc/tangent-line-solver.js +83 -0
- package/lib/dist/oc/tangent-solver.d.ts +14 -0
- package/lib/dist/oc/tangent-solver.js +199 -0
- package/lib/dist/oc/vertex-ops.d.ts +11 -0
- package/lib/dist/oc/vertex-ops.js +39 -0
- package/lib/dist/oc/wire-ops.d.ts +21 -0
- package/lib/dist/oc/wire-ops.js +176 -0
- package/lib/dist/rendering/builder-context.d.ts +16 -0
- package/lib/dist/rendering/builder-context.js +63 -0
- package/lib/dist/rendering/mesh-builder.d.ts +5 -0
- package/lib/dist/rendering/mesh-builder.js +43 -0
- package/lib/dist/rendering/render-edge.d.ts +3 -0
- package/lib/dist/rendering/render-edge.js +4 -0
- package/lib/dist/rendering/render-face.d.ts +2 -0
- package/lib/dist/rendering/render-face.js +5 -0
- package/lib/dist/rendering/render-solid.d.ts +3 -0
- package/lib/dist/rendering/render-solid.js +61 -0
- package/lib/dist/rendering/render-wire.d.ts +6 -0
- package/lib/dist/rendering/render-wire.js +27 -0
- package/lib/dist/rendering/render.d.ts +3 -0
- package/lib/dist/rendering/render.js +183 -0
- package/lib/dist/rendering/scene-compare.d.ts +4 -0
- package/lib/dist/rendering/scene-compare.js +41 -0
- package/lib/dist/rendering/scene.d.ts +81 -0
- package/lib/dist/rendering/scene.js +206 -0
- package/lib/dist/scene-manager.d.ts +32 -0
- package/lib/dist/scene-manager.js +120 -0
- package/lib/dist/tests/extrude.test.d.ts +1 -0
- package/lib/dist/tests/extrude.test.js +48 -0
- package/lib/dist/tests/features/2d/arc.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/arc.test.js +40 -0
- package/lib/dist/tests/features/2d/circle.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/circle.test.js +64 -0
- package/lib/dist/tests/features/2d/constrained.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/constrained.test.js +202 -0
- package/lib/dist/tests/features/2d/line.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/line.test.js +86 -0
- package/lib/dist/tests/features/2d/move.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/move.test.js +74 -0
- package/lib/dist/tests/features/2d/offset.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/offset.test.js +111 -0
- package/lib/dist/tests/features/2d/pmove.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/pmove.test.js +43 -0
- package/lib/dist/tests/features/2d/polygon.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/polygon.test.js +150 -0
- package/lib/dist/tests/features/2d/project.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/project.test.js +22 -0
- package/lib/dist/tests/features/2d/rect.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/rect.test.js +66 -0
- package/lib/dist/tests/features/2d/rmove.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/rmove.test.js +29 -0
- package/lib/dist/tests/features/2d/slot-from-edge.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/slot-from-edge.test.js +35 -0
- package/lib/dist/tests/features/2d/slot.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/slot.test.js +44 -0
- package/lib/dist/tests/features/2d/tarc.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/tarc.test.js +237 -0
- package/lib/dist/tests/features/2d/tcircle.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/tcircle.test.js +28 -0
- package/lib/dist/tests/features/2d/tline.test.d.ts +1 -0
- package/lib/dist/tests/features/2d/tline.test.js +34 -0
- package/lib/dist/tests/features/axis.test.d.ts +1 -0
- package/lib/dist/tests/features/axis.test.js +143 -0
- package/lib/dist/tests/features/chamfer.test.d.ts +1 -0
- package/lib/dist/tests/features/chamfer.test.js +159 -0
- package/lib/dist/tests/features/color.test.d.ts +1 -0
- package/lib/dist/tests/features/color.test.js +96 -0
- package/lib/dist/tests/features/common2d.test.d.ts +1 -0
- package/lib/dist/tests/features/common2d.test.js +113 -0
- package/lib/dist/tests/features/copy-circular-2d.test.d.ts +1 -0
- package/lib/dist/tests/features/copy-circular-2d.test.js +40 -0
- package/lib/dist/tests/features/copy-circular.test.d.ts +1 -0
- package/lib/dist/tests/features/copy-circular.test.js +44 -0
- package/lib/dist/tests/features/copy-linear-2d.test.d.ts +1 -0
- package/lib/dist/tests/features/copy-linear-2d.test.js +35 -0
- package/lib/dist/tests/features/copy-linear.test.d.ts +1 -0
- package/lib/dist/tests/features/copy-linear.test.js +95 -0
- package/lib/dist/tests/features/copy.test.d.ts +1 -0
- package/lib/dist/tests/features/copy.test.js +158 -0
- package/lib/dist/tests/features/cut-symmetric.test.d.ts +1 -0
- package/lib/dist/tests/features/cut-symmetric.test.js +120 -0
- package/lib/dist/tests/features/cut-two-distances.test.d.ts +1 -0
- package/lib/dist/tests/features/cut-two-distances.test.js +125 -0
- package/lib/dist/tests/features/cut.test.d.ts +1 -0
- package/lib/dist/tests/features/cut.test.js +311 -0
- package/lib/dist/tests/features/dispose.test.d.ts +1 -0
- package/lib/dist/tests/features/dispose.test.js +189 -0
- package/lib/dist/tests/features/extrude-symmetric.test.d.ts +1 -0
- package/lib/dist/tests/features/extrude-symmetric.test.js +240 -0
- package/lib/dist/tests/features/extrude-to-face.test.d.ts +1 -0
- package/lib/dist/tests/features/extrude-to-face.test.js +256 -0
- package/lib/dist/tests/features/extrude-two-distances.test.d.ts +1 -0
- package/lib/dist/tests/features/extrude-two-distances.test.js +264 -0
- package/lib/dist/tests/features/extrude.test.d.ts +1 -0
- package/lib/dist/tests/features/extrude.test.js +640 -0
- package/lib/dist/tests/features/fillet.test.d.ts +1 -0
- package/lib/dist/tests/features/fillet.test.js +163 -0
- package/lib/dist/tests/features/fillet2d.test.d.ts +1 -0
- package/lib/dist/tests/features/fillet2d.test.js +69 -0
- package/lib/dist/tests/features/fuse.test.d.ts +1 -0
- package/lib/dist/tests/features/fuse.test.js +122 -0
- package/lib/dist/tests/features/fuse2d.test.d.ts +1 -0
- package/lib/dist/tests/features/fuse2d.test.js +80 -0
- package/lib/dist/tests/features/loft.test.d.ts +1 -0
- package/lib/dist/tests/features/loft.test.js +283 -0
- package/lib/dist/tests/features/mirror.test.d.ts +1 -0
- package/lib/dist/tests/features/mirror.test.js +112 -0
- package/lib/dist/tests/features/mirror2d.test.d.ts +1 -0
- package/lib/dist/tests/features/mirror2d.test.js +75 -0
- package/lib/dist/tests/features/part-pick.test.d.ts +1 -0
- package/lib/dist/tests/features/part-pick.test.js +73 -0
- package/lib/dist/tests/features/part-repeat.test.d.ts +1 -0
- package/lib/dist/tests/features/part-repeat.test.js +109 -0
- package/lib/dist/tests/features/part.test.d.ts +1 -0
- package/lib/dist/tests/features/part.test.js +356 -0
- package/lib/dist/tests/features/plane.test.d.ts +1 -0
- package/lib/dist/tests/features/plane.test.js +154 -0
- package/lib/dist/tests/features/repeat-circular.test.d.ts +1 -0
- package/lib/dist/tests/features/repeat-circular.test.js +114 -0
- package/lib/dist/tests/features/repeat-linear.test.d.ts +1 -0
- package/lib/dist/tests/features/repeat-linear.test.js +138 -0
- package/lib/dist/tests/features/revolve.test.d.ts +1 -0
- package/lib/dist/tests/features/revolve.test.js +205 -0
- package/lib/dist/tests/features/rotate.test.d.ts +1 -0
- package/lib/dist/tests/features/rotate.test.js +133 -0
- package/lib/dist/tests/features/rotate2d.test.d.ts +1 -0
- package/lib/dist/tests/features/rotate2d.test.js +74 -0
- package/lib/dist/tests/features/select.test.d.ts +1 -0
- package/lib/dist/tests/features/select.test.js +337 -0
- package/lib/dist/tests/features/shell.test.d.ts +1 -0
- package/lib/dist/tests/features/shell.test.js +230 -0
- package/lib/dist/tests/features/subtract.test.d.ts +1 -0
- package/lib/dist/tests/features/subtract.test.js +103 -0
- package/lib/dist/tests/features/sweep.test.d.ts +1 -0
- package/lib/dist/tests/features/sweep.test.js +312 -0
- package/lib/dist/tests/features/translate.test.d.ts +1 -0
- package/lib/dist/tests/features/translate.test.js +117 -0
- package/lib/dist/tests/global-setup.d.ts +1 -0
- package/lib/dist/tests/global-setup.js +5 -0
- package/lib/dist/tests/math/axis.test.d.ts +1 -0
- package/lib/dist/tests/math/axis.test.js +287 -0
- package/lib/dist/tests/math/coordinate-system.test.d.ts +1 -0
- package/lib/dist/tests/math/coordinate-system.test.js +308 -0
- package/lib/dist/tests/math/matrix4.test.d.ts +1 -0
- package/lib/dist/tests/math/matrix4.test.js +357 -0
- package/lib/dist/tests/math/plane.test.d.ts +1 -0
- package/lib/dist/tests/math/plane.test.js +398 -0
- package/lib/dist/tests/math/point.test.d.ts +1 -0
- package/lib/dist/tests/math/point.test.js +385 -0
- package/lib/dist/tests/math/quaternion.test.d.ts +1 -0
- package/lib/dist/tests/math/quaternion.test.js +278 -0
- package/lib/dist/tests/math/vector3d.test.d.ts +1 -0
- package/lib/dist/tests/math/vector3d.test.js +276 -0
- package/lib/dist/tests/setup.d.ts +5 -0
- package/lib/dist/tests/setup.js +14 -0
- package/lib/dist/tests/utils.d.ts +12 -0
- package/lib/dist/tests/utils.js +36 -0
- package/lib/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +83 -0
- package/server/dist/fluidcad-server.d.ts +32 -0
- package/server/dist/fluidcad-server.js +150 -0
- package/server/dist/index.d.ts +1 -0
- package/server/dist/index.js +290 -0
- package/server/dist/routes/actions.d.ts +3 -0
- package/server/dist/routes/actions.js +100 -0
- package/server/dist/routes/export.d.ts +3 -0
- package/server/dist/routes/export.js +55 -0
- package/server/dist/routes/properties.d.ts +3 -0
- package/server/dist/routes/properties.js +46 -0
- package/server/dist/routes/screenshot.d.ts +2 -0
- package/server/dist/routes/screenshot.js +76 -0
- package/server/dist/vite-manager.d.ts +10 -0
- package/server/dist/vite-manager.js +64 -0
- package/server/dist/ws-protocol.d.ts +138 -0
- package/server/dist/ws-protocol.js +4 -0
- package/ui/dist/assets/index-DXW2yo2v.css +2 -0
- package/ui/dist/assets/index-qqJ_mWi7.js +4732 -0
- package/ui/dist/icons/aline.png +0 -0
- package/ui/dist/icons/arc.png +0 -0
- package/ui/dist/icons/aslot.png +0 -0
- package/ui/dist/icons/axis.png +0 -0
- package/ui/dist/icons/box.png +0 -0
- package/ui/dist/icons/chamfer.png +0 -0
- package/ui/dist/icons/circle.png +0 -0
- package/ui/dist/icons/color.png +0 -0
- package/ui/dist/icons/common.png +0 -0
- package/ui/dist/icons/cone.png +0 -0
- package/ui/dist/icons/connect.png +0 -0
- package/ui/dist/icons/copy-circular.png +0 -0
- package/ui/dist/icons/copy-circular2d.png +0 -0
- package/ui/dist/icons/copy-linear.png +0 -0
- package/ui/dist/icons/copy-linear2d.png +0 -0
- package/ui/dist/icons/cut.png +0 -0
- package/ui/dist/icons/cylinder.png +0 -0
- package/ui/dist/icons/edge.png +0 -0
- package/ui/dist/icons/extrude.png +0 -0
- package/ui/dist/icons/fillet.png +0 -0
- package/ui/dist/icons/fillet2d.png +0 -0
- package/ui/dist/icons/fuse.png +0 -0
- package/ui/dist/icons/hline.png +0 -0
- package/ui/dist/icons/hole.png +0 -0
- package/ui/dist/icons/line.png +0 -0
- package/ui/dist/icons/load.png +0 -0
- package/ui/dist/icons/mirror.png +0 -0
- package/ui/dist/icons/mirror2d.png +0 -0
- package/ui/dist/icons/move.png +0 -0
- package/ui/dist/icons/plane.png +0 -0
- package/ui/dist/icons/polygon.png +0 -0
- package/ui/dist/icons/rect.png +0 -0
- package/ui/dist/icons/revolve.png +0 -0
- package/ui/dist/icons/rotate.png +0 -0
- package/ui/dist/icons/rotate2d.png +0 -0
- package/ui/dist/icons/select.png +0 -0
- package/ui/dist/icons/shell.png +0 -0
- package/ui/dist/icons/sketch.png +0 -0
- package/ui/dist/icons/slot.png +0 -0
- package/ui/dist/icons/solid.png +0 -0
- package/ui/dist/icons/sphere.png +0 -0
- package/ui/dist/icons/subtract.png +0 -0
- package/ui/dist/icons/tarc.png +0 -0
- package/ui/dist/icons/tline.png +0 -0
- package/ui/dist/icons/translate.png +0 -0
- package/ui/dist/icons/vline.png +0 -0
- package/ui/dist/icons/wire.png +0 -0
- package/ui/dist/index.html +13 -0
- package/ui/dist/logo.png +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SceneObject } from "../common/scene-object.js";
|
|
2
|
+
import { registerBuilder } from "../index.js";
|
|
3
|
+
import { Extrude } from "../features/extrude.js";
|
|
4
|
+
import { ExtrudeTwoDistances } from "../features/extrude-two-distances.js";
|
|
5
|
+
import { ExtrudeToFace } from "../features/extrude-to-face.js";
|
|
6
|
+
function isExtrudable(obj) {
|
|
7
|
+
return obj instanceof SceneObject && obj.isExtrudable();
|
|
8
|
+
}
|
|
9
|
+
function build(context) {
|
|
10
|
+
function doExtrude(params, extrudable) {
|
|
11
|
+
const defaultDistance = 25;
|
|
12
|
+
if (params.length === 0) {
|
|
13
|
+
return new Extrude(defaultDistance, extrudable);
|
|
14
|
+
}
|
|
15
|
+
if (params.length === 1) {
|
|
16
|
+
if (typeof params[0] === 'number') {
|
|
17
|
+
return new Extrude(params[0], extrudable);
|
|
18
|
+
}
|
|
19
|
+
else if (params[0] === 'first-face') {
|
|
20
|
+
return new ExtrudeToFace('first-face', extrudable);
|
|
21
|
+
}
|
|
22
|
+
else if (params[0] === 'last-face') {
|
|
23
|
+
return new ExtrudeToFace('last-face', extrudable);
|
|
24
|
+
}
|
|
25
|
+
else if (params[0] instanceof SceneObject) {
|
|
26
|
+
context.addSceneObject(params[0]);
|
|
27
|
+
return new ExtrudeToFace(params[0], extrudable);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
throw new Error("Invalid parameter for extrude function.");
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else if (params.length === 2) {
|
|
34
|
+
if (typeof params[0] === 'number' && typeof params[1] === 'number') {
|
|
35
|
+
return new ExtrudeTwoDistances(params[0], params[1], extrudable);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
throw new Error("Invalid parameters for extrude function.");
|
|
39
|
+
}
|
|
40
|
+
//@ts-ignore
|
|
41
|
+
return function extrude() {
|
|
42
|
+
const args = [...arguments];
|
|
43
|
+
let extrudable;
|
|
44
|
+
if (args.length > 0 && isExtrudable(args[args.length - 1])) {
|
|
45
|
+
extrudable = args.pop();
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
extrudable = context.getLastExtrudable() || undefined;
|
|
49
|
+
}
|
|
50
|
+
const result = doExtrude(args, extrudable);
|
|
51
|
+
context.addSceneObject(result);
|
|
52
|
+
return result;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
export default registerBuilder(build);
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { IGeometry, ISceneObject } from "./interfaces.js";
|
|
2
|
+
interface FilletFunction {
|
|
3
|
+
/**
|
|
4
|
+
* Fillets selected edges with the given radius.
|
|
5
|
+
* @param radius - The fillet radius (defaults to 1)
|
|
6
|
+
*/
|
|
7
|
+
(radius?: number): ISceneObject;
|
|
8
|
+
/**
|
|
9
|
+
* Fillets the given edge selections with the given radius.
|
|
10
|
+
* @param radius - The fillet radius
|
|
11
|
+
* @param sceneObjects - The edge selections to fillet
|
|
12
|
+
*/
|
|
13
|
+
(radius: number, ...sceneObjects: ISceneObject[]): ISceneObject;
|
|
14
|
+
/**
|
|
15
|
+
* [2D] Fillets corners between the given geometries.
|
|
16
|
+
* @param objects - The geometries whose corners to fillet
|
|
17
|
+
*/
|
|
18
|
+
(objects: IGeometry[]): ISceneObject;
|
|
19
|
+
/**
|
|
20
|
+
* [2D] Fillets corners between the given geometries with a radius.
|
|
21
|
+
* @param objects - The geometries whose corners to fillet
|
|
22
|
+
* @param radius - The fillet radius
|
|
23
|
+
*/
|
|
24
|
+
(objects: IGeometry[], radius: number): ISceneObject;
|
|
25
|
+
/**
|
|
26
|
+
* [2D] Fillets corners at the given radius and geometries.
|
|
27
|
+
* @param radius - The fillet radius
|
|
28
|
+
* @param objects - The geometries whose corners to fillet
|
|
29
|
+
*/
|
|
30
|
+
(radius: number, ...objects: IGeometry[]): ISceneObject;
|
|
31
|
+
}
|
|
32
|
+
declare const _default: FilletFunction;
|
|
33
|
+
export default _default;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Fillet } from "../features/fillet.js";
|
|
2
|
+
import { Fillet2D } from "../features/fillet2d.js";
|
|
3
|
+
import { SceneObject } from "../common/scene-object.js";
|
|
4
|
+
import { registerBuilder } from "../index.js";
|
|
5
|
+
function build(context) {
|
|
6
|
+
return function fillet() {
|
|
7
|
+
const activeSketch = context.getActiveSketch();
|
|
8
|
+
if (activeSketch) {
|
|
9
|
+
if (arguments.length === 0) {
|
|
10
|
+
const fillet = new Fillet2D(1);
|
|
11
|
+
context.addSceneObject(fillet);
|
|
12
|
+
return fillet;
|
|
13
|
+
}
|
|
14
|
+
if (arguments.length === 1) {
|
|
15
|
+
if (typeof (arguments[0]) === 'number') {
|
|
16
|
+
const radius = arguments[0];
|
|
17
|
+
const fillet = new Fillet2D(radius);
|
|
18
|
+
context.addSceneObject(fillet);
|
|
19
|
+
return fillet;
|
|
20
|
+
}
|
|
21
|
+
if (Array.isArray(arguments[0])) {
|
|
22
|
+
const objects = arguments[0];
|
|
23
|
+
const fillet = new Fillet2D(1, ...objects);
|
|
24
|
+
context.addSceneObject(fillet);
|
|
25
|
+
return fillet;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
if (arguments.length === 2 && Array.isArray(arguments[0])) {
|
|
29
|
+
const objects = arguments[0];
|
|
30
|
+
const radius = arguments[1] || 1;
|
|
31
|
+
const fillet = new Fillet2D(radius, ...objects);
|
|
32
|
+
context.addSceneObject(fillet);
|
|
33
|
+
return fillet;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
const args = Array.from(arguments);
|
|
38
|
+
const radius = (args.length >= 1 && typeof args[0] === 'number')
|
|
39
|
+
? args[0]
|
|
40
|
+
: 1;
|
|
41
|
+
const selections = args
|
|
42
|
+
.filter(a => a instanceof SceneObject);
|
|
43
|
+
if (selections.length === 0) {
|
|
44
|
+
const lastSelection = context.getLastSelection() || undefined;
|
|
45
|
+
if (lastSelection) {
|
|
46
|
+
selections.push(lastSelection);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
for (const selection of selections) {
|
|
50
|
+
context.addSceneObject(selection);
|
|
51
|
+
}
|
|
52
|
+
const fillet = new Fillet(radius, ...selections);
|
|
53
|
+
context.addSceneObject(fillet);
|
|
54
|
+
return fillet;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
export default registerBuilder(build);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Fuse } from "../features/fuse.js";
|
|
2
|
+
import { Fuse2D } from "../features/fuse2d.js";
|
|
3
|
+
import { ISceneObject } from "./interfaces.js";
|
|
4
|
+
interface FuseFunction {
|
|
5
|
+
/** Fuses all shapes or 2D geometries in the current context. */
|
|
6
|
+
(): Fuse | Fuse2D;
|
|
7
|
+
/**
|
|
8
|
+
* Fuses the given shapes or 2D geometries into one.
|
|
9
|
+
* @param objects - The objects to fuse together
|
|
10
|
+
*/
|
|
11
|
+
(...objects: ISceneObject[]): Fuse | Fuse2D;
|
|
12
|
+
}
|
|
13
|
+
declare const _default: FuseFunction;
|
|
14
|
+
export default _default;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { registerBuilder } from "../index.js";
|
|
2
|
+
import { Fuse } from "../features/fuse.js";
|
|
3
|
+
import { Fuse2D } from "../features/fuse2d.js";
|
|
4
|
+
function build(context) {
|
|
5
|
+
return function fuse(...args) {
|
|
6
|
+
const activeSketch = context.getActiveSketch();
|
|
7
|
+
if (activeSketch) {
|
|
8
|
+
let objects;
|
|
9
|
+
if (args.length > 0) {
|
|
10
|
+
if (args.length === 1 && Array.isArray(args[0])) {
|
|
11
|
+
objects = args[0];
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
objects = args;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
objects = [];
|
|
19
|
+
}
|
|
20
|
+
const fuse2d = new Fuse2D(...objects);
|
|
21
|
+
context.addSceneObject(fuse2d);
|
|
22
|
+
return fuse2d;
|
|
23
|
+
}
|
|
24
|
+
let solids;
|
|
25
|
+
if (args.length === 1 && Array.isArray(args[0])) {
|
|
26
|
+
solids = args[0];
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
solids = args;
|
|
30
|
+
}
|
|
31
|
+
const fuse = new Fuse(...solids);
|
|
32
|
+
context.addSceneObject(fuse);
|
|
33
|
+
return fuse;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export default registerBuilder(build);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type { ISceneObject, IFuseable, IPlane, IAxis, ISelect, IGeometry, IExtrudableGeometry, IRect, ISlot, IPolygon, ITwoObjectsTangentLine, ITangentArcTwoObjects, IExtrude, ICut, ICommon, ISweep, ILoft, IRevolve } from "./interfaces.js";
|
|
2
|
+
export { default as axis } from "./axis.js";
|
|
3
|
+
export { default as plane } from "./plane.js";
|
|
4
|
+
export { default as sketch } from "./sketch.js";
|
|
5
|
+
export { default as fuse } from "./fuse.js";
|
|
6
|
+
export { default as subtract } from "./subtract.js";
|
|
7
|
+
export { default as common } from "./common.js";
|
|
8
|
+
export { default as cut } from "./cut.js";
|
|
9
|
+
export { default as revolve } from "./revolve.js";
|
|
10
|
+
export { default as extrude } from "./extrude.js";
|
|
11
|
+
export { default as sphere } from "./sphere.js";
|
|
12
|
+
export { default as cylinder } from "./cylinder.js";
|
|
13
|
+
export { default as select } from "./select.js";
|
|
14
|
+
export { default as shell } from "./shell.js";
|
|
15
|
+
export { default as chamfer } from "./chamfer.js";
|
|
16
|
+
export { default as fillet } from "./fillet.js";
|
|
17
|
+
export { default as translate } from "./translate.js";
|
|
18
|
+
export { default as rotate } from "./rotate.js";
|
|
19
|
+
export { default as mirror } from "./mirror.js";
|
|
20
|
+
export { default as copy } from "./copy.js";
|
|
21
|
+
export { default as repeat } from "./repeat.js";
|
|
22
|
+
export { default as load } from "./load.js";
|
|
23
|
+
export { default as loft } from "./loft.js";
|
|
24
|
+
export { default as sweep } from "./sweep.js";
|
|
25
|
+
export { default as color } from "./color.js";
|
|
26
|
+
export { default as remove } from "./remove.js";
|
|
27
|
+
export { default as split } from "./split.js";
|
|
28
|
+
export { default as trim } from "./trim.js";
|
|
29
|
+
export { default as part } from "./part.js";
|
|
30
|
+
export { default as use } from "./use.js";
|
|
31
|
+
export type { PartHandle } from "./part.js";
|
|
32
|
+
export * from "./2d/index.js";
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export { default as axis } from "./axis.js";
|
|
2
|
+
export { default as plane } from "./plane.js";
|
|
3
|
+
export { default as sketch } from "./sketch.js";
|
|
4
|
+
export { default as fuse } from "./fuse.js";
|
|
5
|
+
export { default as subtract } from "./subtract.js";
|
|
6
|
+
export { default as common } from "./common.js";
|
|
7
|
+
export { default as cut } from "./cut.js";
|
|
8
|
+
export { default as revolve } from "./revolve.js";
|
|
9
|
+
export { default as extrude } from "./extrude.js";
|
|
10
|
+
export { default as sphere } from "./sphere.js";
|
|
11
|
+
export { default as cylinder } from "./cylinder.js";
|
|
12
|
+
export { default as select } from "./select.js";
|
|
13
|
+
export { default as shell } from "./shell.js";
|
|
14
|
+
export { default as chamfer } from "./chamfer.js";
|
|
15
|
+
export { default as fillet } from "./fillet.js";
|
|
16
|
+
export { default as translate } from "./translate.js";
|
|
17
|
+
export { default as rotate } from "./rotate.js";
|
|
18
|
+
export { default as mirror } from "./mirror.js";
|
|
19
|
+
export { default as copy } from "./copy.js";
|
|
20
|
+
export { default as repeat } from "./repeat.js";
|
|
21
|
+
export { default as load } from "./load.js";
|
|
22
|
+
export { default as loft } from "./loft.js";
|
|
23
|
+
export { default as sweep } from "./sweep.js";
|
|
24
|
+
export { default as color } from "./color.js";
|
|
25
|
+
export { default as remove } from "./remove.js";
|
|
26
|
+
export { default as split } from "./split.js";
|
|
27
|
+
export { default as trim } from "./trim.js";
|
|
28
|
+
export { default as part } from "./part.js";
|
|
29
|
+
export { default as use } from "./use.js";
|
|
30
|
+
export * from "./2d/index.js";
|
|
@@ -0,0 +1,411 @@
|
|
|
1
|
+
import { LazyVertex } from "../features/lazy-vertex.js";
|
|
2
|
+
import { Point2DLike } from "../math/point.js";
|
|
3
|
+
import { FaceFilterBuilder } from "../filters/face/face-filter.js";
|
|
4
|
+
import { EdgeFilterBuilder } from "../filters/edge/edge-filter.js";
|
|
5
|
+
export interface ISceneObject {
|
|
6
|
+
/**
|
|
7
|
+
* Sets a custom display name for this object, overriding the default type-based name.
|
|
8
|
+
* @param value - The display name to assign.
|
|
9
|
+
*/
|
|
10
|
+
name(value: string): this;
|
|
11
|
+
/**
|
|
12
|
+
* Marks this object as construction geometry. Guide objects are excluded from
|
|
13
|
+
* final geometry output unless explicitly included.
|
|
14
|
+
*/
|
|
15
|
+
guide(): this;
|
|
16
|
+
}
|
|
17
|
+
export interface IFuseable extends ISceneObject {
|
|
18
|
+
/**
|
|
19
|
+
* Additive boolean operation — fuses the result with existing shapes.
|
|
20
|
+
* When called with no arguments, fuses with all intersecting scene objects.
|
|
21
|
+
* When called with specific objects, fuses only with those objects.
|
|
22
|
+
* @param objects - Optional target objects to fuse with.
|
|
23
|
+
*/
|
|
24
|
+
add(...objects: ISceneObject[]): this;
|
|
25
|
+
/**
|
|
26
|
+
* No boolean operation — keeps the result as a standalone shape,
|
|
27
|
+
* separate from all other scene objects.
|
|
28
|
+
*/
|
|
29
|
+
'new'(): this;
|
|
30
|
+
/**
|
|
31
|
+
* Subtractive boolean operation — cuts the result from existing shapes.
|
|
32
|
+
* When called with no arguments, cuts from all intersecting scene objects.
|
|
33
|
+
* When called with specific objects, cuts only from those objects.
|
|
34
|
+
* @param objects - Optional target objects to cut from.
|
|
35
|
+
*/
|
|
36
|
+
remove(...objects: ISceneObject[]): this;
|
|
37
|
+
}
|
|
38
|
+
export interface IPlane extends ISceneObject {
|
|
39
|
+
}
|
|
40
|
+
export interface IAxis extends ISceneObject {
|
|
41
|
+
}
|
|
42
|
+
export interface ISelect extends ISceneObject {
|
|
43
|
+
}
|
|
44
|
+
export interface IGeometry extends ISceneObject {
|
|
45
|
+
/**
|
|
46
|
+
* Returns a lazy-evaluated vertex at the start point of this geometry element.
|
|
47
|
+
*/
|
|
48
|
+
start(): LazyVertex;
|
|
49
|
+
/**
|
|
50
|
+
* Returns a lazy-evaluated vertex at the end point of this geometry element.
|
|
51
|
+
*/
|
|
52
|
+
end(): LazyVertex;
|
|
53
|
+
/**
|
|
54
|
+
* Returns a lazy-evaluated vertex representing the tangent direction at the end
|
|
55
|
+
* of this geometry. Used to determine the direction of subsequent geometry elements.
|
|
56
|
+
*/
|
|
57
|
+
tangent(): LazyVertex;
|
|
58
|
+
}
|
|
59
|
+
export interface IExtrudableGeometry extends IGeometry {
|
|
60
|
+
}
|
|
61
|
+
export interface IRect extends IExtrudableGeometry {
|
|
62
|
+
/**
|
|
63
|
+
* Sets corner radii for a rounded rectangle. Accepts 1–4 values
|
|
64
|
+
* in order: `[bottomLeft, bottomRight, topRight, topLeft]`.
|
|
65
|
+
* A single value applies to all corners.
|
|
66
|
+
* @param r - One or more radius values.
|
|
67
|
+
*/
|
|
68
|
+
radius(...r: number[]): this;
|
|
69
|
+
/**
|
|
70
|
+
* Controls how the rectangle is positioned relative to the current point.
|
|
71
|
+
* @param value - `true` centers on both axes, `'horizontal'` or `'vertical'` centers
|
|
72
|
+
* on one axis, `false` (default) keeps the current point as the origin corner.
|
|
73
|
+
*/
|
|
74
|
+
center(value?: boolean | 'horizontal' | 'vertical'): this;
|
|
75
|
+
/**
|
|
76
|
+
* Returns the top straight edge of the rectangle.
|
|
77
|
+
*/
|
|
78
|
+
topEdge(): ISceneObject;
|
|
79
|
+
/**
|
|
80
|
+
* Returns the bottom straight edge of the rectangle.
|
|
81
|
+
*/
|
|
82
|
+
bottomEdge(): ISceneObject;
|
|
83
|
+
/**
|
|
84
|
+
* Returns the left straight edge of the rectangle.
|
|
85
|
+
*/
|
|
86
|
+
leftEdge(): ISceneObject;
|
|
87
|
+
/**
|
|
88
|
+
* Returns the right straight edge of the rectangle.
|
|
89
|
+
*/
|
|
90
|
+
rightEdge(): ISceneObject;
|
|
91
|
+
/**
|
|
92
|
+
* Returns the arc edge at the top-left corner. Only present when a radius is applied.
|
|
93
|
+
*/
|
|
94
|
+
topLeftArcEdge(): ISceneObject;
|
|
95
|
+
/**
|
|
96
|
+
* Returns the arc edge at the top-right corner. Only present when a radius is applied.
|
|
97
|
+
*/
|
|
98
|
+
topRightArcEdge(): ISceneObject;
|
|
99
|
+
/**
|
|
100
|
+
* Returns the arc edge at the bottom-left corner. Only present when a radius is applied.
|
|
101
|
+
*/
|
|
102
|
+
bottomLeftArcEdge(): ISceneObject;
|
|
103
|
+
/**
|
|
104
|
+
* Returns the arc edge at the bottom-right corner. Only present when a radius is applied.
|
|
105
|
+
*/
|
|
106
|
+
bottomRightArcEdge(): ISceneObject;
|
|
107
|
+
/**
|
|
108
|
+
* Returns a lazy-evaluated vertex at the top-left corner.
|
|
109
|
+
*/
|
|
110
|
+
topLeft(): LazyVertex;
|
|
111
|
+
/**
|
|
112
|
+
* Returns a lazy-evaluated vertex at the top-right corner.
|
|
113
|
+
*/
|
|
114
|
+
topRight(): LazyVertex;
|
|
115
|
+
/**
|
|
116
|
+
* Returns a lazy-evaluated vertex at the bottom-left corner.
|
|
117
|
+
*/
|
|
118
|
+
bottomLeft(): LazyVertex;
|
|
119
|
+
/**
|
|
120
|
+
* Returns a lazy-evaluated vertex at the bottom-right corner.
|
|
121
|
+
*/
|
|
122
|
+
bottomRight(): LazyVertex;
|
|
123
|
+
}
|
|
124
|
+
export interface ISlot extends IExtrudableGeometry {
|
|
125
|
+
/**
|
|
126
|
+
* Controls whether the slot is centered on the current position.
|
|
127
|
+
* When `true`, the slot is offset backward by half its length.
|
|
128
|
+
* @param value - `true` to center, `false` (default) to start from the current position.
|
|
129
|
+
*/
|
|
130
|
+
center(value?: boolean): this;
|
|
131
|
+
/**
|
|
132
|
+
* Sets the rotation angle of the slot's primary axis.
|
|
133
|
+
* @param angle - Rotation in degrees.
|
|
134
|
+
*/
|
|
135
|
+
rotate(angle: number): this;
|
|
136
|
+
}
|
|
137
|
+
export interface IPolygon extends IExtrudableGeometry {
|
|
138
|
+
/**
|
|
139
|
+
* Returns a specific edge of the polygon by index.
|
|
140
|
+
* @param index - Zero-based edge index.
|
|
141
|
+
*/
|
|
142
|
+
getEdge(index: number): ISceneObject;
|
|
143
|
+
/**
|
|
144
|
+
* Returns a lazy-evaluated vertex at a specific corner of the polygon.
|
|
145
|
+
* @param index - Zero-based vertex index.
|
|
146
|
+
*/
|
|
147
|
+
getVertex(index: number): LazyVertex;
|
|
148
|
+
}
|
|
149
|
+
export interface ITwoObjectsTangentLine extends IGeometry {
|
|
150
|
+
/**
|
|
151
|
+
* Returns the start vertex of the tangent line.
|
|
152
|
+
* @param index - Solution index when multiple tangent lines exist (defaults to 0).
|
|
153
|
+
*/
|
|
154
|
+
start(index?: number): LazyVertex;
|
|
155
|
+
/**
|
|
156
|
+
* Returns the end vertex of the tangent line.
|
|
157
|
+
* @param index - Solution index when multiple tangent lines exist (defaults to 0).
|
|
158
|
+
*/
|
|
159
|
+
end(index?: number): LazyVertex;
|
|
160
|
+
}
|
|
161
|
+
export interface ITangentArcTwoObjects extends IGeometry {
|
|
162
|
+
/**
|
|
163
|
+
* Returns the start vertex of the tangent arc.
|
|
164
|
+
* @param index - Solution index when multiple tangent arcs exist (defaults to 0).
|
|
165
|
+
*/
|
|
166
|
+
start(index?: number): LazyVertex;
|
|
167
|
+
/**
|
|
168
|
+
* Returns the end vertex of the tangent arc.
|
|
169
|
+
* @param index - Solution index when multiple tangent arcs exist (defaults to 0).
|
|
170
|
+
*/
|
|
171
|
+
end(index?: number): LazyVertex;
|
|
172
|
+
}
|
|
173
|
+
export interface ICommon extends ISceneObject {
|
|
174
|
+
/**
|
|
175
|
+
* Controls whether the original objects involved in the boolean intersection
|
|
176
|
+
* are retained or removed after the operation.
|
|
177
|
+
* @param value - `true` to keep originals, `false` (default) to remove them.
|
|
178
|
+
*/
|
|
179
|
+
keepOriginal(value?: boolean): this;
|
|
180
|
+
}
|
|
181
|
+
export interface IExtrude extends IFuseable {
|
|
182
|
+
/**
|
|
183
|
+
* Enables symmetric mode — extrudes equally in both directions from the sketch plane.
|
|
184
|
+
*/
|
|
185
|
+
symmetric(): this;
|
|
186
|
+
/**
|
|
187
|
+
* Selects faces at the start (base) of the extrusion.
|
|
188
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
189
|
+
*/
|
|
190
|
+
startFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
191
|
+
/**
|
|
192
|
+
* Selects faces at the end (cap) of the extrusion.
|
|
193
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
194
|
+
*/
|
|
195
|
+
endFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
196
|
+
/**
|
|
197
|
+
* Selects edges on the start (base) faces of the extrusion.
|
|
198
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
199
|
+
*/
|
|
200
|
+
startEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
201
|
+
/**
|
|
202
|
+
* Selects edges on the end (cap) faces of the extrusion.
|
|
203
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
204
|
+
*/
|
|
205
|
+
endEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
206
|
+
/**
|
|
207
|
+
* Selects the lateral faces created by the extrusion.
|
|
208
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
209
|
+
*/
|
|
210
|
+
sideFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
211
|
+
/**
|
|
212
|
+
* Selects edges on the side faces, excluding edges shared with start/end faces.
|
|
213
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
214
|
+
*/
|
|
215
|
+
sideEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
216
|
+
/**
|
|
217
|
+
* Selects faces created inside the solid during extrusion (e.g., from holes or intersections).
|
|
218
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
219
|
+
*/
|
|
220
|
+
internalFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
221
|
+
/**
|
|
222
|
+
* Selects edges bounding the internal geometry created during extrusion.
|
|
223
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
224
|
+
*/
|
|
225
|
+
internalEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
226
|
+
/**
|
|
227
|
+
* Applies a draft (taper) angle to the extrusion walls.
|
|
228
|
+
* @param value - A single angle for uniform draft, or a `[start, end]` tuple for asymmetric draft.
|
|
229
|
+
*/
|
|
230
|
+
draft(value: number | [number, number]): this;
|
|
231
|
+
/**
|
|
232
|
+
* Offsets the end face by a specified distance along the extrusion direction.
|
|
233
|
+
* @param value - The offset distance.
|
|
234
|
+
*/
|
|
235
|
+
endOffset(value: number): this;
|
|
236
|
+
/**
|
|
237
|
+
* Enables or disables drill mode, which partitions the sketch into face regions
|
|
238
|
+
* before extruding.
|
|
239
|
+
* @param value - `true` to enable (default), `false` to disable.
|
|
240
|
+
*/
|
|
241
|
+
drill(value?: boolean): this;
|
|
242
|
+
/**
|
|
243
|
+
* Restricts extrusion to only the sketch regions containing the given points.
|
|
244
|
+
* @param points - 2D points in the sketch plane identifying regions to extrude.
|
|
245
|
+
*/
|
|
246
|
+
pick(...points: Point2DLike[]): this;
|
|
247
|
+
}
|
|
248
|
+
export interface ICut extends ISceneObject {
|
|
249
|
+
/**
|
|
250
|
+
* Enables symmetric mode — cuts equally in both directions from the sketch plane.
|
|
251
|
+
*/
|
|
252
|
+
symmetric(): this;
|
|
253
|
+
/**
|
|
254
|
+
* Narrows the cut scope to specific objects instead of all scene objects.
|
|
255
|
+
* @param objects - The target objects to cut from.
|
|
256
|
+
*/
|
|
257
|
+
remove(...objects: ISceneObject[]): this;
|
|
258
|
+
/**
|
|
259
|
+
* Applies a draft (taper) angle to the cut walls.
|
|
260
|
+
* @param value - A single angle for uniform draft, or a `[start, end]` tuple for asymmetric draft.
|
|
261
|
+
*/
|
|
262
|
+
draft(value: number | [number, number]): this;
|
|
263
|
+
/**
|
|
264
|
+
* Offsets the cut end face by a specified distance along the cut direction.
|
|
265
|
+
* @param value - The offset distance.
|
|
266
|
+
*/
|
|
267
|
+
endOffset(value: number): this;
|
|
268
|
+
/**
|
|
269
|
+
* Selects edges at the start of the cut path, classified by signed distance from the cut plane.
|
|
270
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
271
|
+
*/
|
|
272
|
+
startEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
273
|
+
/**
|
|
274
|
+
* Selects edges at the end of the cut path, classified by signed distance from the cut plane.
|
|
275
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
276
|
+
*/
|
|
277
|
+
endEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
278
|
+
/**
|
|
279
|
+
* Selects internal edges created by the cut that are not on the cut plane boundary.
|
|
280
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
281
|
+
*/
|
|
282
|
+
internalEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
283
|
+
/**
|
|
284
|
+
* Selects internal faces exposed by the cut — newly created surfaces not from the original stock.
|
|
285
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
286
|
+
*/
|
|
287
|
+
internalFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
288
|
+
/**
|
|
289
|
+
* Restricts the cut to only the sketch regions containing the given points.
|
|
290
|
+
* @param points - 2D points in the sketch plane identifying regions to cut.
|
|
291
|
+
*/
|
|
292
|
+
pick(...points: Point2DLike[]): this;
|
|
293
|
+
}
|
|
294
|
+
export interface IRevolve extends IFuseable {
|
|
295
|
+
/**
|
|
296
|
+
* Enables symmetric mode — revolves equally in both directions from the sketch plane.
|
|
297
|
+
*/
|
|
298
|
+
symmetric(): this;
|
|
299
|
+
/**
|
|
300
|
+
* Restricts the revolve to only the sketch regions containing the given points.
|
|
301
|
+
* @param points - 2D points in the sketch plane identifying regions to revolve.
|
|
302
|
+
*/
|
|
303
|
+
pick(...points: Point2DLike[]): this;
|
|
304
|
+
}
|
|
305
|
+
export interface ILoft extends IFuseable {
|
|
306
|
+
/**
|
|
307
|
+
* Selects faces on the first profile plane of the loft.
|
|
308
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
309
|
+
*/
|
|
310
|
+
startFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
311
|
+
/**
|
|
312
|
+
* Selects faces on the last profile plane of the loft.
|
|
313
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
314
|
+
*/
|
|
315
|
+
endFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
316
|
+
/**
|
|
317
|
+
* Selects the lateral faces generated between loft profiles.
|
|
318
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
319
|
+
*/
|
|
320
|
+
sideFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
321
|
+
/**
|
|
322
|
+
* Selects edges on the first profile plane of the loft.
|
|
323
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
324
|
+
*/
|
|
325
|
+
startEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
326
|
+
/**
|
|
327
|
+
* Selects edges on the last profile plane of the loft.
|
|
328
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
329
|
+
*/
|
|
330
|
+
endEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
331
|
+
/**
|
|
332
|
+
* Selects edges on the side faces, excluding edges shared with start/end faces.
|
|
333
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
334
|
+
*/
|
|
335
|
+
sideEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
336
|
+
}
|
|
337
|
+
export interface ISweep extends IFuseable {
|
|
338
|
+
/**
|
|
339
|
+
* Selects faces at the start (profile plane) of the sweep.
|
|
340
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
341
|
+
*/
|
|
342
|
+
startFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
343
|
+
/**
|
|
344
|
+
* Selects faces at the end of the sweep path.
|
|
345
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
346
|
+
*/
|
|
347
|
+
endFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
348
|
+
/**
|
|
349
|
+
* Selects the lateral faces generated by sweeping the profile along the path.
|
|
350
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
351
|
+
*/
|
|
352
|
+
sideFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
353
|
+
/**
|
|
354
|
+
* Selects edges on the start faces of the sweep.
|
|
355
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
356
|
+
*/
|
|
357
|
+
startEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
358
|
+
/**
|
|
359
|
+
* Selects edges on the end faces of the sweep.
|
|
360
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
361
|
+
*/
|
|
362
|
+
endEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
363
|
+
/**
|
|
364
|
+
* Selects edges on the side faces, excluding edges shared with start/end faces.
|
|
365
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
366
|
+
*/
|
|
367
|
+
sideEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
368
|
+
/**
|
|
369
|
+
* Selects faces created inside the solid during the sweep (e.g., from holes).
|
|
370
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
371
|
+
*/
|
|
372
|
+
internalFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
373
|
+
/**
|
|
374
|
+
* Selects edges bounding the internal geometry created during the sweep.
|
|
375
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
376
|
+
*/
|
|
377
|
+
internalEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
378
|
+
/**
|
|
379
|
+
* Applies a draft (taper) angle to the sweep walls.
|
|
380
|
+
* @param value - A single angle for uniform draft, or a `[start, end]` tuple for asymmetric draft.
|
|
381
|
+
*/
|
|
382
|
+
draft(value: number | [number, number]): this;
|
|
383
|
+
/**
|
|
384
|
+
* Offsets the end face by a specified distance along the sweep direction.
|
|
385
|
+
* @param value - The offset distance.
|
|
386
|
+
*/
|
|
387
|
+
endOffset(value: number): this;
|
|
388
|
+
/**
|
|
389
|
+
* Enables or disables drill mode.
|
|
390
|
+
* @param value - `true` to enable (default), `false` to disable.
|
|
391
|
+
*/
|
|
392
|
+
drill(value?: boolean): this;
|
|
393
|
+
/**
|
|
394
|
+
* Restricts the sweep to only the sketch regions containing the given points.
|
|
395
|
+
* @param points - 2D points in the sketch plane identifying regions to sweep.
|
|
396
|
+
*/
|
|
397
|
+
pick(...points: Point2DLike[]): this;
|
|
398
|
+
}
|
|
399
|
+
export interface IShell extends ISceneObject {
|
|
400
|
+
/**
|
|
401
|
+
* Selects the inner wall faces created by the shell operation (from thickness removal).
|
|
402
|
+
* @param args - Numeric indices or {@link FaceFilterBuilder} instances to filter the selection.
|
|
403
|
+
*/
|
|
404
|
+
internalFaces(...args: (number | FaceFilterBuilder)[]): ISceneObject;
|
|
405
|
+
/**
|
|
406
|
+
* Selects edges created by the shell operation that are not from the original solid
|
|
407
|
+
* or on the opening rim.
|
|
408
|
+
* @param args - Numeric indices or {@link EdgeFilterBuilder} instances to filter the selection.
|
|
409
|
+
*/
|
|
410
|
+
internalEdges(...args: (number | EdgeFilterBuilder)[]): ISceneObject;
|
|
411
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|