BCF support
This page is dedicated to the description of the Google Summer of Code 2019 project idea of adding BCF support to FreeCAD.
Outline[edit | edit source]
BIM Collaboration Format (or BCF) is a file format aimed at coordinating the work of several participants in a Building Information Modeling (BIM) project. The format specifications are maintained by BuildingSMART, the same consortium behind the IFC file format.
The BCF format implements a series of tools to allow users to create, annotate, classify, comment, discuss and solve issues on a BIM model. It works as a thin layer containing issues related to a BIM model. The BCF file itself doesn't contain or relate explicitly to the model, which allow different people who work on a same project but with different applications to still be able to discuss and process the same issues.
This project idea proposes to implement a BCF viewer for FreeCAD. The viewer would allow to:
- Open BCF files
- View the different issues with their comments and images (screenshots)
- Navigate in a FreeCAD model to a camera position stored in the BCF file
- Comment, annotate, classify and tag issues
- Create new issues, save screenshots and camera position
- Save BCF files
- If time permits, explore the possibilities of server-based BCF serving (API)
Details[edit | edit source]
- Get familiar with FreeCAD and the current state of BIM tools
- Get familiar with PySide and Qt
- Get familiar with the BCF format, gather a series of test files
- Implement the different functions needed to interact with BCF files and data
- Implement a Graphical User Interface to these functions
Expected Outcome[edit | edit source]
- Documentation. Like all open-source projects, it is of uttermost importance to document a lot everything you do. This allows for other people to take on and extend your work more easily.
- A complete, working GUI application, that works as a plugin/addon inside FreeCAD.
Future Possibilities[edit | edit source]
BCF use in the BIM industry is still at its infancy. One can think of many possible extensions, such as:
- Connecting with other (open-source) communication structures: forums, chat/messaging systems, etc...
- Connecting with other issues tracking systems
Project Properties[edit | edit source]
Skills[edit | edit source]
- Programming language: Python + PySide
- Knowledge of BIM modeling and workflows is a plus, or be ready to practice!
Difficulty[edit | edit source]
Medium
Additional Information[edit | edit source]
- Potential mentors: Yorik
GSOC 2019[edit | edit source]
This workbench was created during a GSOC 2019 by user 'podestplatz'. Relevant links:
- Dev logs
- FreeCAD blog - BCF integration (link)
- BCF git repo