diff --git a/src/ifcblenderexport/blenderbim/bim/export_ifc.py b/src/ifcblenderexport/blenderbim/bim/export_ifc.py index 9a667c75b9..b3271e1662 100644 --- a/src/ifcblenderexport/blenderbim/bim/export_ifc.py +++ b/src/ifcblenderexport/blenderbim/bim/export_ifc.py @@ -1086,7 +1086,7 @@ class IfcParser(): 'is_point_cloud': self.is_point_cloud(obj), 'is_structural': self.is_structural(obj), 'is_text': isinstance(mesh, bpy.types.TextCurve), - 'is_wireframe': mesh.BIMMeshProperties.is_wireframe if hasattr(mesh, 'BIMMeshProperties') else False, + 'is_wireframe': self.is_wireframe_mesh(mesh), 'is_native': mesh.BIMMeshProperties.is_native if hasattr(mesh, 'BIMMeshProperties') else False, 'is_swept_solid': mesh.BIMMeshProperties.is_swept_solid if hasattr(mesh, 'BIMMeshProperties') else False, 'is_generated': False, @@ -1094,6 +1094,13 @@ class IfcParser(): 'attributes': {'Name': mesh.name} } + def is_wireframe_mesh(self, mesh): + if isinstance(mesh, bpy.types.Mesh) and not mesh.polygons: + return True + if isinstance(mesh, bpy.types.Curve) and not mesh.bevel_object and not mesh.bevel_depth: + return True + return False + def is_mesh_context_sensitive(self, name): return '/' in name \ and ( \ diff --git a/src/ifcblenderexport/blenderbim/bim/prop.py b/src/ifcblenderexport/blenderbim/bim/prop.py index 7fa097ed9e..f90ce188d0 100644 --- a/src/ifcblenderexport/blenderbim/bim/prop.py +++ b/src/ifcblenderexport/blenderbim/bim/prop.py @@ -1290,7 +1290,6 @@ class RepresentationItem(PropertyGroup): class BIMMeshProperties(PropertyGroup): - is_wireframe: BoolProperty(name="Is Wireframe") is_native: BoolProperty(name="Is Native", default=False) is_swept_solid: BoolProperty(name="Is Swept Solid") swept_solids: CollectionProperty(name="Swept Solids", type=SweptSolid) diff --git a/src/ifcblenderexport/blenderbim/bim/ui.py b/src/ifcblenderexport/blenderbim/bim/ui.py index e3848a8960..a7a8bffc3d 100644 --- a/src/ifcblenderexport/blenderbim/bim/ui.py +++ b/src/ifcblenderexport/blenderbim/bim/ui.py @@ -589,8 +589,6 @@ class BIM_PT_mesh(Panel): row = layout.row() row.prop(props, 'is_parametric') row = layout.row() - row.prop(props, 'is_wireframe') - row = layout.row() row.prop(props, 'is_native') row = layout.row() row.prop(props, 'is_swept_solid')