diff --git a/src/ifcopenshell-python/ifcopenshell/ifcopenshell_wrapper.pyi b/src/ifcopenshell-python/ifcopenshell/ifcopenshell_wrapper.pyi index 29b90f1909..4a9369977e 100644 --- a/src/ifcopenshell-python/ifcopenshell/ifcopenshell_wrapper.pyi +++ b/src/ifcopenshell-python/ifcopenshell/ifcopenshell_wrapper.pyi @@ -25,10 +25,8 @@ from ifcopenshell.entity_instance import entity_instance_mixin from ifcopenshell.file import file_mixin # `std::vector` usually translated to `tuple[xxx, ...]`. - -ON_SLABS_AND_WALLS: Any -ON_SLABS_AT_FLOORPLANS: Any -ALWAYS: Any +# `*args` means either multiple overloaded signatures or a default value that couldn't be +# represented in Python (e.g. `logger_or_root()`). ATPATH: Any ATSTART: Any @@ -265,7 +263,7 @@ class GeometrySerializer: def object_id(self, o): ... def read(self, *args): ... def ready(self): ... - def setFile(self, arg2): ... + def setFile(self, file: file) -> None: ... def setUnitNameAndMagnitude(self, name, magnitude): ... def settings(self, *args): ... def write(self, *args): ... @@ -404,6 +402,7 @@ class RocksDBPrefixIterator: class RocksDbSerializer: def __init__(self, *args): ... def finalize(self) -> None: ... + def is_streaming(self) -> bool: ... def ready(self) -> bool: ... def setFile(self, arg2) -> None: ... def writeHeader(self) -> None: ... @@ -709,10 +708,6 @@ class direction3: def components(self): ... def kind(self): ... -class drawing_meta: - matrix_3: Any - pln_3d: Any - class edge(trimmed_curve): def __init__(self, *args): ... def calc_hash(self): ... @@ -1023,7 +1018,6 @@ class gradient_function(function_item): class equal_functor: ... class hash_functor: ... -class horizontal_plan_at_element: ... class implicit_item(geom_item): def __init__(self, *args, **kwargs): ... @@ -1579,24 +1573,34 @@ class torus(surface): class tree: def __init__(self, *args): ... - def add_element(self, *args): ... - def add_file(self, *args): ... - def clash_clearance_many(self, set_a, set_b, clearance, check_all): ... - def clash_collision_many(self, set_a, set_b, allow_touching): ... - def clash_intersection_many(self, set_a, set_b, tolerance, check_all): ... - def distances(self): ... - def enable_face_styles(self, *args): ... + def add_element(self, element: Element | None) -> None: ... + def add_file(self, *args) -> None: ... + def clash_clearance_many( + self, + set_a: Sequence[entity_instance], + set_b: Sequence[entity_instance], + clearance: float = 0.05, + check_all: bool = False, + ) -> clashes: ... + def clash_collision_many( + self, set_a: Sequence[entity_instance], set_b: Sequence[entity_instance], allow_touching: bool = False + ) -> clashes: ... + def clash_intersection_many( + self, + set_a: Sequence[entity_instance], + set_b: Sequence[entity_instance], + tolerance: float = 0.002, + check_all: bool = True, + ) -> clashes: ... + def distances(self) -> tuple[float, ...]: ... + def enable_face_styles(self, *args) -> bool | None: ... @staticmethod - def is_manifold(fs): ... - def protrusion_distances(self): ... - def select(self, *args): ... - def select_box(self, *args): ... - def select_ray(self, p0, d, length=1000.0): ... - def styles(self): ... - def uint8_to_b64(self, uuids_array): ... - @staticmethod - def vector_to_list(ps): ... - def write_h5(self): ... + def is_manifold(faces: Sequence[int]) -> bool: ... + def protrusion_distances(self) -> tuple[float, ...]: ... + def select(self, *args) -> tuple[entity_instance, ...]: ... + def select_box(self, *args) -> tuple[entity_instance, ...]: ... + def select_ray(self, *args) -> ray_intersection_results: ... + def styles(self) -> Sequence[style]: ... class trimmed_curve(geom_item): def __init__(self, *args, **kwargs): ... @@ -1652,7 +1656,6 @@ def read(data): ... def register_schema(schema: schema_definition) -> None: ... def schema_by_name(schema_name: str) -> schema_definition: ... def schema_names() -> tuple[str, ...]: ... -def serialise(schema_name, shape_str, advanced=True): ... def set_feature(x, v): ... def set_log_format_json(): ... def set_log_format_text(): ... @@ -1660,7 +1663,6 @@ def stream_from_string(data): ... def svg_to_line_segments(data, class_name): ... def svg_to_polygons(data, class_name): ... def taxonomy_item_repr(i): ... -def tesselate(schema_name, shape_str, d): ... def turn_off_detailed_logging() -> None: ... def turn_on_detailed_logging() -> None: ... def version() -> str: ... diff --git a/src/ifcwrap/IfcGeomWrapper.i b/src/ifcwrap/IfcGeomWrapper.i index e85c6366bd..efc872680c 100644 --- a/src/ifcwrap/IfcGeomWrapper.i +++ b/src/ifcwrap/IfcGeomWrapper.i @@ -576,6 +576,8 @@ assign_matrix_access(revolve); %template(clashes) std::vector; +%ignore IfcGeom::tree::uint8_to_b64; + %include "../ifcgeom/tree.h" %extend IfcGeom::tree {