Tuesday, August 23, 2011

IfcOpenShell needs your help!

Building Information Modeling is about collaboration, Open Source Software is about collaboration. This makes IfcOpenShell, being open source BIM software, about collaboration2 (I'm no math genius though, there might be an error somewhere in this equation). Therefore IfcOpenShell needs your help, this blog post is about what can you do to help improve IfcOpenShell, the open source IFC implementation.

Write code
The bug tracker and feature request tracker are running over with interesting things to develop, but feel free to come up with and implement your own ideas. There's stuff for everyone, whether you are a python hacker, a C++ hacker or a Java hacker. Patches can be submitted to the patches tracker and with one or two of them you might earn yourself prestegious write access to the repository.

Create IFC files
Preferably these are isolated test cases of things that either work or do not work in IfcOpenShell. If they do not work, please be so kind to upload them to the bug tracker and state what you'd expect to see and what you witnessed instead.

Add feature requests and submit bugs
Feature requests are to be posted in the feature request tracker, handle with care though, as the most interesting ones might take some time to be implemented due to understaffing. Bug reports can be filed over here.

Write documentation
Like every other open source project our wiki is rather empty. Let me know if you want to do something about it. 

Build binaries
IfcOpenShell can be used on a lot of different platforms and operating systems, but currently only windows binaries are provided on the website. With your help we can provide binaries on our website for your favorite operating system too.

Come join us at the newly opened developers forum, where features, bugs and everything related to IFC and the building and construction industry in general can be discussed.

Provide a financial incentive
This last one is rather tricky, but of course, might you feel like it, there is the possibility to make a donation in order to urge us to develop faster, better and nicer features. But honestly, a small donation of your time to do one of the above would be appreciated even more.

IfcOpenShell admin


  1. Hi my name is Rafael. I am architect. Congratulation for this project. I think that is very interesting. I have posted about this project on my blog and read your interview in LGW. I am going to download your addon for Blender and will test it. I want to involve in your project, as well. I don't know to write code but I can help with the wiki. ;)
    My blog: bitacoravirtual.cl

  2. I've tried Blender IFC, and it is awesome.
    Donated =)

    1. Hi Paul,

      Thank you very much :)

      Kind regards,

  3. This comment has been removed by the author.

  4. Awesome stuff^^ Donated 100 =)
    Btw, is support of newer Blender version in your plans?
    An 2.73 is about to be ready)

    1. Thank you for your continued support!

      You are very right. A new release of IfcOpenShell and IfcBlender is way over due. Blender by now is many versions ahead and because they moved to Python 3.4, the addon is no longer compatible. But in addition, IfcOpenShell has many improvements to its code base, which users, who do not compile themselves, currently do not benefit from. A new release is very high on my list.

      Kind regards,

    2. Awww, update! Awesome =)
      Donated 100. Also, posted you on Blendernation:

      By the way, I have a question. I'm an AutoCAD AutoLISP programmer (yeah, sweet 1970's) an I was succed to convert autocad polyline to IFC Ceiling, that opens with your converter and Solibri. That was pretty awesome, because Solibri provides calculations on objects from IFC files =)

      How do you think, is it theoretically possible to write basic IFC objects (simple walls, ceilings, doors and windows) from Blender 3D for purposes like this?

    3. Hi Paul,

      Thanks for your continued support and for spreading the word!

      My opinion is that writing IFC files from Blender would only be feasible in very specific scenarios, like the one you describe. Which in itself is very cool, one can never have too many parenthesis! But a lot of information that is necessary to constitute a valid and meaningful IFC file simply has no place in a geometrical mesh-based application such as Blender. Apart from all the attributes, also consider the material layer set of a wall for example. Also, the hierarchical nature of IFC [to have a Project > Site > Building > Storey and Windows parented to Openings parented to Walls] would impose a high burden on the modeller, but is necessary for BIM authoring tools like Revit to make sense of the exported file.

      Have you tried importing your meshes into FreeCAD and export IFC from there?

      Kind regards,

    4. Yeah, indeed, Revit rejected my IFC because of abscense of project information =)
      However, Revit is not my goal, because it's modeling is imperative as Sketchup (you know, everyhing should be done to be done. manually). AutoCAD and B3D are much more functional, so they give me ability to perform nasty deadlines, that Revit will never get, I guess.
      It is impossible even to make and count our building facades in Revit, despite the fact that they are pretty simple, but there are a lot of cuts, and a lot of them. Meanwhile, B3D gives me ability to do this work for 5-6 buildings in a week from scratch, including materials count. Business produces cruel deadlines =)

      Well, I understood importance of structural cleanliness for IFC files when I was parsing some of them, and I understand all troubles, that may cause attempts to get pure project from B3D, but, fortunately, Revit project is not my goal =)
      I think about modeling of complex, maybe organic, but single objects, elements for Revit import, or fast linear buildings scratches for dirty calculations in Solibri.
      Everything I found till I got here about IFC development was mostly Java parsers, so I appreciate your work so much.
      Honestly, I installed FreeCAD a couple of months and didn't know about it's ability to write IFC... I will check it up =)

      Sorry for bad eng, and Thank you for your answer!

    5. Hi Paul,

      I definitely see your point, some applications do tend to impose their own way of working onto the user.

      In the earlier days, IFC has obtained a bit of a bad name simply because some implementations (I will not name names of course) were not as conforming as they could have been, resulting in limited interoperability and frustrated users. I would be reluctant to introduce this situation again.

      At the same time I do understand the need for more lightweight IFC workflows, both in terms of writing as well as reading and analysis. I would also advise to also take part in the discussions on the FreeCAD forum and see whether where that is heading suits your need: http://forum.freecadweb.org/viewtopic.php?f=23&t=7222 I have understood the upcoming FreeCAD 0.15 release will feature many improvements in IFC importing and exporting. You might want to try a development snapshot of that version.

      Kind regards,