@things-factory/figure-service 10.1.200 → 10.1.201
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/dist-server/service/figure/figure-context.d.ts +1 -1
- package/dist-server/service/figure/figure-context.js +10 -4
- package/dist-server/service/figure/figure-context.js.map +1 -1
- package/dist-server/service/figure/figure-propose-steps.js +3 -3
- package/dist-server/service/figure/figure-propose-steps.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/recipes/_lib/model.mts +4 -4
- package/recipes/air-cylinder/build.mts +2 -2
- package/recipes/air-cylinder/models/default.json +1 -1
- package/recipes/air-cylinder/recipe.json +2 -4
- package/recipes/air-shower/build.mts +2 -2
- package/recipes/air-shower/models/default.json +1 -1
- package/recipes/air-shower/recipe.json +2 -4
- package/recipes/barrier-gate/build.mts +1 -1
- package/recipes/barrier-gate/models/default.json +1 -1
- package/recipes/barrier-gate/recipe.json +1 -2
- package/recipes/base-frame/build.mts +2 -2
- package/recipes/base-frame/models/default.json +1 -1
- package/recipes/base-frame/recipe.json +4 -8
- package/recipes/belt-surface/build.mts +1 -1
- package/recipes/belt-surface/models/default.json +1 -1
- package/recipes/belt-surface/recipe.json +1 -2
- package/recipes/bin-row/build.mts +1 -1
- package/recipes/bin-row/models/default.json +1 -1
- package/recipes/bin-row/recipe.json +1 -2
- package/recipes/bollard-row/build.mts +1 -1
- package/recipes/bollard-row/models/default.json +1 -1
- package/recipes/bollard-row/recipe.json +1 -2
- package/recipes/buzzer/build.mts +1 -1
- package/recipes/buzzer/models/default.json +1 -1
- package/recipes/buzzer/recipe.json +1 -2
- package/recipes/cabinet-doors/build.mts +2 -2
- package/recipes/cabinet-doors/models/default.json +1 -1
- package/recipes/cabinet-doors/models/doors=1.json +1 -1
- package/recipes/cabinet-doors/models/doors=2.json +1 -1
- package/recipes/cabinet-doors/recipe.json +2 -4
- package/recipes/cable-tray/build.mts +2 -2
- package/recipes/cable-tray/models/default.json +1 -1
- package/recipes/cable-tray/recipe.json +3 -6
- package/recipes/camera-mount/build.mts +2 -2
- package/recipes/camera-mount/models/default.json +1 -1
- package/recipes/camera-mount/recipe.json +2 -4
- package/recipes/canopy/build.mts +2 -2
- package/recipes/canopy/models/default.json +1 -1
- package/recipes/canopy/recipe.json +5 -10
- package/recipes/cart/build.mts +5 -5
- package/recipes/cart/models/default.json +1 -1
- package/recipes/cart/recipe.json +16 -36
- package/recipes/cart-handle/build.mts +2 -2
- package/recipes/cart-handle/models/default.json +1 -1
- package/recipes/cart-handle/recipe.json +3 -6
- package/recipes/casters-four/build.mts +2 -2
- package/recipes/casters-four/models/default.json +1 -1
- package/recipes/casters-four/recipe.json +12 -28
- package/recipes/ceiling-rail-carriage/build.mts +2 -2
- package/recipes/ceiling-rail-carriage/models/default.json +1 -1
- package/recipes/ceiling-rail-carriage/recipe.json +2 -4
- package/recipes/chain-rails/build.mts +2 -2
- package/recipes/chain-rails/models/default.json +1 -1
- package/recipes/chain-rails/recipe.json +2 -4
- package/recipes/charging-station/build.mts +2 -2
- package/recipes/charging-station/models/default.json +1 -1
- package/recipes/charging-station/recipe.json +2 -4
- package/recipes/column-row/build.mts +1 -1
- package/recipes/column-row/models/default.json +1 -1
- package/recipes/column-row/recipe.json +1 -2
- package/recipes/control-cabinet/build.mts +2 -2
- package/recipes/control-cabinet/models/default.json +1 -1
- package/recipes/control-cabinet/recipe.json +2 -4
- package/recipes/conveyor-skirts/build.mts +2 -2
- package/recipes/conveyor-skirts/models/default.json +1 -1
- package/recipes/conveyor-skirts/recipe.json +2 -4
- package/recipes/counter-display/build.mts +2 -2
- package/recipes/counter-display/models/default.json +1 -1
- package/recipes/counter-display/recipe.json +2 -4
- package/recipes/dock-bumpers/build.mts +1 -1
- package/recipes/dock-bumpers/models/default.json +1 -1
- package/recipes/dock-bumpers/recipe.json +2 -4
- package/recipes/dock-leveler/build.mts +1 -1
- package/recipes/dock-leveler/models/default.json +1 -1
- package/recipes/dock-leveler/recipe.json +1 -2
- package/recipes/double-hinged-door/build.mts +2 -2
- package/recipes/double-hinged-door/models/default.json +1 -1
- package/recipes/double-hinged-door/recipe.json +3 -6
- package/recipes/drawer-stack/build.mts +1 -1
- package/recipes/drawer-stack/models/default.json +1 -1
- package/recipes/drawer-stack/models/drawers=2.json +1 -1
- package/recipes/drawer-stack/models/drawers=3.json +1 -1
- package/recipes/drawer-stack/models/drawers=4.json +1 -1
- package/recipes/drawer-stack/recipe.json +9 -18
- package/recipes/drip-tray/build.mts +1 -1
- package/recipes/drip-tray/models/default.json +1 -1
- package/recipes/drip-tray/recipe.json +1 -2
- package/recipes/duct-fan/build.mts +2 -2
- package/recipes/duct-fan/models/default.json +1 -1
- package/recipes/duct-fan/recipe.json +2 -4
- package/recipes/emergency-stop/build.mts +2 -2
- package/recipes/emergency-stop/models/default.json +1 -1
- package/recipes/emergency-stop/recipe.json +2 -4
- package/recipes/end-covers/build.mts +2 -2
- package/recipes/end-covers/models/default.json +1 -1
- package/recipes/end-covers/recipe.json +2 -4
- package/recipes/ffu-row/build.mts +1 -1
- package/recipes/ffu-row/models/default.json +1 -1
- package/recipes/ffu-row/recipe.json +1 -2
- package/recipes/fire-extinguisher/build.mts +2 -2
- package/recipes/fire-extinguisher/models/default.json +1 -1
- package/recipes/fire-extinguisher/recipe.json +2 -4
- package/recipes/first-aid-box/build.mts +2 -2
- package/recipes/first-aid-box/models/default.json +1 -1
- package/recipes/first-aid-box/recipe.json +2 -4
- package/recipes/floor-zone/build.mts +2 -2
- package/recipes/floor-zone/models/default.json +1 -1
- package/recipes/floor-zone/recipe.json +4 -8
- package/recipes/folding-door/build.mts +3 -3
- package/recipes/folding-door/models/default.json +1 -1
- package/recipes/folding-door/recipe.json +3 -6
- package/recipes/fork/build.mts +1 -1
- package/recipes/fork/models/default.json +1 -1
- package/recipes/fork/recipe.json +2 -4
- package/recipes/gantry-frame/build.mts +2 -2
- package/recipes/gantry-frame/models/default.json +1 -1
- package/recipes/gantry-frame/recipe.json +3 -6
- package/recipes/gripper-2f/build.mts +2 -2
- package/recipes/gripper-2f/models/default.json +1 -1
- package/recipes/gripper-2f/recipe.json +3 -6
- package/recipes/guard-cover/build.mts +1 -1
- package/recipes/guard-cover/models/default.json +1 -1
- package/recipes/guard-cover/recipe.json +1 -2
- package/recipes/handrail/build.mts +2 -2
- package/recipes/handrail/models/default.json +1 -1
- package/recipes/handrail/recipe.json +2 -4
- package/recipes/hatch/build.mts +2 -2
- package/recipes/hatch/models/default.json +1 -1
- package/recipes/hatch/recipe.json +2 -4
- package/recipes/hinged-door/build.mts +2 -2
- package/recipes/hinged-door/models/default.json +1 -1
- package/recipes/hinged-door/models/hinge=left.json +1 -1
- package/recipes/hinged-door/models/hinge=right.json +1 -1
- package/recipes/hinged-door/recipe.json +3 -6
- package/recipes/hmi-monitor/build.mts +2 -2
- package/recipes/hmi-monitor/models/default.json +1 -1
- package/recipes/hmi-monitor/recipe.json +2 -4
- package/recipes/hopper/build.mts +2 -2
- package/recipes/hopper/models/default.json +1 -1
- package/recipes/hopper/recipe.json +2 -4
- package/recipes/interlock-switch/build.mts +1 -1
- package/recipes/interlock-switch/models/default.json +1 -1
- package/recipes/interlock-switch/recipe.json +1 -2
- package/recipes/junction-box/build.mts +1 -1
- package/recipes/junction-box/models/default.json +1 -1
- package/recipes/junction-box/recipe.json +1 -2
- package/recipes/ladder/build.mts +2 -2
- package/recipes/ladder/models/default.json +1 -1
- package/recipes/ladder/recipe.json +3 -6
- package/recipes/legs-four/build.mts +1 -1
- package/recipes/legs-four/models/default.json +1 -1
- package/recipes/legs-four/recipe.json +4 -8
- package/recipes/leveling-feet/build.mts +1 -1
- package/recipes/leveling-feet/models/default.json +1 -1
- package/recipes/leveling-feet/recipe.json +4 -8
- package/recipes/lift-updown/build.mts +1 -1
- package/recipes/lift-updown/models/default.json +1 -1
- package/recipes/lift-updown/recipe.json +1 -2
- package/recipes/light-curtain/build.mts +1 -1
- package/recipes/light-curtain/models/default.json +1 -1
- package/recipes/light-curtain/recipe.json +2 -4
- package/recipes/limit-switch/build.mts +2 -2
- package/recipes/limit-switch/models/default.json +1 -1
- package/recipes/limit-switch/recipe.json +2 -4
- package/recipes/linear-guide/build.mts +2 -2
- package/recipes/linear-guide/models/default.json +1 -1
- package/recipes/linear-guide/recipe.json +2 -4
- package/recipes/locker-row/build.mts +1 -1
- package/recipes/locker-row/models/default.json +1 -1
- package/recipes/locker-row/recipe.json +1 -2
- package/recipes/motor-box/build.mts +1 -1
- package/recipes/motor-box/models/default.json +1 -1
- package/recipes/motor-box/recipe.json +1 -2
- package/recipes/observation-window/build.mts +2 -2
- package/recipes/observation-window/models/default.json +1 -1
- package/recipes/observation-window/recipe.json +2 -4
- package/recipes/operator-panel/build.mts +2 -2
- package/recipes/operator-panel/models/buttons=2.json +1 -1
- package/recipes/operator-panel/models/buttons=3.json +1 -1
- package/recipes/operator-panel/models/buttons=4.json +1 -1
- package/recipes/operator-panel/models/buttons=5.json +1 -1
- package/recipes/operator-panel/models/default.json +1 -1
- package/recipes/operator-panel/recipe.json +5 -10
- package/recipes/pallet/build.mts +2 -2
- package/recipes/pallet/models/default.json +1 -1
- package/recipes/pallet/recipe.json +4 -8
- package/recipes/partition-wall/build.mts +2 -2
- package/recipes/partition-wall/models/default.json +1 -1
- package/recipes/partition-wall/recipe.json +3 -6
- package/recipes/pass-box/build.mts +2 -2
- package/recipes/pass-box/models/default.json +1 -1
- package/recipes/pass-box/recipe.json +2 -4
- package/recipes/peg-board/build.mts +2 -2
- package/recipes/peg-board/models/default.json +1 -1
- package/recipes/peg-board/recipe.json +2 -4
- package/recipes/photo-sensor-pair/build.mts +1 -1
- package/recipes/photo-sensor-pair/models/default.json +1 -1
- package/recipes/photo-sensor-pair/recipe.json +2 -4
- package/recipes/pipe-run/build.mts +1 -1
- package/recipes/pipe-run/models/default.json +1 -1
- package/recipes/pipe-run/recipe.json +4 -7
- package/recipes/platform/build.mts +2 -2
- package/recipes/platform/models/default.json +1 -1
- package/recipes/platform/recipe.json +5 -10
- package/recipes/power-box/build.mts +1 -1
- package/recipes/power-box/models/default.json +1 -1
- package/recipes/power-box/recipe.json +1 -2
- package/recipes/pressure-gauge/build.mts +1 -1
- package/recipes/pressure-gauge/models/default.json +1 -1
- package/recipes/pressure-gauge/recipe.json +1 -2
- package/recipes/pull-cord/build.mts +1 -1
- package/recipes/pull-cord/models/default.json +1 -1
- package/recipes/pull-cord/recipe.json +1 -2
- package/recipes/pump/build.mts +2 -2
- package/recipes/pump/models/default.json +1 -1
- package/recipes/pump/recipe.json +2 -4
- package/recipes/pusher/build.mts +1 -1
- package/recipes/pusher/models/default.json +1 -1
- package/recipes/pusher/recipe.json +1 -2
- package/recipes/robot-plinth/build.mts +2 -2
- package/recipes/robot-plinth/models/default.json +1 -1
- package/recipes/robot-plinth/recipe.json +2 -4
- package/recipes/roll-up-shutter/build.mts +2 -2
- package/recipes/roll-up-shutter/models/default.json +1 -1
- package/recipes/roll-up-shutter/recipe.json +2 -4
- package/recipes/roller-row/build.mts +1 -1
- package/recipes/roller-row/models/default.json +1 -1
- package/recipes/roller-row/recipe.json +5 -7
- package/recipes/room-shell/build.mts +3 -3
- package/recipes/room-shell/models/default.json +1 -1
- package/recipes/room-shell/recipe.json +5 -10
- package/recipes/rotating-beacon/build.mts +3 -3
- package/recipes/rotating-beacon/models/default.json +1 -1
- package/recipes/rotating-beacon/recipe.json +3 -6
- package/recipes/safety-fence/build.mts +2 -2
- package/recipes/safety-fence/models/default.json +1 -1
- package/recipes/safety-fence/recipe.json +2 -4
- package/recipes/safety-mat/build.mts +1 -1
- package/recipes/safety-mat/models/default.json +1 -1
- package/recipes/safety-mat/recipe.json +1 -2
- package/recipes/safety-sign-stand/build.mts +3 -3
- package/recipes/safety-sign-stand/models/default.json +1 -1
- package/recipes/safety-sign-stand/recipe.json +3 -6
- package/recipes/scanner-mount/build.mts +3 -3
- package/recipes/scanner-mount/models/default.json +1 -1
- package/recipes/scanner-mount/recipe.json +3 -6
- package/recipes/selector-switch/build.mts +2 -2
- package/recipes/selector-switch/models/default.json +1 -1
- package/recipes/selector-switch/recipe.json +2 -4
- package/recipes/shelf-tiers/build.mts +1 -1
- package/recipes/shelf-tiers/models/default.json +1 -1
- package/recipes/shelf-tiers/models/tiers=2.json +1 -1
- package/recipes/shelf-tiers/models/tiers=3.json +1 -1
- package/recipes/shelf-tiers/models/tiers=4.json +1 -1
- package/recipes/shelf-tiers/models/tiers=5.json +1 -1
- package/recipes/shelf-tiers/recipe.json +4 -8
- package/recipes/side-guides/build.mts +1 -1
- package/recipes/side-guides/models/default.json +1 -1
- package/recipes/side-guides/recipe.json +2 -4
- package/recipes/sign-board/build.mts +1 -1
- package/recipes/sign-board/models/default.json +1 -1
- package/recipes/sign-board/recipe.json +1 -2
- package/recipes/signal-tower-3/build.mts +2 -2
- package/recipes/signal-tower-3/models/default.json +1 -1
- package/recipes/signal-tower-3/recipe.json +4 -8
- package/recipes/sliding-door/build.mts +4 -4
- package/recipes/sliding-door/models/default.json +1 -1
- package/recipes/sliding-door/models/leaves=1,lamp=false.json +1 -1
- package/recipes/sliding-door/models/leaves=1,lamp=true.json +1 -1
- package/recipes/sliding-door/models/leaves=2,lamp=false.json +1 -1
- package/recipes/sliding-door/models/leaves=2,lamp=true.json +1 -1
- package/recipes/sliding-door/recipe.json +5 -10
- package/recipes/stairs/build.mts +1 -1
- package/recipes/stairs/models/default.json +1 -1
- package/recipes/stairs/recipe.json +1 -2
- package/recipes/status-lamp/build.mts +3 -3
- package/recipes/status-lamp/models/default.json +1 -1
- package/recipes/status-lamp/recipe.json +3 -6
- package/recipes/stopper/build.mts +1 -1
- package/recipes/stopper/models/default.json +1 -1
- package/recipes/stopper/recipe.json +1 -2
- package/recipes/suction-pads/build.mts +1 -1
- package/recipes/suction-pads/models/default.json +1 -1
- package/recipes/suction-pads/recipe.json +1 -2
- package/recipes/tank/build.mts +1 -1
- package/recipes/tank/models/default.json +1 -1
- package/recipes/tank/recipe.json +1 -2
- package/recipes/telescopic-arm/build.mts +2 -2
- package/recipes/telescopic-arm/models/default.json +1 -1
- package/recipes/telescopic-arm/recipe.json +2 -4
- package/recipes/toe-board/build.mts +1 -1
- package/recipes/toe-board/models/default.json +1 -1
- package/recipes/toe-board/recipe.json +1 -2
- package/recipes/tote/build.mts +1 -1
- package/recipes/tote/models/default.json +1 -1
- package/recipes/tote/recipe.json +1 -2
- package/recipes/traffic-cones/build.mts +2 -2
- package/recipes/traffic-cones/models/default.json +1 -1
- package/recipes/traffic-cones/recipe.json +2 -4
- package/recipes/transfer-belts/build.mts +1 -1
- package/recipes/transfer-belts/models/default.json +1 -1
- package/recipes/transfer-belts/recipe.json +2 -4
- package/recipes/tray-stack/build.mts +1 -1
- package/recipes/tray-stack/models/default.json +1 -1
- package/recipes/tray-stack/models/trays=3.json +1 -1
- package/recipes/tray-stack/models/trays=4.json +1 -1
- package/recipes/tray-stack/models/trays=5.json +1 -1
- package/recipes/tray-stack/recipe.json +5 -10
- package/recipes/trough/build.mts +1 -1
- package/recipes/trough/models/default.json +1 -1
- package/recipes/trough/recipe.json +1 -2
- package/recipes/turntable/build.mts +2 -2
- package/recipes/turntable/models/default.json +1 -1
- package/recipes/turntable/recipe.json +2 -4
- package/recipes/valve-handle/build.mts +3 -3
- package/recipes/valve-handle/models/default.json +1 -1
- package/recipes/valve-handle/recipe.json +3 -6
- package/recipes/waste-bin/build.mts +1 -1
- package/recipes/waste-bin/models/default.json +1 -1
- package/recipes/waste-bin/recipe.json +1 -2
- package/recipes/work-light/build.mts +3 -3
- package/recipes/work-light/models/default.json +1 -1
- package/recipes/work-light/recipe.json +3 -6
- package/recipes/workbench-top/build.mts +1 -1
- package/recipes/workbench-top/models/default.json +1 -1
- package/recipes/workbench-top/recipe.json +1 -2
- package/server/service/figure/figure-category-db.test.ts +1 -1
- package/server/service/figure/figure-context.test.ts +6 -6
- package/server/service/figure/figure-context.ts +11 -4
- package/server/service/figure/figure-deprecation-db.test.ts +1 -1
- package/server/service/figure/figure-format.test.ts +3 -3
- package/server/service/figure/figure-llm-smoke.test.ts +2 -2
- package/server/service/figure/figure-namespace-db.test.ts +1 -1
- package/server/service/figure/figure-propose-clips.test.ts +1 -1
- package/server/service/figure/figure-propose-steps.test.ts +5 -5
- package/server/service/figure/figure-propose-steps.ts +3 -3
- package/server/service/figure/figure-public-db.test.ts +1 -1
- package/server/service/figure/figure-release-check.test.ts +1 -1
- package/server/service/figure/figure-release-record-db.test.ts +1 -1
- package/server/service/figure/figure-tools.test.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_PULL_CORD","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"cord.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"cord.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_PULL_CORD","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"cord.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"cord.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"cord.k.centre","unit":"ratio","value":-0.5},{"id":"k.ratio.1","unit":"ratio","value":1},{"id":"d.mm.60","unit":"mm","value":60}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.size.y","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.size.y","host.dimension.x.value","host.size.z"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"cord.shape","op":"extrude@1","args":["cord.start.value","cord.dimension.height","cord.dimension.x.value","cord.dimension.depth"],"outputs":{"shape":"cord.shapeValue"},"params":{"frame":"cord.local","axis":"y","section":"rectangle"}},{"id":"cord.pose","op":"rigid@1","args":["d.mm.0","cord.on.host.pose.y.t0.value","cord.on.host.pose.z.s0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"cord.poseValue"},"params":{"from":"cord.local","to":"cord.seat"}},{"id":"cord","op":"place@1","args":["cord.shapeValue","cord.world.value"],"outputs":{"placed":"cord.placed"}},{"id":"cord.start","op":"mul@1","args":["cord.dimension.height","cord.k.centre"],"outputs":{"value":"cord.start.value"}},{"id":"cord.dimension.x","op":"mul@1","args":["host.dimension.x.value","k.ratio.1"],"outputs":{"value":"cord.dimension.x.value"}},{"id":"host.dimension.x","op":"mul@1","args":["host.size.x","k.ratio.1"],"outputs":{"value":"host.dimension.x.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"cord.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"cord.on.host.seat.y.t0.value"}},{"id":"cord.on.host.seat.z.t0","op":"mul@1","args":["host.size.z","k.ratio.0_5"],"outputs":{"value":"cord.on.host.seat.z.t0.value"}},{"id":"cord.on.host.pose.y.t0","op":"mul@1","args":["cord.dimension.height","host.k.centre"],"outputs":{"value":"cord.on.host.pose.y.t0.value"}},{"id":"cord.on.host.pose.z.t1","op":"mul@1","args":["cord.dimension.depth","k.ratio.0_5"],"outputs":{"value":"cord.on.host.pose.z.t1.value"}},{"id":"cord.on.host.pose.z.s0","op":"add@1","args":["d.mm.60","cord.on.host.pose.z.t1.value"],"outputs":{"value":"cord.on.host.pose.z.s0.value"}},{"id":"cord.seat.rigid","op":"rigid@1","args":["d.mm.0","cord.on.host.seat.y.t0.value","cord.on.host.seat.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"cord.seat.value"},"params":{"from":"cord.seat","to":"host.local"}},{"id":"cord.chain","op":"compose@1","args":["cord.seat.value","cord.poseValue"],"outputs":{"pose":"cord.chain.value"}},{"id":"cord.world","op":"compose@1","args":["host.chain.value","cord.chain.value"],"outputs":{"pose":"cord.world.value"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":3000,"host.size.y":700,"host.size.z":800,"cord.dimension.height":12,"cord.dimension.depth":12},"stateDefaults":{},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2","palette.tpl-d62828":"#d62828"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"cord","material":{"token":"palette.tpl-d62828"}}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"cord","type":"fixed","body0":{"part":"host","face":"front"},"body1":{"part":"cord"},"origin":{"gap":60,"align":{"y":"max"}}}]}
|
package/recipes/pump/build.mts
CHANGED
|
@@ -4,10 +4,10 @@ import { host, Model } from '../_lib/model.mts'
|
|
|
4
4
|
export default function build() {
|
|
5
5
|
const m = new Model(host({ x: 1200, y: 150, z: 600 }, 'TPL_PUMP'))
|
|
6
6
|
m.add({ id: 'casing', kind: 'cylinder', dimensions: { radius: 200, length: 300 } } as never)
|
|
7
|
-
.on('casing', '
|
|
7
|
+
.on('casing', 'host', 'top', { x: 'max' })
|
|
8
8
|
.colour('casing', 'pump', '#2e86de')
|
|
9
9
|
.box('motor', 500, 300, 300)
|
|
10
|
-
.on('motor', '
|
|
10
|
+
.on('motor', 'host', 'top', { x: 'min' })
|
|
11
11
|
.colour('motor', 'motor', '#44505a')
|
|
12
12
|
return m.asset
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_PUMP","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"casing.dimension.radius","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"casing.dimension.length","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_PUMP","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"casing.dimension.radius","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"casing.dimension.length","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"motor.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"casing.k.centre","unit":"ratio","value":-0.5},{"id":"k.ratio._1","unit":"ratio","value":-1},{"id":"motor.k.centre","unit":"ratio","value":-0.5}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.size.y","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.size.y","host.size.x","host.size.z"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"casing.shape","op":"extrude@1","args":["casing.start.value","casing.dimension.length","casing.dimension.radius","casing.dimension.radius"],"outputs":{"shape":"casing.shapeValue"},"params":{"frame":"casing.local","axis":"y","section":"ellipse"}},{"id":"casing.pose","op":"rigid@1","args":["casing.on.host.pose.x.t0.value","casing.on.host.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"casing.poseValue"},"params":{"from":"casing.local","to":"casing.seat"}},{"id":"casing","op":"place@1","args":["casing.shapeValue","casing.world.value"],"outputs":{"placed":"casing.placed"}},{"id":"casing.start","op":"mul@1","args":["casing.dimension.length","casing.k.centre"],"outputs":{"value":"casing.start.value"}},{"id":"motor.shape","op":"extrude@1","args":["motor.start.value","motor.dimension.height","motor.dimension.width","motor.dimension.depth"],"outputs":{"shape":"motor.shapeValue"},"params":{"frame":"motor.local","axis":"y","section":"rectangle"}},{"id":"motor.pose","op":"rigid@1","args":["motor.on.host.pose.x.t0.value","motor.on.host.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"motor.poseValue"},"params":{"from":"motor.local","to":"motor.seat"}},{"id":"motor","op":"place@1","args":["motor.shapeValue","motor.world.value"],"outputs":{"placed":"motor.placed"}},{"id":"motor.start","op":"mul@1","args":["motor.dimension.height","motor.k.centre"],"outputs":{"value":"motor.start.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"casing.on.host.seat.x.t0","op":"mul@1","args":["host.size.x","k.ratio.0_5"],"outputs":{"value":"casing.on.host.seat.x.t0.value"}},{"id":"casing.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"casing.on.host.seat.y.t0.value"}},{"id":"casing.on.host.pose.x.t0","op":"mul@1","args":["casing.dimension.radius","k.ratio._1"],"outputs":{"value":"casing.on.host.pose.x.t0.value"}},{"id":"casing.on.host.pose.y.t0","op":"mul@1","args":["casing.dimension.length","k.ratio.0_5"],"outputs":{"value":"casing.on.host.pose.y.t0.value"}},{"id":"casing.seat.rigid","op":"rigid@1","args":["casing.on.host.seat.x.t0.value","casing.on.host.seat.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"casing.seat.value"},"params":{"from":"casing.seat","to":"host.local"}},{"id":"casing.chain","op":"compose@1","args":["casing.seat.value","casing.poseValue"],"outputs":{"pose":"casing.chain.value"}},{"id":"casing.world","op":"compose@1","args":["host.chain.value","casing.chain.value"],"outputs":{"pose":"casing.world.value"}},{"id":"motor.on.host.seat.x.t0","op":"mul@1","args":["host.size.x","host.k.centre"],"outputs":{"value":"motor.on.host.seat.x.t0.value"}},{"id":"motor.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"motor.on.host.seat.y.t0.value"}},{"id":"motor.on.host.pose.x.t0","op":"mul@1","args":["motor.dimension.width","k.ratio.0_5"],"outputs":{"value":"motor.on.host.pose.x.t0.value"}},{"id":"motor.on.host.pose.y.t0","op":"mul@1","args":["motor.dimension.height","k.ratio.0_5"],"outputs":{"value":"motor.on.host.pose.y.t0.value"}},{"id":"motor.seat.rigid","op":"rigid@1","args":["motor.on.host.seat.x.t0.value","motor.on.host.seat.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"motor.seat.value"},"params":{"from":"motor.seat","to":"host.local"}},{"id":"motor.chain","op":"compose@1","args":["motor.seat.value","motor.poseValue"],"outputs":{"pose":"motor.chain.value"}},{"id":"motor.world","op":"compose@1","args":["host.chain.value","motor.chain.value"],"outputs":{"pose":"motor.world.value"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":1200,"host.size.y":150,"host.size.z":600,"casing.dimension.radius":200,"casing.dimension.length":300,"motor.dimension.width":500,"motor.dimension.height":300,"motor.dimension.depth":300},"stateDefaults":{},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2","palette.tpl-2e86de":"#2e86de","palette.tpl-44505a":"#44505a"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"casing","material":{"token":"palette.tpl-2e86de"},"segments":12},{"target":"motor","material":{"token":"palette.tpl-44505a"}}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"casing","type":"fixed","body0":{"part":"host","face":"top"},"body1":{"part":"casing"},"origin":{"align":{"x":"max"}}},{"id":"motor","type":"fixed","body0":{"part":"host","face":"top"},"body1":{"part":"motor"},"origin":{"align":{"x":"min"}}}]}
|
package/recipes/pump/recipe.json
CHANGED
|
@@ -50,8 +50,7 @@
|
|
|
50
50
|
"face": "top"
|
|
51
51
|
},
|
|
52
52
|
"body1": {
|
|
53
|
-
"part": "{id}-casing"
|
|
54
|
-
"face": "bottom"
|
|
53
|
+
"part": "{id}-casing"
|
|
55
54
|
},
|
|
56
55
|
"origin": {
|
|
57
56
|
"align": {
|
|
@@ -70,8 +69,7 @@
|
|
|
70
69
|
"face": "top"
|
|
71
70
|
},
|
|
72
71
|
"body1": {
|
|
73
|
-
"part": "{id}-motor"
|
|
74
|
-
"face": "bottom"
|
|
72
|
+
"part": "{id}-motor"
|
|
75
73
|
},
|
|
76
74
|
"origin": {
|
|
77
75
|
"align": {
|
package/recipes/pusher/build.mts
CHANGED
|
@@ -4,7 +4,7 @@ import { host, Model } from '../_lib/model.mts'
|
|
|
4
4
|
export default function build() {
|
|
5
5
|
const m = new Model(host({ x: 3000, y: 700, z: 800 }, 'TPL_PUSHER'))
|
|
6
6
|
m.box('plate', 400, 120, 20)
|
|
7
|
-
.on('plate', '
|
|
7
|
+
.on('plate', 'host', 'top', { z: 'max', x: { mm: { from: { of: 'part', part: 'host', axis: 'x' }, times: 0 } } })
|
|
8
8
|
.colour('plate', 'palette.stop', '#e0a800')
|
|
9
9
|
.do({ kind: 'set-joint', joint: { ...m.asset.joints!.find(j => j.body1.part === 'plate')!, type: 'prismatic', axis: 'Z', lowerLimit: -1, upperLimit: 0, travel: { source: { of: 'part', part: 'host', axis: 'z' }, times: 0.9 }, state: { id: 'push' } } } as never)
|
|
10
10
|
return m.asset
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_PUSHER","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"push","unit":"ratio","min":-1,"max":0,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_PUSHER","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"push","unit":"ratio","min":-1,"max":0,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"plate.k.centre","unit":"ratio","value":-0.5},{"id":"k.ratio.1","unit":"ratio","value":1},{"id":"k.ratio.0","unit":"ratio","value":0},{"id":"k.ratio.0_9","unit":"ratio","value":0.9}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.size.y","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.size.y","host.dimension.x.value","host.dimension.z.value"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"plate.shape","op":"extrude@1","args":["plate.start.value","plate.dimension.height","plate.dimension.width","plate.dimension.depth"],"outputs":{"shape":"plate.shapeValue"},"params":{"frame":"plate.local","axis":"y","section":"rectangle"}},{"id":"plate.pose","op":"rigid@1","args":["d.mm.0","plate.on.host.pose.y.t0.value","plate.on.host.pose.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"plate.poseValue"},"params":{"from":"plate.local","to":"plate.seat"}},{"id":"plate","op":"place@1","args":["plate.shapeValue","plate.world.value"],"outputs":{"placed":"plate.placed"}},{"id":"plate.start","op":"mul@1","args":["plate.dimension.height","plate.k.centre"],"outputs":{"value":"plate.start.value"}},{"id":"host.dimension.x","op":"mul@1","args":["host.size.x","k.ratio.1"],"outputs":{"value":"host.dimension.x.value"}},{"id":"host.dimension.z","op":"mul@1","args":["host.size.z","k.ratio.1"],"outputs":{"value":"host.dimension.z.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"plate.on.host.align.x.times","op":"mul@1","args":["host.dimension.x.value","k.ratio.0"],"outputs":{"value":"plate.on.host.align.x.times.value"}},{"id":"plate.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"plate.on.host.seat.y.t0.value"}},{"id":"plate.on.host.seat.z.t0","op":"mul@1","args":["host.dimension.z.value","k.ratio.0_5"],"outputs":{"value":"plate.on.host.seat.z.t0.value"}},{"id":"plate.on.host.pose.y.t0","op":"mul@1","args":["plate.dimension.height","k.ratio.0_5"],"outputs":{"value":"plate.on.host.pose.y.t0.value"}},{"id":"plate.on.host.pose.z.t0","op":"mul@1","args":["plate.dimension.depth","host.k.centre"],"outputs":{"value":"plate.on.host.pose.z.t0.value"}},{"id":"plate.seat.rigid","op":"rigid@1","args":["plate.on.host.align.x.times.value","plate.on.host.seat.y.t0.value","plate.on.host.seat.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"plate.seat.value"},"params":{"from":"plate.joint","to":"host.local"}},{"id":"plate.chain","op":"compose@1","args":["plate.seat.value","plate.turned.value"],"outputs":{"pose":"plate.chain.value"}},{"id":"plate.world","op":"compose@1","args":["host.chain.value","plate.chain.value"],"outputs":{"pose":"plate.world.value"}},{"id":"plate.motion.travel.times","op":"mul@1","args":["host.dimension.z.value","k.ratio.0_9"],"outputs":{"value":"plate.motion.travel.times.value"}},{"id":"plate.motion.distance","op":"mul@1","args":["push","plate.motion.travel.times.value"],"outputs":{"value":"plate.motion.distance.value"}},{"id":"plate.motion","op":"axis-slide@1","args":["k.ratio.0","k.ratio.0","k.ratio.1","plate.motion.distance.value"],"outputs":{"pose":"plate.motion.value"},"params":{"from":"plate.seat","to":"plate.joint"}},{"id":"plate.turned","op":"compose@1","args":["plate.motion.value","plate.poseValue"],"outputs":{"pose":"plate.turned.value"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":3000,"host.size.y":700,"host.size.z":800,"plate.dimension.width":400,"plate.dimension.height":120,"plate.dimension.depth":20},"stateDefaults":{"push":0},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2","palette.tpl-e0a800":"#e0a800"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"plate","material":{"token":"palette.tpl-e0a800"}}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"plate","type":"prismatic","body0":{"part":"host","face":"top"},"body1":{"part":"plate"},"origin":{"align":{"z":"max","x":{"mm":{"from":{"of":"part","part":"host","axis":"x"},"times":0}}}},"axis":"Z","lowerLimit":-1,"upperLimit":0,"travel":{"source":{"of":"part","part":"host","axis":"z"},"times":0.9},"state":{"id":"push"}}]}
|
|
@@ -3,7 +3,7 @@ import { host, Model } from '../_lib/model.mts'
|
|
|
3
3
|
|
|
4
4
|
export default function build() {
|
|
5
5
|
const m = new Model(host({ x: 6000, y: 50, z: 4000 }, 'TPL_ROBOT_PLINTH'))
|
|
6
|
-
m.box('column', 400, 600, 400).on('column', '
|
|
7
|
-
.box('plate', 600, 30, 600).on('plate', '
|
|
6
|
+
m.box('column', 400, 600, 400).on('column', 'host', 'top').colour('column', 'frame', '#4f5d6b')
|
|
7
|
+
.box('plate', 600, 30, 600).on('plate', 'column', 'top').colour('plate', 'steel', '#b8c1c9')
|
|
8
8
|
return m.asset
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_ROBOT_PLINTH","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_ROBOT_PLINTH","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"column.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.width","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"plate.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"column.k.centre","unit":"ratio","value":-0.5},{"id":"plate.k.centre","unit":"ratio","value":-0.5}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.size.y","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.size.y","host.size.x","host.size.z"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"column.shape","op":"extrude@1","args":["column.start.value","column.dimension.height","column.dimension.width","column.dimension.depth"],"outputs":{"shape":"column.shapeValue"},"params":{"frame":"column.local","axis":"y","section":"rectangle"}},{"id":"column.pose","op":"rigid@1","args":["d.mm.0","column.on.host.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"column.poseValue"},"params":{"from":"column.local","to":"column.seat"}},{"id":"column","op":"place@1","args":["column.shapeValue","column.world.value"],"outputs":{"placed":"column.placed"}},{"id":"column.start","op":"mul@1","args":["column.dimension.height","column.k.centre"],"outputs":{"value":"column.start.value"}},{"id":"plate.shape","op":"extrude@1","args":["plate.start.value","plate.dimension.height","plate.dimension.width","plate.dimension.depth"],"outputs":{"shape":"plate.shapeValue"},"params":{"frame":"plate.local","axis":"y","section":"rectangle"}},{"id":"plate.pose","op":"rigid@1","args":["d.mm.0","plate.on.column.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"plate.poseValue"},"params":{"from":"plate.local","to":"plate.seat"}},{"id":"plate","op":"place@1","args":["plate.shapeValue","plate.world.value"],"outputs":{"placed":"plate.placed"}},{"id":"plate.start","op":"mul@1","args":["plate.dimension.height","plate.k.centre"],"outputs":{"value":"plate.start.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"column.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"column.on.host.seat.y.t0.value"}},{"id":"column.on.host.pose.y.t0","op":"mul@1","args":["column.dimension.height","k.ratio.0_5"],"outputs":{"value":"column.on.host.pose.y.t0.value"}},{"id":"column.seat.rigid","op":"rigid@1","args":["d.mm.0","column.on.host.seat.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"column.seat.value"},"params":{"from":"column.seat","to":"host.local"}},{"id":"column.chain","op":"compose@1","args":["column.seat.value","column.poseValue"],"outputs":{"pose":"column.chain.value"}},{"id":"column.world","op":"compose@1","args":["host.chain.value","column.chain.value"],"outputs":{"pose":"column.world.value"}},{"id":"plate.on.column.seat.y.t0","op":"mul@1","args":["column.dimension.height","k.ratio.0_5"],"outputs":{"value":"plate.on.column.seat.y.t0.value"}},{"id":"plate.on.column.pose.y.t0","op":"mul@1","args":["plate.dimension.height","k.ratio.0_5"],"outputs":{"value":"plate.on.column.pose.y.t0.value"}},{"id":"plate.seat.rigid","op":"rigid@1","args":["d.mm.0","plate.on.column.seat.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"plate.seat.value"},"params":{"from":"plate.seat","to":"column.local"}},{"id":"plate.chain","op":"compose@1","args":["plate.seat.value","plate.poseValue"],"outputs":{"pose":"plate.chain.value"}},{"id":"plate.world","op":"compose@1","args":["column.world.value","plate.chain.value"],"outputs":{"pose":"plate.world.value"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":6000,"host.size.y":50,"host.size.z":4000,"column.dimension.width":400,"column.dimension.height":600,"column.dimension.depth":400,"plate.dimension.width":600,"plate.dimension.height":30,"plate.dimension.depth":600},"stateDefaults":{},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2","palette.tpl-4f5d6b":"#4f5d6b","palette.tpl-b8c1c9":"#b8c1c9"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"column","material":{"token":"palette.tpl-4f5d6b"}},{"target":"plate","material":{"token":"palette.tpl-b8c1c9"}}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"column","type":"fixed","body0":{"part":"host","face":"top"},"body1":{"part":"column"},"origin":{}},{"id":"plate","type":"fixed","body0":{"part":"column","face":"top"},"body1":{"part":"plate"},"origin":{}}]}
|
|
@@ -69,8 +69,7 @@
|
|
|
69
69
|
"face": "top"
|
|
70
70
|
},
|
|
71
71
|
"body1": {
|
|
72
|
-
"part": "{id}-column"
|
|
73
|
-
"face": "bottom"
|
|
72
|
+
"part": "{id}-column"
|
|
74
73
|
},
|
|
75
74
|
"origin": {}
|
|
76
75
|
}
|
|
@@ -85,8 +84,7 @@
|
|
|
85
84
|
"face": "top"
|
|
86
85
|
},
|
|
87
86
|
"body1": {
|
|
88
|
-
"part": "{id}-plate"
|
|
89
|
-
"face": "bottom"
|
|
87
|
+
"part": "{id}-plate"
|
|
90
88
|
},
|
|
91
89
|
"origin": {}
|
|
92
90
|
}
|
|
@@ -6,12 +6,12 @@ export default function build() {
|
|
|
6
6
|
m.box('curtain', 1600, 2400, 30)
|
|
7
7
|
.follow('curtain', 'x', 'host', 'x', 0.4)
|
|
8
8
|
.follow('curtain', 'y', 'host', 'y', 0.8)
|
|
9
|
-
.on('curtain', '
|
|
9
|
+
.on('curtain', 'host', 'front', { y: 'min' })
|
|
10
10
|
.colour('curtain', 'curtain', '#8a9aa9')
|
|
11
11
|
.do({ kind: 'set-joint', joint: { ...m.asset.joints!.find(j => j.body1.part === 'curtain')!, type: 'prismatic', axis: 'Y', lowerLimit: 0, upperLimit: 1, travel: { source: { of: 'part', part: 'curtain', axis: 'y' }, times: 0.95 }, state: { id: 'open' } } } as never)
|
|
12
12
|
.box('housing', 1700, 350, 350)
|
|
13
13
|
.follow('housing', 'x', 'curtain', 'x', 1, 100)
|
|
14
|
-
.on('housing', '
|
|
14
|
+
.on('housing', 'host', 'front', { y: { mm: { from: { of: 'part', part: 'host', axis: 'y' }, times: 0.3, plus: 175 } } })
|
|
15
15
|
.colour('housing', 'housing', '#5d6d7e')
|
|
16
16
|
return m.asset
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_ROLL_UP_SHUTTER","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"curtain.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"housing.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"housing.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"open","unit":"ratio","min":0,"max":1,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_ROLL_UP_SHUTTER","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"curtain.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"housing.dimension.height","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"housing.dimension.depth","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"open","unit":"ratio","min":0,"max":1,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"curtain.k.centre","unit":"ratio","value":-0.5},{"id":"k.ratio.1","unit":"ratio","value":1},{"id":"k.ratio.0_4","unit":"ratio","value":0.4},{"id":"k.ratio.0_8","unit":"ratio","value":0.8},{"id":"k.ratio.0_95","unit":"ratio","value":0.95},{"id":"axis.ratio.0","unit":"ratio","value":0},{"id":"housing.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.100","unit":"mm","value":100},{"id":"k.ratio.0_3","unit":"ratio","value":0.3},{"id":"d.mm.175","unit":"mm","value":175}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.dimension.y.value","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.dimension.y.value","host.dimension.x.value","host.size.z"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"curtain.shape","op":"extrude@1","args":["curtain.start.value","curtain.dimension.y.value","curtain.dimension.x.value","curtain.dimension.depth"],"outputs":{"shape":"curtain.shapeValue"},"params":{"frame":"curtain.local","axis":"y","section":"rectangle"}},{"id":"curtain.pose","op":"rigid@1","args":["d.mm.0","curtain.on.host.pose.y.t0.value","curtain.on.host.pose.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"curtain.poseValue"},"params":{"from":"curtain.local","to":"curtain.seat"}},{"id":"curtain","op":"place@1","args":["curtain.shapeValue","curtain.world.value"],"outputs":{"placed":"curtain.placed"}},{"id":"curtain.start","op":"mul@1","args":["curtain.dimension.y.value","curtain.k.centre"],"outputs":{"value":"curtain.start.value"}},{"id":"curtain.dimension.x","op":"mul@1","args":["curtain.x.follows.times.value","k.ratio.1"],"outputs":{"value":"curtain.dimension.x.value"}},{"id":"host.dimension.x","op":"mul@1","args":["host.size.x","k.ratio.1"],"outputs":{"value":"host.dimension.x.value"}},{"id":"curtain.x.follows.times","op":"mul@1","args":["host.dimension.x.value","k.ratio.0_4"],"outputs":{"value":"curtain.x.follows.times.value"}},{"id":"curtain.dimension.y","op":"mul@1","args":["curtain.y.follows.times.value","k.ratio.1"],"outputs":{"value":"curtain.dimension.y.value"}},{"id":"host.dimension.y","op":"mul@1","args":["host.size.y","k.ratio.1"],"outputs":{"value":"host.dimension.y.value"}},{"id":"curtain.y.follows.times","op":"mul@1","args":["host.dimension.y.value","k.ratio.0_8"],"outputs":{"value":"curtain.y.follows.times.value"}},{"id":"housing.shape","op":"extrude@1","args":["housing.start.value","housing.dimension.height","housing.dimension.x.value","housing.dimension.depth"],"outputs":{"shape":"housing.shapeValue"},"params":{"frame":"housing.local","axis":"y","section":"rectangle"}},{"id":"housing.pose","op":"rigid@1","args":["d.mm.0","d.mm.0","housing.on.host.pose.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"housing.poseValue"},"params":{"from":"housing.local","to":"housing.seat"}},{"id":"housing","op":"place@1","args":["housing.shapeValue","housing.world.value"],"outputs":{"placed":"housing.placed"}},{"id":"housing.start","op":"mul@1","args":["housing.dimension.height","housing.k.centre"],"outputs":{"value":"housing.start.value"}},{"id":"housing.dimension.x","op":"mul@1","args":["housing.x.follows.plus.value","k.ratio.1"],"outputs":{"value":"housing.dimension.x.value"}},{"id":"housing.x.follows.plus","op":"add@1","args":["curtain.dimension.x.value","d.mm.100"],"outputs":{"value":"housing.x.follows.plus.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.dimension.y.value","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"curtain.on.host.seat.y.t0","op":"mul@1","args":["host.dimension.y.value","host.k.centre"],"outputs":{"value":"curtain.on.host.seat.y.t0.value"}},{"id":"curtain.on.host.seat.z.t0","op":"mul@1","args":["host.size.z","k.ratio.0_5"],"outputs":{"value":"curtain.on.host.seat.z.t0.value"}},{"id":"curtain.on.host.pose.y.t0","op":"mul@1","args":["curtain.dimension.y.value","k.ratio.0_5"],"outputs":{"value":"curtain.on.host.pose.y.t0.value"}},{"id":"curtain.on.host.pose.z.t0","op":"mul@1","args":["curtain.dimension.depth","k.ratio.0_5"],"outputs":{"value":"curtain.on.host.pose.z.t0.value"}},{"id":"curtain.seat.rigid","op":"rigid@1","args":["d.mm.0","curtain.on.host.seat.y.t0.value","curtain.on.host.seat.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"curtain.seat.value"},"params":{"from":"curtain.joint","to":"host.local"}},{"id":"curtain.chain","op":"compose@1","args":["curtain.seat.value","curtain.turned.value"],"outputs":{"pose":"curtain.chain.value"}},{"id":"curtain.world","op":"compose@1","args":["host.chain.value","curtain.chain.value"],"outputs":{"pose":"curtain.world.value"}},{"id":"curtain.motion.travel.times","op":"mul@1","args":["curtain.dimension.y.value","k.ratio.0_95"],"outputs":{"value":"curtain.motion.travel.times.value"}},{"id":"curtain.motion.distance","op":"mul@1","args":["open","curtain.motion.travel.times.value"],"outputs":{"value":"curtain.motion.distance.value"}},{"id":"curtain.motion","op":"axis-slide@1","args":["axis.ratio.0","k.ratio.1","axis.ratio.0","curtain.motion.distance.value"],"outputs":{"pose":"curtain.motion.value"},"params":{"from":"curtain.seat","to":"curtain.joint"}},{"id":"curtain.turned","op":"compose@1","args":["curtain.motion.value","curtain.poseValue"],"outputs":{"pose":"curtain.turned.value"}},{"id":"housing.on.host.align.y.times","op":"mul@1","args":["host.dimension.y.value","k.ratio.0_3"],"outputs":{"value":"housing.on.host.align.y.times.value"}},{"id":"housing.on.host.align.y.plus","op":"add@1","args":["housing.on.host.align.y.times.value","d.mm.175"],"outputs":{"value":"housing.on.host.align.y.plus.value"}},{"id":"housing.on.host.seat.z.t0","op":"mul@1","args":["host.size.z","k.ratio.0_5"],"outputs":{"value":"housing.on.host.seat.z.t0.value"}},{"id":"housing.on.host.pose.z.t0","op":"mul@1","args":["housing.dimension.depth","k.ratio.0_5"],"outputs":{"value":"housing.on.host.pose.z.t0.value"}},{"id":"housing.seat.rigid","op":"rigid@1","args":["d.mm.0","housing.on.host.align.y.plus.value","housing.on.host.seat.z.t0.value","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"housing.seat.value"},"params":{"from":"housing.seat","to":"host.local"}},{"id":"housing.chain","op":"compose@1","args":["housing.seat.value","housing.poseValue"],"outputs":{"pose":"housing.chain.value"}},{"id":"housing.world","op":"compose@1","args":["host.chain.value","housing.chain.value"],"outputs":{"pose":"housing.world.value"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":4000,"host.size.y":3000,"host.size.z":6000,"curtain.dimension.depth":30,"housing.dimension.height":350,"housing.dimension.depth":350},"stateDefaults":{"open":0},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2","palette.tpl-8a9aa9":"#8a9aa9","palette.tpl-5d6d7e":"#5d6d7e"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"curtain","material":{"token":"palette.tpl-8a9aa9"}},{"target":"housing","material":{"token":"palette.tpl-5d6d7e"}}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"curtain","type":"prismatic","body0":{"part":"host","face":"front"},"body1":{"part":"curtain"},"origin":{"align":{"y":"min"}},"axis":"Y","lowerLimit":0,"upperLimit":1,"travel":{"source":{"of":"part","part":"curtain","axis":"y"},"times":0.95},"state":{"id":"open"}},{"id":"housing","type":"fixed","body0":{"part":"host","face":"front"},"body1":{"part":"housing"},"origin":{"align":{"y":{"mm":{"from":{"of":"part","part":"host","axis":"y"},"times":0.3,"plus":175}}}}}]}
|
|
@@ -122,8 +122,7 @@
|
|
|
122
122
|
"face": "front"
|
|
123
123
|
},
|
|
124
124
|
"body1": {
|
|
125
|
-
"part": "{id}-curtain"
|
|
126
|
-
"face": "back"
|
|
125
|
+
"part": "{id}-curtain"
|
|
127
126
|
},
|
|
128
127
|
"origin": {
|
|
129
128
|
"align": {
|
|
@@ -156,8 +155,7 @@
|
|
|
156
155
|
"face": "front"
|
|
157
156
|
},
|
|
158
157
|
"body1": {
|
|
159
|
-
"part": "{id}-housing"
|
|
160
|
-
"face": "back"
|
|
158
|
+
"part": "{id}-housing"
|
|
161
159
|
},
|
|
162
160
|
"origin": {
|
|
163
161
|
"align": {
|
|
@@ -6,7 +6,7 @@ export default function build() {
|
|
|
6
6
|
m.add({ id: 'roller', kind: 'cylinder', dimensions: { radius: 30, length: 720 }, rotation: { x: 90, y: 0, z: 0 } } as never)
|
|
7
7
|
.follow('roller', 'y', 'host', 'z', 0.9)
|
|
8
8
|
/* By its centre, a radius above the top: it spins in place (ADR-0093, 2026-09-26). */
|
|
9
|
-
.do({ kind: 'attach', part: 'roller',
|
|
9
|
+
.do({ kind: 'attach', part: 'roller', to: { part: 'host', face: 'top' }, facing: 'centre', gap: 30 })
|
|
10
10
|
.moves('roller', { type: 'revolute', axis: 'Z', lower: -360, upper: 360, state: 'spin' })
|
|
11
11
|
.do({ kind: 'make-repeat', part: 'roller', axis: 'x', pitch: 200, narrowRange: true })
|
|
12
12
|
return m.asset
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"figure-asset-1","name":"TPL_ROLLER_ROW","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"roller.dimension.radius","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"spin","unit":"deg","min":-360,"max":360,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"
|
|
1
|
+
{"version":"figure-asset-1","name":"TPL_ROLLER_ROW","document":{"version":"figure-prototype-1","model":{"version":"r3-spatial-1","inputs":[{"id":"host.size.x","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.y","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"host.size.z","unit":"mm","min":5e-324,"max":1.7976931348623157e+308,"role":"design"},{"id":"roller.dimension.radius","unit":"mm","min":0,"max":1.7976931348623157e+308,"role":"design"},{"id":"spin","unit":"deg","min":-360,"max":360,"role":"state"}],"constants":[{"id":"host.k.centre","unit":"ratio","value":-0.5},{"id":"d.mm.0","unit":"mm","value":0},{"id":"k.ratio.0_5","unit":"ratio","value":0.5},{"id":"a.deg.0","unit":"deg","value":0},{"id":"roller.k.centre","unit":"ratio","value":-0.5},{"id":"k.ratio.1","unit":"ratio","value":1},{"id":"k.ratio.0_9","unit":"ratio","value":0.9},{"id":"d.mm.30","unit":"mm","value":30},{"id":"a.deg.90","unit":"deg","value":90},{"id":"axis.ratio.0","unit":"ratio","value":0},{"id":"k.ratio.2","unit":"ratio","value":2},{"id":"limit.count.100","unit":"count","value":100},{"id":"d.mm.200","unit":"mm","value":200}],"nodes":[{"id":"host.start","op":"mul@1","args":["host.size.y","host.k.centre"],"outputs":{"value":"host.start.value"}},{"id":"host.shape","op":"extrude@1","args":["host.start.value","host.size.y","host.size.x","host.dimension.z.value"],"outputs":{"shape":"host.shapeValue"},"params":{"frame":"host.local","axis":"y","section":"rectangle"}},{"id":"host.pose","op":"rigid@1","args":["d.mm.0","host.on.plane.pose.y.t0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.poseValue"},"params":{"from":"host.local","to":"host.seat"}},{"id":"host","op":"place@1","args":["host.shapeValue","host.chain.value"],"outputs":{"placed":"host.placed"}},{"id":"roller.shape","op":"extrude@1","args":["roller.start.value","roller.dimension.y.value","roller.dimension.radius","roller.dimension.radius"],"outputs":{"shape":"roller.shapeValue"},"params":{"frame":"roller.local","axis":"y","section":"ellipse"}},{"id":"roller.pose","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.90","a.deg.0","a.deg.0"],"outputs":{"pose":"roller.poseValue"},"params":{"from":"roller.local","to":"roller.seat"}},{"id":"roller","op":"member@1","args":["roller.shapeValue","roller.turned.value"],"outputs":{"placed":"roller.placed"}},{"id":"roller.start","op":"mul@1","args":["roller.dimension.y.value","roller.k.centre"],"outputs":{"value":"roller.start.value"}},{"id":"roller.dimension.y","op":"mul@1","args":["roller.y.follows.times.value","k.ratio.1"],"outputs":{"value":"roller.dimension.y.value"}},{"id":"host.dimension.z","op":"mul@1","args":["host.size.z","k.ratio.1"],"outputs":{"value":"host.dimension.z.value"}},{"id":"roller.y.follows.times","op":"mul@1","args":["host.dimension.z.value","k.ratio.0_9"],"outputs":{"value":"roller.y.follows.times.value"}},{"id":"host.on.plane.pose.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"host.on.plane.pose.y.t0.value"}},{"id":"host.seat.rigid","op":"rigid@1","args":["d.mm.0","d.mm.0","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"host.seat.value"},"params":{"from":"host.seat","to":"asset"}},{"id":"host.chain","op":"compose@1","args":["host.seat.value","host.poseValue"],"outputs":{"pose":"host.chain.value"}},{"id":"roller.on.host.seat.y.t0","op":"mul@1","args":["host.size.y","k.ratio.0_5"],"outputs":{"value":"roller.on.host.seat.y.t0.value"}},{"id":"roller.on.host.seat.y.s0","op":"add@1","args":["roller.on.host.seat.y.t0.value","d.mm.30"],"outputs":{"value":"roller.on.host.seat.y.s0.value"}},{"id":"roller.seat.rigid","op":"rigid@1","args":["roller.row.start.0.times.value","roller.on.host.seat.y.s0.value","d.mm.0","a.deg.0","a.deg.0","a.deg.0"],"outputs":{"pose":"roller.seat.value"},"params":{"from":"roller.joint","to":"host.local"}},{"id":"roller.motion","op":"axis-turn@1","args":["axis.ratio.0","axis.ratio.0","k.ratio.1","spin"],"outputs":{"pose":"roller.motion.value"},"params":{"from":"roller.seat","to":"roller.joint"}},{"id":"roller.turned","op":"compose@1","args":["roller.motion.value","roller.poseValue"],"outputs":{"pose":"roller.turned.value"}},{"id":"roller.row.start.0.times","op":"mul@1","args":["host.size.x","host.k.centre"],"outputs":{"value":"roller.row.start.0.times.value"}},{"id":"roller.row.length.0.times","op":"mul@1","args":["host.size.x","k.ratio.0_5"],"outputs":{"value":"roller.row.length.0.times.value"}},{"id":"roller.row.length.1.times","op":"mul@1","args":["host.size.x","k.ratio.0_5"],"outputs":{"value":"roller.row.length.1.times.value"}},{"id":"roller.row.length.1.sum","op":"add@1","args":["roller.row.length.0.times.value","roller.row.length.1.times.value"],"outputs":{"value":"roller.row.length.1.sum.value"}},{"id":"roller.row.extent.t0","op":"mul@1","args":["roller.dimension.radius","k.ratio.2"],"outputs":{"value":"roller.row.extent.t0.value"}},{"id":"roller.layout","op":"fit-pitch@1","args":["roller.row.length.1.sum.value","d.mm.0","d.mm.0","roller.row.extent.t0.value","d.mm.200","k.ratio.0_5","limit.count.100"],"outputs":{"layout":"roller.layout.value"}},{"id":"roller.assembly","op":"assembly@1","args":["roller.placed"],"outputs":{"assembly":"roller.assembly.value"}},{"id":"roller.row","op":"compose@1","args":["host.chain.value","roller.seat.value"],"outputs":{"pose":"roller.row.value"}},{"id":"roller.repeat","op":"repeat@1","args":["roller.layout.value","roller.assembly.value","roller.row.value"],"outputs":{"collection":"roller.repeat.value"},"params":{"axis":"x"}}]},"capabilities":{"version":"r3-capability-3","assetFrame":"asset","bindings":[]}},"designInputs":{"host.size.x":3000,"host.size.y":700,"host.size.z":800,"roller.dimension.radius":30},"stateDefaults":{"spin":0},"palette":{"palette.primary":"#477b9e","palette.host":"#d9dde2"},"appearance":[{"target":"host","material":{"token":"palette.host"}},{"target":"roller","material":{"token":"palette.primary"},"segments":12}],"joints":[{"id":"host","type":"fixed","body0":{"plane":"mounting-plane"},"body1":{"part":"host"},"origin":{}},{"id":"roller","type":"revolute","body0":{"part":"host","face":"top"},"body1":{"part":"roller"},"origin":{"childRotate":{"x":90},"facing":"centre","gap":30},"axis":"Z","lowerLimit":-360,"upperLimit":360,"state":{"id":"spin"},"repeat":{"axis":"X","pitch":200}}]}
|
|
@@ -83,17 +83,15 @@
|
|
|
83
83
|
"face": "top"
|
|
84
84
|
},
|
|
85
85
|
"body1": {
|
|
86
|
-
"part": "{id}-roller"
|
|
87
|
-
"face": "centre"
|
|
86
|
+
"part": "{id}-roller"
|
|
88
87
|
},
|
|
89
88
|
"origin": {
|
|
89
|
+
"childRotate": {
|
|
90
|
+
"x": 90
|
|
91
|
+
},
|
|
92
|
+
"facing": "centre",
|
|
90
93
|
"gap": {
|
|
91
94
|
"param": "radius"
|
|
92
|
-
},
|
|
93
|
-
"childRotate": {
|
|
94
|
-
"x": 90,
|
|
95
|
-
"y": 0,
|
|
96
|
-
"z": 0
|
|
97
95
|
}
|
|
98
96
|
},
|
|
99
97
|
"axis": "Z",
|
|
@@ -4,13 +4,13 @@ import { host, Model } from '../_lib/model.mts'
|
|
|
4
4
|
export default function build() {
|
|
5
5
|
const m = new Model(host({ x: 6000, y: 50, z: 4000 }, 'TPL_ROOM_SHELL'))
|
|
6
6
|
for (const [w, z] of [['wall-front', 'max'], ['wall-back', 'min']] as const)
|
|
7
|
-
m.box(w, 6000, 3000, 100).follow(w, 'x', 'host', 'x').on(w, '
|
|
7
|
+
m.box(w, 6000, 3000, 100).follow(w, 'x', 'host', 'x').on(w, 'host', 'top', { z }).colour(w, 'room-wall', '#9fb0c0')
|
|
8
8
|
for (const [w, x] of [['wall-left', 'min'], ['wall-right', 'max']] as const)
|
|
9
|
-
m.box(w, 100, 3000, 3800).follow(w, 'z', 'host', 'z', 1, -200).on(w, '
|
|
9
|
+
m.box(w, 100, 3000, 3800).follow(w, 'z', 'host', 'z', 1, -200).on(w, 'host', 'top', { x }).colour(w, 'room-wall', '#9fb0c0')
|
|
10
10
|
m.box('ceiling', 6000, 50, 4000)
|
|
11
11
|
.follow('ceiling', 'x', 'host', 'x')
|
|
12
12
|
.follow('ceiling', 'z', 'host', 'z')
|
|
13
|
-
.on('ceiling', '
|
|
13
|
+
.on('ceiling', 'host', 'top', undefined, 3000)
|
|
14
14
|
.edit({ kind: 'set-material', target: 'ceiling', material: { token: 'palette.tpl-dfe4e8', transparent: true }, palette: { 'palette.tpl-dfe4e8': '#dfe4e8' } } as never)
|
|
15
15
|
return m.asset
|
|
16
16
|
}
|