From e57c326ad1560e3013c763e9040631c8090a8ca2 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Mon, 3 Aug 2026 15:58:58 +0500 Subject: [PATCH] rule fixtures: update fixture and generation script to match 4404470d9 IFCBSPLINECURVE is abstract and causing fail to fail even if point dimensions wouldn't be checked. --- .../fail-bspline-curve-point-dimensions-2-3-3-ifc2x3.ifc | 2 +- .../fail-bspline-curve-point-dimensions-3-3-2-ifc2x3.ifc | 2 +- src/ifcopenshell-python/test/fixtures/rules/generate_09.py | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-2-3-3-ifc2x3.ifc b/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-2-3-3-ifc2x3.ifc index ffc1330c1a..04b37c528e 100644 --- a/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-2-3-3-ifc2x3.ifc +++ b/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-2-3-3-ifc2x3.ifc @@ -8,6 +8,6 @@ DATA; #1=IFCCARTESIANPOINT((0.,0.)); #2=IFCCARTESIANPOINT((1.,0.,0.)); #3=IFCCARTESIANPOINT((1.,1.,0.)); -#4=IFCBSPLINECURVE(1,(#1,#2,#3),.POLYLINE_FORM.,.F.,.F.); +#4=IFCBEZIERCURVE(1,(#1,#2,#3),.POLYLINE_FORM.,.F.,.F.); ENDSEC; END-ISO-10303-21; diff --git a/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-3-3-2-ifc2x3.ifc b/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-3-3-2-ifc2x3.ifc index a6d635f794..264af9f754 100644 --- a/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-3-3-2-ifc2x3.ifc +++ b/src/ifcopenshell-python/test/fixtures/rules/fail-bspline-curve-point-dimensions-3-3-2-ifc2x3.ifc @@ -8,6 +8,6 @@ DATA; #1=IFCCARTESIANPOINT((0.,0.,0.)); #2=IFCCARTESIANPOINT((1.,0.,0.)); #3=IFCCARTESIANPOINT((1.,1.)); -#4=IFCBSPLINECURVE(1,(#1,#2,#3),.POLYLINE_FORM.,.F.,.F.); +#4=IFCBEZIERCURVE(1,(#1,#2,#3),.POLYLINE_FORM.,.F.,.F.); ENDSEC; END-ISO-10303-21; diff --git a/src/ifcopenshell-python/test/fixtures/rules/generate_09.py b/src/ifcopenshell-python/test/fixtures/rules/generate_09.py index 5ab9a2fe40..46f1e53aac 100644 --- a/src/ifcopenshell-python/test/fixtures/rules/generate_09.py +++ b/src/ifcopenshell-python/test/fixtures/rules/generate_09.py @@ -10,7 +10,9 @@ def make_point(xy, dim): for d in dims: f = ifcopenshell.file(schema="IFC2X3") - inst = f.createIfcBSplineCurve(1, list(map(lambda t: make_point(*t), zip(pts, d))), "POLYLINE_FORM", False, False) + inst = f.create_entity( + "IfcBezierCurve", 1, list(map(lambda t: make_point(*t), zip(pts, d))), "POLYLINE_FORM", False, False + ) f.write( f"{'pass' if len(set(d)) == 1 else 'fail'}-bspline-curve-point-dimensions-{'-'.join(map(str, d))}-ifc2x3.ifc" )