Commit Graph

822 Commits

Author SHA1 Message Date
krande 1cd32be2fc Refactor test_sweeps.py: remove _is_swept_shape, restructure test directories, update test fixtures, and adjust assertions for geometry validation. Extend sweep_along_curve constructor to support fixed reference direction. 2025-08-27 19:37:47 +02:00
Thomas Krijnen aa97cc25d1 Support faceset face with voids in shape_builder 2025-08-16 15:02:17 +02:00
Andrej730 f5cb2dd21f black . 2025-08-15 19:51:00 +05:00
Richard Brice 1fcf2fb53f Fixed zero length segment for vertical alignment. Refactors curve segment transition code 2025-08-14 13:56:36 -07:00
Andrej730 41128a397b black . 2025-08-12 19:05:52 +05:00
Dion Moult a6a27442fb Add test case for bugfix 55e97fd1 2025-08-12 19:00:28 +10:00
Christoph Mellüh 3e5a2e5eb2 Fix UI bugs for settings predefined types / assign_type to prevent invalid ifc (#7011) 2025-08-12 06:11:55 +00:00
Andrej730 9f92e4853f assign_representation - assign repr only to occurrence for profile- or layer-based types #6934 2025-08-11 12:25:32 +05:00
Andrej730 f8f48796a9 test_assign_representation - cover ifc4x3 2025-08-11 12:25:32 +05:00
Andrej730 ce6505847a black . 2025-08-11 11:23:18 +05:00
Richard Brice 762f4ff975 Implements business 2 geometry mapping for Viennese Bend for horizontal and cant layouts 2025-08-09 14:03:19 -07:00
Andrej730 ed8a31c54b Update ignored settings structs in IfcPython.i #6976 2025-08-07 21:02:34 +05:00
Andrej730 cdeeab4b31 black . 2025-07-28 17:03:25 +05:00
Richard Brice c12ed46c49 Bug fixes with zero length segment and b2g mapping when project angle is not radian 2025-07-27 15:10:22 -07:00
Richard Brice 3ef7f1c141 Alignment API updates to support new patch recipes 2025-07-27 15:10:22 -07:00
Andrej730 1d789da066 test_copy_work_schedule - cover ifc2x3 support 2025-07-25 18:22:17 +05:00
Andrej730 dd1c47f9dc sequence.add_date_time
API method to create IfcDateAndTime / IfcDatetime in schema agnostic way.
2025-07-25 18:22:17 +05:00
Andrej730 b76b05fc71 sequence.copy_work_schedule #6901
Similar to e50215ddc but for IfcWorkSchedules

Button location - https://files.catbox.moe/jfd1ol.png
2025-07-24 19:39:14 +05:00
Andrej730 f3efb1601a copy_cost_schedule - add a test 2025-07-24 19:39:12 +05:00
Andrej730 ed65c039dc Test for missing platforms
Needed to ensure all necessary platforms are covered when build is bumped
2025-07-22 18:07:55 +05:00
Andrej730 b4740b6949 append_asset to also match material sets by the name #6762 2025-07-21 18:10:11 +05:00
Richard Brice 78759a63f2 Updates helmert curve business2geometry mapping (again) 2025-07-18 12:29:28 -07:00
Richard Brice 913076de94 Updates helmert curve business2geometry mapping 2025-07-18 09:47:59 -07:00
Richard Brice a392a1fbfb Adds alignment as offset curve 2025-07-17 10:48:42 -07:00
Andrej730 2edfe1e5d8 profile.add_parameterized_profile - add profile_type arg
To create more valid profiles by default. Noticed then Bonsai creates new profiles, it doesn't set ProfileType, leading to validation errors.
2025-07-17 19:58:48 +05:00
Andrej730 262739f37a owner.remove_role - fix error handling resource level rel (fe1e307)
It's probably was just an overlook in the original commit - it was referring to `settings["organisation"]`, though `"organization"` was never passed, leading to an error. And probably by accident remove_role tests were using the same tests as remove_organization, so the issue went under the radar for a while.
2025-07-15 17:47:37 +05:00
Andrej730 f18c93c9ee typing 2025-07-15 17:47:35 +05:00
Andrej730 72af88a4b3 black . 2025-07-14 18:53:10 +05:00
Richard Brice 73b76ba666 Adds IfcPolyline representation for alignment. Also some general cleanup 2025-07-13 16:34:52 -07:00
Andrej730 37d4ee97e7 alignment - fix missing imports 2025-07-10 19:42:29 +05:00
Andrej730 5a4ad69bf7 black . 2025-07-09 19:02:26 +05:00
Richard Brice 40f92d15c3 Alignment api update (#6817)
* Some basic COGO survey points functions

* Update alignment api

Includes defining alignment segment by segment, automatic geometry definitions, and automatric stationing and referents

* Fixes bonsai import alignment from csv

* Adds DMS angle conversion functions to COGO api

* Updated per @civilx64 review comments

* Fixes problem with segment representations

* Fixes problem with segment transition codes

* Allows for compound vertical and horizontal curves

* Implements callbacks for referent naming

* Renames angle_from_bearing to bearing2dd for consistency with ifcopenshell.util.geolocation.dms2dd. Removes angle_from_dms because it duplicates dms2dd

* Documents register_referent_name_callback

* Fixes all sorts of problems with Cant/SegRefCurve implementation

* refactor referent unit tests to use a fixture for test setup

* lint with black

---------

Co-authored-by: Scott Lecher <civilx64@gmail.com>
2025-07-08 10:09:14 -07:00
Andrej730 7f3860b025 util.attribute - add tests 2025-07-08 21:20:57 +05:00
Andrej730 263d238f9c ifcopenshell.validate - fix IfcApplication.UR2 validation
Previously we were checking for just ApplicationFullName, without considering Version.

https://github.com/buildingSMART/IFC4.3.x-development/issues/966
2025-06-20 18:48:37 +05:00
Andrej730 934c9e1485 test_edit_organisation - add ifc4x3 tests 2025-06-18 19:12:12 +05:00
Andrej730 bbebdd56ca owner.edit_application 2025-06-18 19:12:12 +05:00
Andrej730 c68b0c7280 typing 2025-06-18 19:12:10 +05:00
Andrej730 15112211c1 add_application not to add deprecated IfcTelecomAddress in ifc4x3 #6806 2025-06-16 19:57:00 +05:00
Andrej730 a12bb343ca Fix RUF015 (next() instead of list comprehensions[0])
https://docs.astral.sh/ruff/rules/-iterable-allocation-for-first-element/
2025-06-16 19:55:25 +05:00
Andrej 8b4683aef1 replace api.run with static methods 2025-06-09 18:03:19 +05:00
Andrej 72cf77690e Prevent removing rel when is still valid after IfcCostItem removal #6769 2025-06-06 19:06:46 +05:00
Andrej fc0624692f test_sql - use Ifc2Sql patcher for readability 2025-06-05 19:05:28 +05:00
Andrej fb1b5bea51 ifcopenshell.file - use IFC4X3 instead of IFC4X3_ADD2 for simplicity 2025-05-30 18:13:11 +05:00
Andrej a16b8fa376 Fill ifcopenshell_wrapper.pyi with symbols #6684
As described in #6744 partial stub wrapper is completely replacing the type information from the wrapper, so having partial stub is making things worse than they were before.
This commit is adding all available symbols from the wrapper to the stub and allows to gradually include type information to the stub.
It also adds a safe net to ensure stub and wrapper won't go out of sync.
2025-05-28 18:24:10 +05:00
Dion Moult 810e8df6fe Fix #6640. Fix invalid association of annotations to grids.
There was already some half written code with this intent it seems, so I
just finished it up.
2025-05-26 13:49:06 +10:00
Andrej730 718254fe5e Fix regression parsing iso duration with floats (d1b1b08) #6715 2025-05-21 12:16:07 +05:00
Dion Moult 67016d6f90 See #2999. Reimplement basic creation of structural items. 2025-05-19 17:36:12 +10:00
Andrej730 f8799305e1 black . 2025-05-13 13:26:54 +05:00
Richard Brice 686e9c946b Adds object placement to stationing referent. 2025-05-12 16:14:53 -07:00
Andrej730 381fca0812 black . 2025-05-09 19:26:27 +05:00