Commit Graph

932 Commits

Author SHA1 Message Date
Richard Brice a839183ac2 Fixes referent sorting 2025-08-29 14:37:17 -07:00
Richard Brice 34bf374047 Corrects nesting of referents 2025-08-29 12:48:16 -07:00
Thomas Krijnen dfaa8d510c authorisation -> authorization in header schema for compatibility 2025-08-29 16:08:42 +02:00
krande 7eea995b88 Remove load_ifc_occ_shape and related OpenCASCADE-specific code from test_sweeps.py. Simplify tests by focusing on mesh-based geometry validation. Clean up imports and unused assertions. 2025-08-28 15:41:20 +02:00
krande 77acfd7069 Refactor tests: update input path resolution, optimize imports, and enhance load_ifc_occ_shape.
Simplify path definitions in `test_write.py` and `test_open.py`. Replace `typing` with `collections.abc` for `Sequence` usage in `test_sweeps.py` and adjust type hints to use Python's generic collections. Add optional verbosity to `load_ifc_occ_shape` and refine geometry test assertions. Update `simple_sweep_2.ifc` fixtures for consistency with test expectations.
2025-08-28 13:16:07 +02:00
Andrej730 43fbdf57c8 black . 2025-08-28 11:09:45 +05:00
Richard Brice 39100b7c97 Fixes problems with referents 2025-08-27 11:32:25 -07:00
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
Richard Brice 1de5940294 Separates referent and alignment layout usages into different referents 2025-08-26 08:02:57 -07:00
Thomas Krijnen ff3fa48332 Add test case 2025-08-26 13:25:18 +02:00
Richard Brice 9331e89d15 Alignments can now be created with or without geometric representations 2025-08-25 19:59:07 -07: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