mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-10 09:48:32 +00:00
Update schema.py
This commit is contained in:
@@ -49,6 +49,20 @@ def get_subtypes(entity):
|
||||
|
||||
|
||||
def reassign_class(ifc_file, element, new_class):
|
||||
"""
|
||||
Attempts to change the class (entity name) of `element` to `new_class` by
|
||||
removing element and recreating a similar instance of type `new_class`
|
||||
with the same id.
|
||||
|
||||
In certain cases it may affect the structure of inversely related instances:
|
||||
- Multiple occurrences of reassigned instance within the same aggregate
|
||||
(such as start and end-point of polyline)
|
||||
- Occurrences of reassigned instance within an ordered aggregate
|
||||
(such as IfcRelNests)
|
||||
|
||||
It's unlikely that this affects real-world usage of this function.
|
||||
"""
|
||||
|
||||
schema = ifcopenshell.ifcopenshell_wrapper.schema_by_name(ifc_file.schema)
|
||||
try:
|
||||
declaration = schema.declaration_by_name(new_class)
|
||||
|
||||
Reference in New Issue
Block a user