Add warning when PHYSICAL/NOTDEFINED uses IfcColourRgb for Metallic, because this value is IFC-only and does not affect Blender appearance.

This commit is contained in:
falken10vdl
2026-04-27 17:51:04 +02:00
parent 679fe4dcae
commit 7881f5992f
+14 -5
View File
@@ -180,17 +180,26 @@ class BIM_PT_styles(Panel):
text=f"{self.props.reflectance_method} will be skipped: only PHYSICAL / NOTDEFINED / FLAT are supported",
icon="ERROR",
)
elif self.props.reflectance_method in ("PHYSICAL", "NOTDEFINED"):
if self.props.specular_colour_class == "IfcColourRgb":
self.layout.label(
text="Metallic color is IFC-only in PHYSICAL/NOTDEFINED and does not affect Blender appearance",
icon="ERROR",
)
elif self.props.reflectance_method == "FLAT":
if self.props.diffuse_colour_class == "IfcNormalisedRatioMeasure":
self.layout.label(
text="Emissive ratio is IFC-only in FLAT Reflectance method and does not affect Blender appearance",
icon="ERROR",
)
if self.props.specular_colour_class == "IfcNormalisedRatioMeasure":
self.layout.label(
text="Specular ratio is IFC-only in FLAT Reflectance method and does not affect Blender appearance",
icon="ERROR",
)
self.layout.label(
text="Specular value is IFC-only in FLAT Reflectance method and does not affect Blender appearance",
icon="ERROR",
)
self.layout.label(
text="Highlight value is IFC-only in FLAT Reflectance method and does not affect Blender appearance",
icon="ERROR",
)
row = self.layout.row(align=True)
row.label(text="Emissive" if self.props.reflectance_method == "FLAT" else "Diffuse")