Sculptural loop bench
sculptural-loop-bench
dresses asset:bench
— and nothing else. Appearance is invisible to the drawing set, so adding this changes no
plan, no section and no elevation.
- 7of 500 meshes
- 2slots
- 1finish
Drag to orbit · scroll to zoom
$surface
$frame
This definition leaves
$surface and $frame
open, and a look line fills them. Every combination is one body — same
geometry, same selector, same sheets — so the block below rewrites itself as you pick.
Only materials are slottable: a size would have to agree with the plan, so it stays on
the entity.
Paste this
Every part: the 1 materialdef the body resolves to, then the definition. Copying the lookdef alone still compiles and still validates — it just renders grey.
{"t":"materialdef","id":"pal-timber-dark","of":"timber","value":42}
{"t":"lookdef","id":"sculptural-loop-bench","name":"Sculptural loop bench","for":"asset:bench","desc":"Continuous bent-loop bench read as outdoor sculpture and communal seating.","slots":{"surface":"pal-timber-dark","frame":"qsr-charcoal"},"note":"A backless landscape bench with exactly four oak slats held between two continuous graphite ribbon loops. Each end is a flat open plate rather than a round tube, keeping the reference construction legible.","body":{"type":"Group","children":[{"type":"Mesh","material":"$frame","geometry":{"type":"ExtrudeGeometry","depth":0.12,"profile":[[-0.32,0],[0.32,0],[0.42,0.04],[0.46,0.14],[0.46,0.46],[0.42,0.56],[0.32,0.6],[-0.32,0.6],[-0.42,0.56],[-0.46,0.46],[-0.46,0.14],[-0.42,0.04]],"holes":[[[-0.25,0.1],[0.25,0.1],[0.31,0.13],[0.34,0.19],[0.34,0.39],[0.31,0.45],[0.25,0.48],[-0.25,0.48],[-0.31,0.45],[-0.34,0.39],[-0.34,0.19],[-0.31,0.13]]],"bevelEnabled":true,"bevelThickness":0.012,"bevelSize":0.012,"bevelSegments":2},"position":[-1.1,0,0],"rotation":[0,1.5708,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"ExtrudeGeometry","depth":0.12,"profile":[[-0.32,0],[0.32,0],[0.42,0.04],[0.46,0.14],[0.46,0.46],[0.42,0.56],[0.32,0.6],[-0.32,0.6],[-0.42,0.56],[-0.46,0.46],[-0.46,0.14],[-0.42,0.04]],"holes":[[[-0.25,0.1],[0.25,0.1],[0.31,0.13],[0.34,0.19],[0.34,0.39],[0.31,0.45],[0.25,0.48],[-0.25,0.48],[-0.31,0.45],[-0.34,0.39],[-0.34,0.19],[-0.31,0.13]]],"bevelEnabled":true,"bevelThickness":0.012,"bevelSize":0.012,"bevelSegments":2},"position":[0.98,0,0],"rotation":[0,1.5708,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"BoxGeometry","width":1.95,"height":0.035,"depth":0.66},"position":[0,0.49,0]},{"type":"Mesh","material":"$surface","geometry":{"type":"RoundedBoxGeometry","width":1.94,"height":0.08,"depth":0.17,"radius":0.018},"position":[0,0.56,-0.285]},{"type":"Mesh","material":"$surface","geometry":{"type":"RoundedBoxGeometry","width":1.94,"height":0.08,"depth":0.17,"radius":0.018},"position":[0,0.56,-0.095]},{"type":"Mesh","material":"$surface","geometry":{"type":"RoundedBoxGeometry","width":1.94,"height":0.08,"depth":0.17,"radius":0.018},"position":[0,0.56,0.095]},{"type":"Mesh","material":"$surface","geometry":{"type":"RoundedBoxGeometry","width":1.94,"height":0.08,"depth":0.17,"radius":0.018},"position":[0,0.56,0.285]}]}}
Or take the whole pack, which brings every entry and every material at once:
cat packs/site-assets.ndjson model.ndjson > dressed.ndjson
Download site-assets pack
60 KB · NDJSON ↓