Skip to content

Commit 9e02f69

Browse files
authored
Merge pull request #10 from idaholab/fix/debug-distribution-element
Fix/debug distribution element
2 parents c81882f + dba435b commit 9e02f69

33 files changed

+3301
-1931
lines changed

src/bim2fem/ifcplus/api/distribution_element.py

Lines changed: 664 additions & 487 deletions
Large diffs are not rendered by default.

src/bim2fem/ifcplus/api/geometry.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,36 @@ def add_cylindrical_extruded_area_solid(
180180
return extruded_area_solid
181181

182182

183+
def add_hollow_cylindrical_extruded_area_solid(
184+
ifc4_file: ifcopenshell.file,
185+
radius: float,
186+
extrusion_depth: float,
187+
wall_thickness: float,
188+
repositioned_origin: tuple[float, float, float] = (0.0, 0.0, 0.0),
189+
repositioned_z_axis: tuple[float, float, float] = (0.0, 0.0, 1.0),
190+
repositioned_x_axis: tuple[float, float, float] = (1.0, 0.0, 0.0),
191+
) -> ifcopenshell.entity_instance:
192+
"""Add hollow cylindrical IfcExtrudedAreaSolid"""
193+
194+
profile = bim2fem.ifcplus.api.profile.add_parameterized_profile(
195+
ifc4_file=ifc4_file,
196+
profile_class="IfcCircleHollowProfileDef",
197+
dimensions=[radius, wall_thickness],
198+
check_for_duplicate=True,
199+
)
200+
201+
extruded_area_solid = add_extruded_area_solid(
202+
ifc4_file=ifc4_file,
203+
profile=profile,
204+
extrusion_depth=extrusion_depth,
205+
repositioned_origin=repositioned_origin,
206+
repositioned_z_axis=repositioned_z_axis,
207+
repositioned_x_axis=repositioned_x_axis,
208+
)
209+
210+
return extruded_area_solid
211+
212+
183213
def add_sphere(
184214
ifc4_file: ifcopenshell.file,
185215
radius: float,

src/bim2fem/ifcplus/api/placement.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212

1313
def edit_object_placement(
1414
product: ifcopenshell.entity_instance,
15-
repositioned_origin: Iterable[float] = (0, 0, 0),
16-
repositioned_z_axis: Iterable[float] = (0, 0, 1),
17-
repositioned_x_axis: Iterable[float] = (1, 0, 0),
15+
repositioned_origin: tuple[float, float, float] = (0.0, 0.0, 0.0),
16+
repositioned_z_axis: tuple[float, float, float] = (0.0, 0.0, 1.0),
17+
repositioned_x_axis: tuple[float, float, float] = (1.0, 0.0, 0.0),
1818
should_transform_children: bool = False,
1919
place_object_relative_to_parent: bool = False,
2020
):

0 commit comments

Comments
 (0)