bimtex

trees

Fan palm

fan-palm dresses tree:palm — and nothing else. Appearance is invisible to the drawing set, so adding this changes no plan, no section and no elevation.

Used in examplesAster Court Hotel + Spa

  • 39of 500 meshes
  • 2slots
  • 1finish

Drag to orbit · scroll to zoom

The build. Made here, now, by the same interpreter a model gets.
Fan palm, shown as a photorealistic visual reference
The reference. AI-generated, not bimtex output — the authored input this body was written against.
$foliage
$bark

This definition leaves $foliage and $bark 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.

Generated views

The body and its drawing evidence

The deterministic renders check the body's footprint, structure and depth. Geometry, material and the selected finish stay unchanged.

Top renderEL 90° · ORTHOGRAPHIC
Rendered axonometricAZ 40° · EL 32°

Paste this

Every part: the 2 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-palm-bark","of":"timber","value":42,"accent":"#72563b","body":{"roughness":0.98}}
{"t":"materialdef","id":"pal-leaf-pale","of":"foliage","value":58}
{"t":"lookdef","id":"fan-palm","for":"tree:palm","desc":"Fan palm with a tapered ringed trunk, arcing frond ribs, and a dense radial crown of broad visible leaflets.","slots":{"foliage":"pal-leaf-pale","bark":"pack-palm-bark"},"preview":{"projection":"perspective","azimuth":-34,"elevation":12,"fov":30,"margin":1.03},"body":{"type":"Group","children":[{"type":"Mesh","material":"$bark","geometry":{"type":"LatheGeometry","profile":[[0,0],[0.34,0],[0.32,0.3],[0.29,2.9],[0.26,3.5],[0,3.68]],"segments":20}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.45,0],[0.448,4.25,0],[1.984,5.05,0],[3.456,4,0]],"radius":0.055,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.48,0],[-0.4864,4.28,0],[-2.048,5.02,0],[-3.4816,3.97,0]],"radius":0.055,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.5,0],[0,4.3,0.448],[0,5.05,1.984],[0,3.95,3.456]],"radius":0.052,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.5,0],[0,4.3,-0.448],[0,5.08,-1.984],[0,4,-3.456]],"radius":0.052,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.52,0],[0.4096,4.35,0.4096],[1.5104,5.15,1.5104],[2.4576,4.27,2.4576]],"radius":0.05,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.52,0],[-0.4096,4.35,0.4096],[-1.5104,5.15,1.5104],[-2.4576,4.27,2.4576]],"radius":0.05,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.54,0],[0.4096,4.35,-0.4096],[1.5104,5.18,-1.5104],[2.4576,4.3,-2.4576]],"radius":0.05,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.54,0],[-0.4096,4.35,-0.4096],[-1.5104,5.18,-1.5104],[-2.4576,4.3,-2.4576]],"radius":0.05,"radialSegments":10,"tubularSegments":24,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.56,0],[0.192,4.5,0.064],[0.32,5.45,0.1024],[0.2304,5.8,0.064]],"radius":0.045,"radialSegments":10,"tubularSegments":20,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"TubeGeometry","path":[[0,3.56,0],[-0.1536,4.45,-0.1024],[-0.256,5.35,-0.1536],[-0.2048,5.7,-0.1024]],"radius":0.045,"radialSegments":10,"tubularSegments":20,"curve":"spline"}},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[2.125,3.8,0],"rotation":[0,0.15,0.34],"scale":[1.6275,0.261,0.497488]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-2.125,3.8,0],"rotation":[0,-0.15,-0.34],"scale":[1.6275,0.261,0.497488]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0,3.8,2.125],"rotation":[-0.34,0,0],"scale":[0.44268,0.261,1.829]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0,3.8,-2.125],"rotation":[0.34,0,0],"scale":[0.44268,0.261,1.829]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[1.5,3.98,1.5],"rotation":[-0.34,0.7853981633974483,0.34],"scale":[1.4973,0.2465,0.468224]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-1.5,3.98,1.5],"rotation":[-0.34,-0.7853981633974483,-0.34],"scale":[1.4973,0.2465,0.468224]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[1.5,3.98,-1.5],"rotation":[0.34,-0.7853981633974483,0.34],"scale":[1.4973,0.2465,0.468224]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-1.5,3.98,-1.5],"rotation":[0.34,0.7853981633974483,-0.34],"scale":[1.4973,0.2465,0.468224]},{"type":"Mesh","material":"$bark","geometry":{"type":"TorusGeometry","radius":0.3,"tube":0.025,"radialSegments":8,"tubularSegments":20},"position":[0,0.7,0],"rotation":[1.5707963,0,0]},{"type":"Mesh","material":"$bark","geometry":{"type":"TorusGeometry","radius":0.3,"tube":0.025,"radialSegments":8,"tubularSegments":20},"position":[0,1.45,0],"rotation":[1.5707963,0,0]},{"type":"Mesh","material":"$bark","geometry":{"type":"TorusGeometry","radius":0.3,"tube":0.025,"radialSegments":8,"tubularSegments":20},"position":[0,2.2,0],"rotation":[1.5707963,0,0]},{"type":"Mesh","material":"$bark","geometry":{"type":"TorusGeometry","radius":0.3,"tube":0.025,"radialSegments":8,"tubularSegments":20},"position":[0,2.95,0],"rotation":[1.5707963,0,0]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0.975,4.58,0],"rotation":[0.08,0,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[1.316528,4.66,0.545324],"rotation":[0.08,0.39269908169872414,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[1.325825,4.74,1.325825],"rotation":[0.08,0.7853981633974483,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0.373116,4.82,0.900783],"rotation":[0.08,1.1780972450961724,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0,4.58,1.425],"rotation":[0.08,1.5707963267948966,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-0.717531,4.66,1.732274],"rotation":[0.08,1.9634954084936207,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-0.689429,4.74,0.689429],"rotation":[0.08,2.356194490192345,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-1.316528,4.82,0.545324],"rotation":[0.08,2.748893571891069,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-1.875,4.58,0],"rotation":[0.08,3.141592653589793,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-0.900783,4.66,-0.373116],"rotation":[0.08,3.5342917352885173,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-1.007627,4.74,-1.007627],"rotation":[0.08,3.9269908169872414,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[-0.717531,4.82,-1.732274],"rotation":[0.08,4.319689898685965,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0,4.58,-0.975],"rotation":[0.08,4.71238898038469,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0.545324,4.66,-1.316528],"rotation":[0.08,5.105088062083414,0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[1.325825,4.74,-1.325825],"rotation":[0.08,5.497787143782138,-0.12],"scale":[0.682,0.09,0.248]},{"type":"Mesh","material":"$foliage","geometry":{"type":"IcosahedronGeometry","radius":1,"detail":1},"position":[0.900783,4.82,-0.373116],"rotation":[0.08,5.890486225480862,0.12],"scale":[0.682,0.09,0.248]}],"scale":[0.975488918,0.998359056,0.983234058]}}

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

cat packs/trees.ndjson model.ndjson > dressed.ndjson
Download trees pack 245 KB · NDJSON ↓