Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IFC-compliant workflow #94

Open
4 of 14 tasks
yorikvanhavre opened this issue Jun 19, 2022 · 4 comments
Open
4 of 14 tasks

IFC-compliant workflow #94

yorikvanhavre opened this issue Jun 19, 2022 · 4 comments
Assignees
Labels
Feature New feature or request

Comments

@yorikvanhavre
Copy link
Owner

yorikvanhavre commented Jun 19, 2022

Idea: being able to load and save IFC files with minimal or no data loss. while preserving FreeCAD's free modelling paradigms that are not too tied to the IFC structure

Workflow

  • Open an IFC file
  • Modify some elements
  • Save the IFC file
  • Only the modified elements are modified, the rest stays the same

Implementation

  • The file is imported "the normal way", this is different than BlenderBIM: not supported entities are discarded, and the different import styles of FreeCAD continue to work
  • When opening an IFC file, an entry is created in the document meta, referring to the original IFC file, wtih sha hash
  • Alternative: The whole IFC file can be embedded?
  • IFC objects are created with an "unmodified" tag
  • The user modifies, creates objects, etc... normally. For each of them, the "unmodified" tag is removed. Deleted objects are added to some delete log
  • When saving to IFC (being the original IFC file or a new one), the original file is read first
  • If IFC data is unavailable, or if the sha has changed, the user is warned
  • The ifcbin is ran on the file to collect/catalog existing elements
  • The existing building structure is collected
  • New IFC shape representations are generated
  • Existing objects are updated, new objects are created, deleted objects are deleted. Attached shape representation sare collected
  • Shape representations are deep-deleted, with elements that only depend on them
  • Exported objects are marked as unmodified
  • The new hash is stored, or the included IFC content is updated
@yorikvanhavre yorikvanhavre self-assigned this Jun 19, 2022
@brunopostle
Copy link

Linking to this discussion on 'Native IFC' definitions for reference: IfcOpenShell/IfcOpenShell#2240

@luzpaz
Copy link
Collaborator

luzpaz commented Jul 4, 2022

Sweet, thanks @brunopostle !

@yorikvanhavre
Copy link
Owner Author

To use the new BIM IFC importer where most of the work here is gonna be done, several options:

  1. Use latest FreeCAD code, then there is nothing to do (just make sure Preferences -> import/export -> IFC -> multicore is > 0)
  2. In Open/Import file dialog, make sure to select "Industry Foundation Classes (BIMWB)" as the importer

@yorikvanhavre yorikvanhavre added the Feature New feature or request label Sep 21, 2022
@Moult
Copy link
Contributor

Moult commented Oct 15, 2022

I might recommend starting with a smaller scope, like attribute editing :) I'm super keen for this to be a reality!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants