When compiling ifcgemo, there are frequent linking errors What are the errors?
See https://github.com/IfcOpenShell/IfcOpenShell/discussions/6782#discussioncomment-13386978
A profile in IFC is actually always 2d. This is not very apparent in the schema because the cartesian point can be 2d or 3d. But this is enforced in WR1 https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcArbitraryClosedProfileDef.htm#8.15.3.1.4-Formal-propositions If you run python -m ifcopenshell.validate (install the ifcopenshell python module) on your file it will check the where rules for you.
You have a couple more parameters in addExtrudedPolyline. Use the extrusion placement to rotate and supply a direction to extrude not along local Z (see image). Also, the following is not allowed per rule PlacementForShapeRepresentation so use the object position to move the roof in the correct position. https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcProduct.htm 0,//file.addLocalPlacement(0, 0, 0, 0, x, y, z), file.addExtrudedPolyline(item.m_points, 100),
The major problem with IFC is that the schema is very extensive and support for the less mainstream entities can vary greatly between implementations. I would recommend against trying to get centerline profiles to work. Rather, use a composite curve with the explicit segments. Personally I also think that center line profiledef is not specified precisely enough for implementations to handle it correctly. I also don't think its useful enough because in case of wall joins you would still either need...
Additional meta-data can be supplied in property sets, have a look at ifcopenshell.util.element.get_psets() but it depends on the model. Computation using your own code can be more robust, consistent and according to the norms and computation method of choice.
Hi, thanks for reporting. There are some self-intersection in the profile (see attachment). That should generally be handled, but some bits and pieces were still missing in the transition from v0.7 to v0.8. I'll commit some code changes this evening to get things to convert properly again. Thomas
I know this does not really count as documentation, but Bonsai makes quite some use of it and if you search by the operator names you might be able to mentally reconstruct some of its usage patterns. All help welcome in augmenting documentation :) Might have more luck posting issues at https://github.com/IfcOpenShell/IfcOpenShell/issues src\bonsai\bonsai\bim\module\bcf\operator.py: 54,5: bl_label = "New BCF Project" 69,5: bl_label = "Load BCF Project" 118,5: bl_label = "Unload BCF Project" 128,5:...