diff --git a/src/papermodels/datatypes/element.py b/src/papermodels/datatypes/element.py index b7d2041..4503ab6 100644 --- a/src/papermodels/datatypes/element.py +++ b/src/papermodels/datatypes/element.py @@ -17,6 +17,7 @@ import tomli_w import json + Geometry = Union[LineString, Polygon] ELEMENT_ATTRS = { @@ -277,6 +278,9 @@ def get_collector_extents(self, relative: bool = True) -> dict[str, tuple]: for idx, poly_support_geom in enumerate(support_geoms): clean_support_geom = support_geoms[idx] cleaned_supports_map.update({clean_support_geom: poly_support_geom}) + assert all( + [self.geometry.intersects(support) for support in support_geoms] + ) try: ordered_support_geoms = geom_ops.sort_supports( self.geometry, support_geoms diff --git a/src/papermodels/datatypes/joist_models.py b/src/papermodels/datatypes/joist_models.py index 27c87e5..bf1a613 100644 --- a/src/papermodels/datatypes/joist_models.py +++ b/src/papermodels/datatypes/joist_models.py @@ -695,6 +695,7 @@ def generate_joist_geom(self, index: int): # joist_geom = LineString([end_a, end_b]) if joist_geom.length <= self._cantilever_tolerance: return None + return joist_geom def get_extent_edge(self, edge: str = "start"):