mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-18 19:30:25 +00:00
19 lines
663 B
Python
19 lines
663 B
Python
|
|
import ifcopenshell
|
||
|
|
|
||
|
|
make_nd = lambda d: lambda *c: (c + (0.,)) if d == 3 else c
|
||
|
|
|
||
|
|
for d1, d2 in ((2,3), (3,3), (3,2)):
|
||
|
|
f = ifcopenshell.file(schema="IFC2X3")
|
||
|
|
f.createIfcLocalPlacement(
|
||
|
|
PlacementRelTo=f.createIfcLocalPlacement(
|
||
|
|
PlacementRelTo=None,
|
||
|
|
RelativePlacement=f.create_entity(f'IfcAxis2Placement{d1}D',
|
||
|
|
f.createIfcCartesianPoint(make_nd(d1)(0., 0.))
|
||
|
|
)
|
||
|
|
),
|
||
|
|
RelativePlacement=f.create_entity(f'IfcAxis2Placement{d2}D',
|
||
|
|
f.createIfcCartesianPoint(make_nd(d2)(0., 0.))
|
||
|
|
)
|
||
|
|
)
|
||
|
|
f.write(f"{'pass' if d1 >= d2 else 'fail'}-placement-{d1}d-{d2}d-ifc2x3.ifc")
|