This commit is contained in:
Andrej730
2025-06-13 13:28:18 +05:00
parent 152c94a7d6
commit 176c5cc0fb
8 changed files with 63 additions and 28 deletions
@@ -780,7 +780,10 @@ class entity_instance:
def data(self, *args): ...
def declaration(self) -> declaration: ...
def file_pointer(self):
"""Internal IfcFile pointer address."""
"""Internal IfcFile pointer address.
Same as ``file.file_pointer``).
"""
...
def get_argument(self, *args): ...
@@ -865,7 +868,28 @@ class file:
def FreshId(self): ...
def add(self, entity: entity_instance, id: int) -> entity_instance: ...
def addEntities(self, entities): ...
def batch(self): ...
def batch(self) -> None:
"""Enable batch mode.
Batch mode:
1. Calling ``remove(entity)`` does not immediately remove the entity;
it marks it for deletion instead.
2. When you call ``unbatch()``, all marked entities are deleted in a single operation.
Difference from usual removal:
- In normal mode, removing an entity immediately traverses and removes all inverse references to it.
- In batch mode, inverse references are not updated per entity.
Instead, the entire inverse reference map is scanned during ``unbatch()``
to remove references to all deleted entities.
Batch deletion may be slower than immediate deletion, depending on the size of the inverse reference map.
"""
...
def unbatch(self) -> None:
"""Exit batch mode."""
...
def build_inverses(self): ...
def by_guid(self, guid: str) -> entity_instance: ...
def by_id(self, id: int) -> entity_instance: ...
@@ -873,9 +897,15 @@ class file:
def by_type_excl_subtypes(self, *args): ...
@staticmethod
def createTimestamp(): ...
def entity_names(self): ...
def entity_names(self) -> tuple[int, ...]:
"""Get a tuple of step ids present in the file."""
...
def file_pointer(self) -> int:
"""Internal IfcFile pointer address."""
"""Internal IfcFile pointer address.
Same as ``int(self.this)``.
"""
...
def get_inverses_by_declaration(
@@ -907,7 +937,7 @@ class file:
def guid_map(*args): ...
@property
def header(self) -> IfcSpfHeader: ...
def ifcroot_type(self): ...
def ifcroot_type(self) -> entity: ...
def instance_by_guid(self, guid): ...
def instances_by_reference(self, id): ...
def internal_guid_map(self): ...
@@ -931,7 +961,6 @@ class file:
def types_begin(self): ...
def types_end(self): ...
def unbatch(self): ...
def write(self, fn): ...
class file_open_status:
@@ -1501,7 +1530,7 @@ def less(arg1, arg2): ...
def line_segments_to_polygons(s, eps, segments): ...
def map_shape(settings, instance): ...
def nary_union(sequence): ...
def new_IfcBaseClass(schema_identifier, name): ...
def new_IfcBaseClass(schema_identifier: str, name: str) -> entity_instance: ...
def open(fn): ...
def parse_ifcxml(filename): ...
def polygons_to_svg(*args): ...