mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-25 05:14:30 +00:00
You can now choose between lightweight and full classifications
This commit is contained in:
@@ -27,6 +27,7 @@ class Usecase:
|
|||||||
"product": None,
|
"product": None,
|
||||||
"reference": None,
|
"reference": None,
|
||||||
"classification": None,
|
"classification": None,
|
||||||
|
"is_lightweight": True,
|
||||||
}
|
}
|
||||||
for key, value in settings.items():
|
for key, value in settings.items():
|
||||||
self.settings[key] = value
|
self.settings[key] = value
|
||||||
@@ -57,12 +58,13 @@ class Usecase:
|
|||||||
return
|
return
|
||||||
|
|
||||||
migrator = ifcopenshell.util.schema.Migrator()
|
migrator = ifcopenshell.util.schema.Migrator()
|
||||||
# This removal patch is to support a lightweight classification
|
if self.settings["is_lightweight"]:
|
||||||
old_referenced_source = self.settings["reference"].ReferencedSource
|
old_referenced_source = self.settings["reference"].ReferencedSource
|
||||||
self.settings["reference"].ReferencedSource = None
|
self.settings["reference"].ReferencedSource = None
|
||||||
relating_classification = migrator.migrate(self.settings["reference"], self.file)
|
relating_classification = migrator.migrate(self.settings["reference"], self.file)
|
||||||
relating_classification.ReferencedSource = self.settings["classification"]
|
if self.settings["is_lightweight"]:
|
||||||
self.settings["reference"].ReferencedSource = old_referenced_source
|
relating_classification.ReferencedSource = self.settings["classification"]
|
||||||
|
self.settings["reference"].ReferencedSource = old_referenced_source
|
||||||
self.file.create_entity(
|
self.file.create_entity(
|
||||||
"IfcRelAssociatesClassification",
|
"IfcRelAssociatesClassification",
|
||||||
**{
|
**{
|
||||||
|
|||||||
Reference in New Issue
Block a user