View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001005 | Arch | Feature | public | 2013-02-14 20:57 | 2013-12-26 13:41 |
Reporter | yorik | Assigned To | yorik | ||
Priority | normal | Severity | minor | Reproducibility | N/A |
Status | closed | Resolution | fixed | ||
Target Version | 0.14 | ||||
Summary | 0001005: Arch module - IFC export | ||||
Description | Allow to export to IFC files | ||||
Tags | No tags attached. | ||||
FreeCAD Information | |||||
|
Notes on implementation: 1) Create a base project - if the export set contains at least one valid site->building->floor structure, create from it (them) - else create a default one 2) Get IFC type of each object - if the object has some form of override (Role property, etc), use it - else create from arch type 3) Get representation data of each object Check for the geometry type, to decide which geometry to use to export arch objects to IFC, using the most straightforward available: - extruded polyline ( IfcSweptAreaSolid ). We need the base polyline, and an extrusion vector. http://www.buildingsmart-tech.org/ifc/IFC2x4/rc1/html/ifcgeometricmodelresource/lexical/ifcsweptareasolid.htm - faceted solid ( IfcFacetedBrep ). Only flat faces, and only line-based edges. Faces must have their edgeloop ordered, and inner wires must be reversed. http://www.buildingsmart-tech.org/ifc/IFC2x4/rc1/html/ifcgeometricmodelresource/lexical/ifcfacetedbrep.htm - full brep ( IfcAdvancedBrep ). This is more complex, and should be used when there are curve-based edges. Maybe aothms can help with some auto conversion there. http://www.buildingsmart-tech.org/ifc/IFC2x4/rc1/html/ifcgeometricmodelresource/lexical/ifcadvancedbrep.htm Additions and subtractions are also treated: - windows are treated as IfcOpeningElement. their shape follows the same rule as above. - subwalls should not be subtracted, should be made into separate walls. See if there is a way to relate them somehow. - other additions and subtractions are IfcBooleanResults http://www.buildingsmart-tech.org/ifc/IFC2x4/rc1/html/ifcgeometricmodelresource/lexical/ifcbooleanresult.htm So to get ifc representation data from arch objects we should follow the following path: - if they are based on an extruded polyline, return polyline points + extrusion vector - else if they are based on flat faces, return a list of wires lists - else go for full brep (now figure out how to do that :( ) - create and return subtraction objects - create and return addition objects - bind additions and subtractions |
|
Working IFC writer already done: https://gist.github.com/yorikvanhavre/6040612 |
|
Basically working now, except bugfixing. Additonal items: - Add preferences settings to set a custom path to ifcopenshell - Make the importer use the new version if available |
FreeCAD: master df596822 2013-12-17 19:44:08 Details Diff |
Arch: added ifc writer |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/CMakeLists.txt | Diff File | ||
add - src/Mod/Arch/ifcWriter.py | Diff File | ||
mod - src/WindowsInstaller/ModArch.wxi | Diff File | ||
FreeCAD: master 990ece8c 2013-12-17 22:47:04 Details Diff |
Arch: More work on the IFC exporter |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/ArchCommands.py | Diff File | ||
mod - src/Mod/Arch/ArchStructure.py | Diff File | ||
mod - src/Mod/Arch/Arch_rc.py | Diff File | ||
mod - src/Mod/Arch/Resources/ui/archprefs-import.ui | Diff File | ||
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
mod - src/Mod/Arch/importIFC.py | Diff File | ||
FreeCAD: master 5224e9a2 2013-12-19 23:41:42 Details Diff |
Arch: Further work on the IFC exporter, now supports windows and bldg hierarchy |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/ArchCommands.py | Diff File | ||
mod - src/Mod/Arch/ArchWindow.py | Diff File | ||
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
mod - src/Mod/Arch/importIFC.py | Diff File | ||
mod - src/Mod/Draft/Draft.py | Diff File | ||
FreeCAD: master 55c0253c 2013-12-20 16:25:41 Details Diff |
Arch: added workarounds for export bugs in ifcopenshell |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
FreeCAD: master 8db8db4a 2013-12-20 22:41:58 Details Diff |
Arch: more bugfixing in ifc exporter |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
FreeCAD: master b8a8f186 2013-12-21 02:39:46 Details Diff |
Arch: Still more fixes to ifc export... |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
mod - src/Mod/Arch/importIFC.py | Diff File | ||
FreeCAD: master 7ceef577 2013-12-26 14:38:30 Details Diff |
Arch: Added IFC export to the GUI + using new ifcopenshell for import - fixes 0001005 |
Affected Issues 0001005 |
|
mod - src/Mod/Arch/InitGui.py | Diff File | ||
mod - src/Mod/Arch/ifcWriter.py | Diff File | ||
mod - src/Mod/Arch/importIFC.py | Diff File | ||
mod - src/Mod/Draft/DraftGeomUtils.py | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-02-14 20:57 | yorik | New Issue | |
2013-02-14 20:57 | yorik | Status | new => assigned |
2013-02-14 20:57 | yorik | Assigned To | => yorik |
2013-11-01 14:35 | yorik | Note Added: 0003845 | |
2013-11-01 14:35 | yorik | Note Added: 0003846 | |
2013-11-01 14:36 | yorik | Note Edited: 0003846 | |
2013-12-23 13:51 | yorik | Note Added: 0003974 | |
2013-12-23 13:52 | yorik | Changeset attached | => FreeCAD Master master b8a8f186 |
2013-12-23 13:52 | yorik | Changeset attached | => FreeCAD Master master 8db8db4a |
2013-12-23 13:53 | yorik | Changeset attached | => FreeCAD Master master 55c0253c |
2013-12-23 13:53 | yorik | Changeset attached | => FreeCAD Master master 5224e9a2 |
2013-12-23 13:53 | yorik | Changeset attached | => FreeCAD Master master 990ece8c |
2013-12-23 13:54 | yorik | Changeset attached | => FreeCAD Master master df596822 |
2013-12-26 13:41 | yorik | Changeset attached | => FreeCAD Master master 7ceef577 |
2013-12-26 13:41 | yorik | Status | assigned => closed |
2013-12-26 13:41 | yorik | Resolution | open => fixed |