bimtex

parking

Panel van 2

panel-van-2 dresses asset:van — and nothing else. Appearance is invisible to the drawing set, so adding this changes no plan, no section and no elevation.

  • 23of 500 meshes
  • 7slots
  • 1finish

Drag to orbit · scroll to zoom

The build. Made here, now, by the same interpreter a model gets.
Panel van 2, shown as a photorealistic visual reference
The reference. AI-generated, not bimtex output — the authored input this body was written against.
$frame
$glazing
$hardware:tyre
$hardware:rim
$surface:head
$surface:tail
$hardware:hardware

This definition leaves $frame and $glazing and $hardware:tyre and $hardware:rim and $surface:head and $surface:tail and $hardware:hardware 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 7 materialdefs the body resolves to, then the definition. Copying the lookdef alone still compiles and still validates — it just renders grey.

{"t":"materialdef","id":"pack-car-glass","of":"glass","value":20,"body":{"type":"MeshPhysicalMaterial","transmission":0.62,"ior":1.46,"thickness":0.02}}
{"t":"materialdef","id":"pack-car-graphite","of":"car-paint","value":20,"accent":"#33383d","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-car-white","of":"car-paint","value":86,"accent":"#eceeea","body":{"type":"MeshPhysicalMaterial"}}
{"t":"materialdef","id":"pack-head-lamp","of":"paint","value":92,"accent":"#fdf6de","body":{"emissive":"#fdf6de","emissiveIntensity":1.6,"roughness":0.2}}
{"t":"materialdef","id":"pack-tail-lamp","of":"paint","value":20,"accent":"#8d2a24","body":{"emissive":"#a32a20","emissiveIntensity":1.1,"roughness":0.3}}
{"t":"materialdef","id":"pal-steel","of":"steel","value":72}
{"t":"materialdef","id":"pal-steel-dark","of":"steel","value":20}
{"t":"lookdef","id":"panel-van-2","for":"asset:van","desc":"Boxy panel van with solid cargo sides and short bonnet.","slots":{"frame":"pack-car-white","glazing":"pack-car-glass","hardware:tyre":"pal-steel-dark","hardware:rim":"pal-steel","surface:head":"pack-head-lamp","surface:tail":"pack-tail-lamp","hardware:hardware":"pack-car-graphite"},"note":"Panel van, 2.02 x 5.30 x 2.12 m — the vehicle a van-accessible stall is sized for. Glazed at the cab only; the body behind it is solid, which is what makes a van read as a van.","body":{"type":"Group","children":[{"type":"Mesh","material":"$hardware:tyre","geometry":{"type":"CylinderGeometry","radiusTop":0.25,"radiusBottom":0.25,"height":0.12,"radialSegments":22},"position":[-0.82,0.25,-0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:rim","geometry":{"type":"CylinderGeometry","radiusTop":0.13,"radiusBottom":0.13,"height":0.132,"radialSegments":22},"position":[-0.82,0.25,-0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:tyre","geometry":{"type":"CylinderGeometry","radiusTop":0.25,"radiusBottom":0.25,"height":0.12,"radialSegments":22},"position":[-0.82,0.25,0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:rim","geometry":{"type":"CylinderGeometry","radiusTop":0.13,"radiusBottom":0.13,"height":0.132,"radialSegments":22},"position":[-0.82,0.25,0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:tyre","geometry":{"type":"CylinderGeometry","radiusTop":0.25,"radiusBottom":0.25,"height":0.12,"radialSegments":22},"position":[0.82,0.25,-0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:rim","geometry":{"type":"CylinderGeometry","radiusTop":0.13,"radiusBottom":0.13,"height":0.132,"radialSegments":22},"position":[0.82,0.25,-0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:tyre","geometry":{"type":"CylinderGeometry","radiusTop":0.25,"radiusBottom":0.25,"height":0.12,"radialSegments":22},"position":[0.82,0.25,0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$hardware:rim","geometry":{"type":"CylinderGeometry","radiusTop":0.13,"radiusBottom":0.13,"height":0.132,"radialSegments":22},"position":[0.82,0.25,0.47],"rotation":[1.5707963267948966,0,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"RoundedBoxGeometry","width":2.6,"height":0.48,"depth":0.92,"radius":0.11,"segments":4},"position":[0,0.46,0]},{"type":"Mesh","material":"$frame","geometry":{"type":"ExtrudeGeometry","profile":[[-1.28,0],[-1.18,0.22],[-1,0.72],[-0.68,0.86],[-0.3,0.86],[-0.3,0]],"depth":0.86,"curveSegments":8,"bevelEnabled":false},"position":[0,0.44,-0.43]},{"type":"Mesh","material":"$frame","geometry":{"type":"RoundedBoxGeometry","width":1.62,"height":0.9,"depth":0.86,"radius":0.08,"segments":4},"position":[0.42,0.89,0]},{"type":"Mesh","material":"$glazing","geometry":{"type":"ShapeGeometry","profile":[[-0.98,0.76],[-0.88,1.16],[-0.66,1.27],[-0.54,0.76]],"curveSegments":8},"position":[0,0,0.445]},{"type":"Mesh","material":"$glazing","geometry":{"type":"ShapeGeometry","profile":[[-0.51,0.76],[-0.5,1.27],[-0.32,1.27],[-0.32,0.76]],"curveSegments":8},"position":[0,0,0.446]},{"type":"Mesh","material":"$glazing","geometry":{"type":"RoundedBoxGeometry","width":0.035,"height":0.43,"depth":0.72,"radius":0.012,"segments":3},"position":[-1.02,0.99,0],"rotation":[0,0,-0.23]},{"type":"Mesh","material":"$hardware:hardware","geometry":{"type":"RoundedBoxGeometry","width":0.16,"height":0.07,"depth":0.88,"radius":0.018,"segments":3},"position":[-1.28,0.31,0]},{"type":"Mesh","material":"$hardware:hardware","geometry":{"type":"RoundedBoxGeometry","width":1.65,"height":0.065,"depth":0.035,"radius":0.012,"segments":3},"position":[0.35,0.46,0.47]},{"type":"Mesh","material":"$hardware:hardware","geometry":{"type":"RoundedBoxGeometry","width":0.025,"height":0.55,"depth":0.025,"radius":0.006,"segments":2},"position":[0.58,0.87,0.471]},{"type":"Mesh","material":"$hardware:hardware","geometry":{"type":"RoundedBoxGeometry","width":0.12,"height":0.035,"depth":0.025,"radius":0.006,"segments":2},"position":[-0.4,0.86,0.472]},{"type":"Mesh","material":"$surface:head","geometry":{"type":"RoundedBoxGeometry","width":0.07,"height":0.13,"depth":0.22,"radius":0.018,"segments":3},"position":[-1.295,0.52,-0.28]},{"type":"Mesh","material":"$surface:head","geometry":{"type":"RoundedBoxGeometry","width":0.07,"height":0.13,"depth":0.22,"radius":0.018,"segments":3},"position":[-1.295,0.52,0.28]},{"type":"Mesh","material":"$surface:tail","geometry":{"type":"RoundedBoxGeometry","width":0.035,"height":0.22,"depth":0.13,"radius":0.014,"segments":3},"position":[1.295,0.57,-0.34]},{"type":"Mesh","material":"$surface:tail","geometry":{"type":"RoundedBoxGeometry","width":0.035,"height":0.22,"depth":0.13,"radius":0.014,"segments":3},"position":[1.295,0.57,0.34]},{"type":"Mesh","material":"$hardware:hardware","geometry":{"type":"RoundedBoxGeometry","width":0.035,"height":0.16,"depth":0.66,"radius":0.01,"segments":3},"position":[-1.3,0.35,0]}]},"preview":{"projection":"perspective","azimuth":40,"elevation":16,"fov":29,"margin":1.01}}

Or take the whole pack, which brings every entry and every material at once:

cat packs/parking.ndjson model.ndjson > dressed.ndjson
Download parking pack 53 KB · NDJSON ↓