diff --git a/src/ifcopenshell-python/ifcopenshell/api/__init__.py b/src/ifcopenshell-python/ifcopenshell/api/__init__.py index e24870d956..a0babf7963 100644 --- a/src/ifcopenshell-python/ifcopenshell/api/__init__.py +++ b/src/ifcopenshell-python/ifcopenshell/api/__init__.py @@ -23,6 +23,19 @@ the rules of the IFC schema. This API module provides simple to use authoring functions that hide this complexity from you. Things like managing differences between IFC versions, tracking owernship changes, or cleaning up after orphaned relationships are all handled automatically. + +If you're new to IFC authoring, start by looking at the following APIs: + +- See :func:`ifcopenshell.api.project.create_file` to create a new IFC. +- See :func:`ifcopenshell.api.root.create_entity` to create new entities, like + the mandatory IfcProject, and then an IfcSite, IfcWall, etc. +- See :func:`ifcopenshell.api.aggregate.assign_object` to create a spatial + hierarchy. +- See :func:`ifcopenshell.api.spatial.assign_container` to place physical + elements (e.g. walls) inside spatial elements (e.g. building storeys). + +Also see how to `create a simple model from scratch +`_. """ import json diff --git a/src/ifcopenshell-python/ifcopenshell/util/__init__.py b/src/ifcopenshell-python/ifcopenshell/util/__init__.py index bcd1e83caf..03fea1cd53 100644 --- a/src/ifcopenshell-python/ifcopenshell/util/__init__.py +++ b/src/ifcopenshell-python/ifcopenshell/util/__init__.py @@ -25,4 +25,20 @@ through these relationships which can be tedious. This module makes it easy to get commonly requested data from IFC relationships, such as properties of a wall, what elements are connected to pipes, dates from work schedules, filtering maintainable elements, and more. + +The most commonly used utilities to help you get started are: + +- See :mod:`ifcopenshell.util.element` which contains a lot of useful functions + for getting most common relationships on elements. +- See :func:`ifcopenshell.util.element.get_psets` to get all properties of an + entity, like a wall. +- See :func:`ifcopenshell.util.element.get_type` to get the corresponding type + object (e.g. the wall type definition) of a single occurrence (e.g. an + individual wall). +- See :func:`ifcopenshell.util.placement.get_local_placement` to get the XYZ + placement point of a single object. +- See :func:`ifcopenshell.util.unit.calculate_unit_scale` to convert between SI + units and project units. +- See :mod:`ifcopenshell.util.shape` to calculate quantities from processed + geometry. """ diff --git a/src/ifctester/ifctester/ids.py b/src/ifctester/ifctester/ids.py index 4703b0445a..ea5c6791f9 100644 --- a/src/ifctester/ifctester/ids.py +++ b/src/ifctester/ifctester/ids.py @@ -174,6 +174,7 @@ class Specification: self.instructions = instructions self.applicable_entities: list[ifcopenshell.entity_instance] = [] + self.failed_entities: set[ifcopenshell.entity_instance] = set() self.status = None def asdict(self):