BBIM Landscape Elements IFC Libary
Starting working on ifc library of landscape elements that will go with BlenderBIM (similarly to furniture library we already have).
What are the must-have 2d (and perhaps 3d?) shapes for plants and trees and their dimensions for that library.
Is there other landscape assets that might come in handy besides plants and trees? Maybe there is some .ifc you can share for reference?
Ping @baswein ?
Comments
My suggestions
Trees tall, small and wide.
They obviously come in all different sizes, but generally 3 sizes would be good
1.8m tall, 5m tall and 15m, just random sizes that roughly translate to a person height, building height and multi-storey building height
Then 2 types of each height, 1 with a spherical shape on a stick (like a lollipop) and another with a cone shape (like a Christmas tree)
Hedges
again rough related sizes
400mm tall, 800mm tall, 1.8m tall
These are about a seat height, balustrade height and then person height
Shrubs
same as hedges 400mm tall, 800mm tall, 1.8m tall
I am not a landscape architect, but this is generally what I would find useful, it's all mostly based on relative sizes, it actually works better in inches and feet but in metric these sizes make sense
@baswein would/could these be dynamic, so a tree's diameter and height could be set with a 2d view and a simple 3d model?
As a non-landscape architect I would assume hedging to be represented by a profileset similar to beams of a simple rectangle? And shrubs to be say just single cylinders? Naturally the PLAN 2D representation can be fancier.
Thanks everyone for jumping on this. I'm a little overwhelmed right now.
There is a good paper https://www.researchgate.net/publication/355135381_IFC-CENTRIC_VEGETATION_MODELLING_FOR_BIM (also in this thread https://community.osarch.org/discussion/585/ ) that proposes a pretty well thought out system.
I'll see if I can writeup some more later today.
These are a nice balance of sufficient form and low poly
I wrote a script to generate the objects as described in the paper, you can find it here:
https://github.com/JanFilipec/IFC-library-generator/blob/main/CSV Library generator/test/Low Poly Tree.ipynb
I also think publishing these objects as a Jupyter notebooks might be a good way of sharing them, as anyone can also directly see the result or test with different parameters.
Generated from a csv file, with the csv library generator!
https://community.osarch.org/discussion/comment/18153/#Comment_18153
@JanF hi! Can I reuse your code in BlenderBIM trees generator?
maybe it's wishful thinking :) but if you are thinking of building a tree generator for the BlenderBim Addon then the following examples are some common shapes and generic (English) names.
Sure, go ahead, that's what it's made for.
What is a BlenderBIM trees generator going to be? I was hoping the library generator script would eventually evolve into a content management system, where you could control all your types' properties through a spreadsheet.
I am planning to use Blender Bim to use create planting plan and irrigation plans. Especially in the phase of LOD - 100 (concept making)
bubble drawings in a 3d form so planting forms and their influence over environment can be understand easily. As mentioned in the YouTube tutorial video for making a custom window type in Blender Bim channel I created a simple cylinder and sphere and joined the geometry to represent a simple plant. And assigned a IFC Geographic element type vegetation to it.
In Plan view the mesh wireframe was shown even though I prepare a separate plan view annotation geometry as circles. How do I solve this?
@Moult @JanF @Nigel can you please explain what's happening in the drawing ?
Your tree is being cut and so it is showing the tessellated mesh geometry of the cut. What you want to do is create a Plan / Body / PLAN_VIEW representation which is a pure 2D plan representation of your tree.
I've used it to generate some simple trees assets for landscape library and just commited it to BlenderBIM.
I've used the dimensions Ifc Architect provided at the beginning of this discussion and created assets with some basic shapes.
If anyone want to contribute (not sure what other shapes are the most common to include in the library) I have a Blender library (attached it below) I was using for tests, it's using the same parameters that were used later to generate IFC assets.
In this .blend file you can run the attached script and then you'll be able to use trees generator (Example - https://imgur.com/a/B8LU0Dl) and then you can contribute some new trees and sizes to the library (it will be as simple as plugging in new trees parameters in the existing script).
I'll leave the python script here too, maybe someone will need it later - https://pastebin.com/k37KKBMW
@Andrej730 amazing work! It's definitely needed for Architectural drawings
I've just had a try at making the different trees and they look good! Unfortunately the simple tree doesn't seem to be showing in 2d?
You can see it in the model here:
Also the one shrub is labled a shrum :
Regarding the hedges and the shrubs it would be cool if they were more distinct,
hedges tend to be a square or rectangular shape:
And shrubs a bit more spiky (at least this is the convention I am familiar with):
And palm trees in plan tend to have a few more leaves:
These don't need to be so detailed and It's really subjective but I think it's important they are distinct from each other in plan
I've included the Ifc for the simple tree here
I've made some simplified versions to match the 2d style of the tree here:
They are Ifc Lines in the Ifc file attached
It would nearly be better if the Hedge could be edited like a floor (for the shape) and it's boundary was generated like the revision cloud boundary with an edged pattern
Couldn't this be done with an SVG path line type?
Do we get cactus family plants ( succulentus) ? some of these are similar to trees...
Make it happen thats a very ignored category elsewhere ! Can someone contribute to the specifications of cacti (succulentus) type plants/ trees... ?
@Omeyotzin127 if you draw up a succulent I'm absolutely sure @Andrej730 can include it!
Completely agree with the improvements suggested by @Ace !
Hi, last semester in school, i took
a landscaping class and used blenderBIM to create all of my drawing, landscaping drawings, so i actually created quiet a few trees to my personal library, and i took advantage of the different view, that way i had a view for my cut section and my plan section, that whay i could have al of my different trees in with their specific drawings for each species
A sample of my trees
I also want to show one of my final drawings, in which i took advantage of CSS information and making custom hatches in inkscape to create my different types of hatches. All done in blenderBIM
@SavyGust27 that looks absolutely beautiful. Would you be OK with sharing these plan / section 2D files with @Andrej730 to implement ? Trees styles are a big part of personal taste so having a variation of styles to choose from out of the box is really important to help distinguish between different species.
Sure, i can share them. the only thing is that the trees are named by their species in Spanish, but you could use what you want from the IfcTypes i made. Just a note, not all of my trees have a custom section view, the 3D model is based on real world measurements for the height and the foliage diameter, also the 2D representation in plan view is some times in a higher position from the origin.
@Moult Here the file attached was created using IFC schema IFC4. To use vegetation type on IFC geographic element the file needs to convert into schema IFC4x3. I tried using Ifc patch.migrate in blender bim. it gives an error
if value is None and not attribute.optional():
UnboundLocalError: local variable 'value' referenced before assignment.
What's this mean?
@ArLa The error message should say which file and line number failed, we need to see this.
..but assuming it this is the
migrate_attribute()
function inutil/schema.py
there is likely a bug here.The line that says
except UnboundLocalError:
should probably sayexcept NameError:
- try changing this and report back if it works.This issue is (probably) resolved after this commit, try to update BlenderBIM.
is this what you want to see?
Yes, but you have blanked out the critical filename.
Yes, now it's working.
@SavyGust27 I've now included your manually designed trees alongside @Andrej730 's generated ones and it'll be available in the next release :)
It's in its own blend file, so users can open it up, mix and match their preferred tree styles and plan styles to get their perfect tree so long as they follow the naming scheme. The script will auto pick up any trees you model and add it to the library. I've standardised all trees at 10m but of course its fairly trivial for anybody to scale a tree after they load it.