Helpful tools (Toolboxes)
Background information on toolboxes, for a listing see here:
Many companies that implement IFC make use of a toolkit. It can be seen as a database that stores the IFC data and can be accessed to read/write and edit the IFC model. A toolkit does not have to be specifically written for IFC or IFC4. Generic STEP Express toolkits will do the job, note that many STEP Express toolkits will also import/export ifcXML serialization. Toolboxes are also differentiated by the programming languages they support, such as Java, C++, C#, etc.
When starting using a toolbox it is important to know if you want to use late binding or early binding:
- Late binding: the toolbox is used as such and the model schema (in this case the IFC4 schema) can be loaded on the fly. In most cases the ISO standard API SDAI is used to enable interaction with the toolbox.
- Early binding: based on the schema an interface is generated / created. The benefit of this interface is that it knows the schema and during implementation the language helps you with correct implementation by giving only the valid options.
Not all toolboxes support both early binding and late binding. Some toolboxes also included code to generate the visualization of each object for certain versions of IFC. Next to the stat-of-the-art professional toolboxes there are also very good quality free toolboxes available. Implementation without a toolbox is possible, especially for export. Building good quality and performing import for large files is time consuming and complex.