Editing IfcOpenShell

From Wiki.OSArch

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
 
{{Infobox software
 
{{Infobox software
 
| icon      = Ifcopenshell logo.png
 
| icon      = Ifcopenshell logo.png
| screenshot = IfcOpenShell_screenshot.png
+
| screenshot =  
 
| website    = http://www.ifcopenshell.org/
 
| website    = http://www.ifcopenshell.org/
 
| source    = [https://github.com/IfcOpenShell/IfcOpenShell github]
 
| source    = [https://github.com/IfcOpenShell/IfcOpenShell github]
| license    = [https://github.com/IfcOpenShell/IfcOpenShell LGPL-3.0 & GPL-3.0]
+
| license    = LGPL3.0
 
| bugs      = [https://github.com/IfcOpenShell/IfcOpenShell/issues Report a bug]
 
| bugs      = [https://github.com/IfcOpenShell/IfcOpenShell/issues Report a bug]
 
| community  = [https://sourceforge.net/p/ifcopenshell/discussion/ Forum]
 
| community  = [https://sourceforge.net/p/ifcopenshell/discussion/ Forum]
| maturity  = Mature
+
| maturity  = [[Software_maturity|Mature]]
 
| donation  = [https://opencollective.com/opensourcebim OpenSourceBIM]
 
| donation  = [https://opencollective.com/opensourcebim OpenSourceBIM]
 
}}
 
}}
 
{{Template:IfcOpenShell}}
 
{{Template:IfcOpenShell}}
[[IfcOpenShell|IfcOpenShell]] is an open source (LGPL 3) software library that helps developers work with the [http://www.buildingsmart-tech.org/specifications/ifc-overview industry foundation classes]  (IFC) file format. The IFC file format can be used to describe building and construction data. The format is commonly used for [https://en.wikipedia.org/wiki/Building_information_modeling building information modelling] (BIM), for example, mechanical loading analysis, and thermal and energy efficiency studies.
+
[[IfcOpenShell|IfcOpenShell]] is an open source (LGPL 3) software library that helps developers work with the [http://www.buildingsmart-tech.org/specifications/ifc-overview industry foundation classes]  (IFC) file format. The IFC file format can be used to describe building and construction data. The format is commonly used for [https://en.wikipedia.org/wiki/Building_information_modeling building information modelling] (BIM), for example, mechanical loading analysis, and thermal and energy efficiency studies. IfcOpenShell is primarily a collection of C++ libraries, however, as it has [[Python|Python]] bindings, it can be integrated with programs like [[FreeCAD]] and [[Blender]].
 
 
IfcOpenShell is primarily a collection of C++ libraries, however, as it has [[Python|Python]] bindings, it can be integrated with programs like [[FreeCAD]] and [[Blender]]. It has support for Windows, Mac, and Linux. IfcOpenShell can be used as C++ developer libraries, through Python modules, via a number of Unix-style command line applications, or via graphical interfaces. The core libraries have support for IFC2X3, IFC4, IFC4.3, as well as custom IFC schemas defined by the user. Supported serialisations include IFC-SPF, IFC-JSON, IFC-XML, and IFC-HDF5.
 
 
 
IfcOpenShell supports geometry processing using the [[Open_CASCADE|Open CASCADE]] geometry kernel. IFC geometry may be uniformly triangulated regardless of their original definition.
 
 
 
IfcOpenShell is also unique in its extensive Python API, which includes hundreds of functions for common IFC manipulation operations. This API supports many aspects of IFC not usually supported in other tools, including cascading geometric coordinate changes, subgraph purging, appending elements, and extensive support for 4D and 5D BIM operations like cost formulas, critical path analysis, and calendar-based scheduling propagation. It is also unique in its support for HDF5 caching, voxel analysis for dealing with less than precise BIM geometry, and semantic SVG-based drawing generation.
 
  
 
=Tools=
 
=Tools=
  
In addition to a developer library, IfcOpenshell can be used through multiple command line tools which can be used independently or together :
+
IfcOpenshell contains multiple tools which can be used independently or together :
==[https://github.com/IfcOpenShell/IfcOpenShell/tree/v0.6.0/src/bcf bcf-python]==
 
A simple Python implementation of [[BIM_Collaboration_Format_(BCF)]]. The data model is described in data.py. Manipulation of BCF-XML is available via bcfxml.py and manipulation of BCF-API is available via bcfapi.py. See also [[:Category:BIM_Collaboration_Format_(BCF)]]. [[Category:BIM_Collaboration_Format_(BCF)]]
 
 
 
 
==[http://ifcopenshell.org/ifcconvert IfcConvert]==
 
==[http://ifcopenshell.org/ifcconvert IfcConvert]==
 
A command line tool to convert IFC to different format including :
 
A command line tool to convert IFC to different format including :
Line 102: Line 93:
  
 
=Softwares powered by ifcopenshell=
 
=Softwares powered by ifcopenshell=
 
The following lists of projects, academia, and industry organisations is incomplete. People who use IfcOpenShell are not required to advertise that they do so and IfcOpenShell is a community effort that does not collect or have a list of customers like private companies.
 
 
 
==FOSS projects==
 
==FOSS projects==
 
* [[BIMxBEM]] : import IfcRelSpaceBoundary, IfcSpace and related building elements geometry and data
 
* [[BIMxBEM]] : import IfcRelSpaceBoundary, IfcSpace and related building elements geometry and data
Line 110: Line 98:
 
* [[FreeCAD]] : ifcopenshell-python - import/export Parametric 3D modeler allowing you to easily modify your design.  
 
* [[FreeCAD]] : ifcopenshell-python - import/export Parametric 3D modeler allowing you to easily modify your design.  
 
* [[ifc-pipeline]] : IfcConvert / ifcopenshell - python
 
* [[ifc-pipeline]] : IfcConvert / ifcopenshell - python
* [https://youshengcode.github.io/IfcToolbox.Doc/#/ IFC Toolbox] No-code IFC editing uses IfcOpenShell for model conversions.
+
* [https://tridify.com/ Tridify] (Epic Megagrants recipient) Stream large & complex BIMs from the Cloud. A BIM Communication Service for all stakeholders with communication to issue management software.
 
* [https://github.com/opensourceBIM/BIMserver BIMServer] enables you to store and manage the information of a construction (or other building related) project.  
 
* [https://github.com/opensourceBIM/BIMserver BIMServer] enables you to store and manage the information of a construction (or other building related) project.  
 
* BIMSurfer
 
* BIMSurfer
* [https://www.openproject.org/ OpenProject] An open source commercial CDE that uses IfcOpenShell for model processing.
 
 
* [https://xeokit.io/ xeokit-sdk] An open source 3D graphics SDK from xeolabs for BIM and AEC. Built to view huge models in the browser. Used by industry leaders.
 
* [https://xeokit.io/ xeokit-sdk] An open source 3D graphics SDK from xeolabs for BIM and AEC. Built to view huge models in the browser. Used by industry leaders.
 +
* [https://augin.app/en/ Augin.app] Publish and view AEC content in augmented reality in the environment on a 1:1 scale.
  
 
==Proprietary projects==
 
==Proprietary projects==
 +
* [https://bimdata.io/ BIMData.io] Provides an integrated viewer capable of loading several tens of thousands of objects.
 
* [http://areo.io/ Areo] SMART Facilities Management
 
* [http://areo.io/ Areo] SMART Facilities Management
* [https://augin.app/en/ Augin.app] Publish and view AEC content in augmented reality in the environment on a 1:1 scale.
+
* [https://www.tridyme.com/ TriDyme] TriDyme helps construction's companies to develop their own cloud-based (online) applications.
* [https://bimdata.io/ BIMData.io] Provides an integrated viewer capable of loading several tens of thousands of objects.  
+
* [https://streambim.com/ StreamBIM] (previously known as Rendra.io) (Winner of 2020 buildingSMART Awards in Construction via Project Celsius)
* [https://bimforce.com/en/homepage/ Bimforce] for IFC drawing generation
 
* [https://www.cove.tools/ Cove.Tool] to integrate into Blender for sustainability analysis
 
* [https://modulize.io/ Modulize] - Uses IfcOpenShell "quite a lot"
 
* [https://regola.io/ Regola] - Used for model checking
 
 
* [https://rengabim.com/ RengaSoftware] - used in [https://github.com/IfcOpenShell/IfcOpenShell/issues/1028#issuecomment-776085665 various operations] internally
 
* [https://rengabim.com/ RengaSoftware] - used in [https://github.com/IfcOpenShell/IfcOpenShell/issues/1028#issuecomment-776085665 various operations] internally
* [https://www.spectar.io/ Spectar] - Used for IFC conversions
 
* [https://streambim.com/ StreamBIM] (previously known as Rendra.io) (Winner of 2020 buildingSMART Awards in Construction via Project Celsius)
 
* [https://tridify.com/ Tridify] (Epic Megagrants recipient) Stream large & complex BIMs from the Cloud. A BIM Communication Service for all stakeholders with communication to issue management software.
 
* [https://www.tridyme.com/ TriDyme] TriDyme helps construction's companies to develop their own cloud-based (online) applications.
 
* [https://github.com/louistrue/PythonForIFC/tree/main/IfcPropertyRenamer IfcPropertyRenamer] A GUI to bulk rename properties
 
* [https://ifcdev.baseapps.net/viewer IFC Werkzeug] A web app to view and edit data about IFCs
 
 
==Academia==
 
  
 
IfcOpenShell is also used in university courses around the world.
 
IfcOpenShell is also used in university courses around the world.
  
* École Polytechnique Fédérale de Lausanne (EPFL Switzerland)
 
 
* Fachhochschule Nordwestschweiz FHNW (University of Applied Sciences and Arts Northwestern Switzerland)
 
* Fachhochschule Nordwestschweiz FHNW (University of Applied Sciences and Arts Northwestern Switzerland)
* Federal University of Viçosa in Brazil
+
* MSc-education of Architecture, Civil Engineering and Construction & Robotics tracks at RWTH Aachen University and TU Eindhoven
* MSc-education of Architecture, Civil Engineering and Construction & Robotics tracks at RWTH Aachen University in Germany
 
* Technical University of Denmark
 
* TU Eindhoven in the Netherlands
 
* Parametric Design with Visual Programming in BIM by the Online Zigurat Global Institute for Technology
 
* [https://bimfag.no/ BIMfag] Courses for BIM technicians in Norway
 
* Tallinn University of Technology in Estonia
 
* [https://ideamechelen.be/masterclass-building-intelligence Masterclass Building Intelligence] Thomas More Mechelen in Belgium
 
 
 
It has also been a primary contributor in a number of research papers.
 
 
 
* [https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=ifcopenshell&btnG= IfcOpenShell results on Google Scholar]
 
* [https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=blenderbim&btnG= BlenderBIM Add-on results on Google Scholar]
 
 
 
==Industry==
 
 
 
IfcOpenShell is known to be used in various companies and organisations. Size is roughly based on employee numbers: tiny (1-10), small (<100), medium (<1000), large.
 
 
 
{| class="wikitable"
 
|-
 
! Name !! Country !! Company Size !! Sector
 
|-
 
| AF Gruppen Norge AS || Norway || Large || Example
 
|-
 
| Ai.K Data Labs || India || Tiny || Example
 
|-
 
| BAUPUNKTNULL AG || Switzerland || ? || Example
 
|-
 
| BCCV || Morocco || Tiny || Example
 
|-
 
| bda2bim|| France || Tiny || Example
 
|-
 
| Bouygues Construction || Australia || Large || Example
 
|-
 
| Brasfield & Gorrie || USA|| Large || General Contractor
 
|-
 
| Bylor || UK || Large || Example
 
|-
 
| Géo²Concept || France|| Small || Example
 
|-
 
| Geosurv || Australia || Small || Example
 
|-
 
| John Holland || Australia || Large || Example
 
|-
 
| Ingenieursbureau 3BM || Netherlands || Example || Example
 
|-
 
| Laing O'Rourke || Australia || Large || Example
 
|-
 
| LAB Entreprenør AS || Norway || Medium || Example
 
|-
 
| Lendlease || Australia || Large || Example
 
|-
 
| Norconsult Norge AS || Norway || Large || Example
 
|-
 
| OpeningDesign || USA || Tiny || Example
 
|-
 
| Société des Grands Projets || France || Medium || Example
 
|-
 
| Spectar || USA || Small || Example
 
|-
 
| Tietoa Finland Oy || Finland || Small || Example
 
|-
 
| Transport for NSW || Australia || Large || Example
 
|-
 
| WSP || Australia || Large || Example
 
|}
 
  
 
=Installation=
 
=Installation=
Line 223: Line 134:
  
 
https://github.com/bimfag/intro-python-bim (by Sigve Martin Pettersen and Hans Martin Eikerol)
 
https://github.com/bimfag/intro-python-bim (by Sigve Martin Pettersen and Hans Martin Eikerol)
 
https://github.com/jakob-beetz/ifcopenshell-notebooks (by Jakob Beetz)
 
 
* Tutorial and code examples:
 
 
https://github.com/stefkeB/ifcopenshell_examples (by Stefan Boeykens)
 
  
 
[[Category:IfcOpenShell]]
 
[[Category:IfcOpenShell]]
 
[[Category:Software]]
 
[[Category:Software]]
 
[[Category:Industry Foundation Classes (IFC)]]
 
[[Category:Industry Foundation Classes (IFC)]]

Please note that all contributions to Wiki.OSArch are considered to be released under the Creative Commons Attribution-ShareAlike (see Wiki.OSArch:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Templates used on this page: