Commit Graph

17415 Commits

Author SHA1 Message Date
Andrej730 d36205ea8b svgfill - bump 2025-09-01 21:08:46 +05:00
Thomas Krijnen 9d0eb4f994 Merge pull request #7058 from Krande/feat/IfcFixedReferenceSweptAreaSolid
feat: improved support for IfcFixedReferenceSweptAreaSolid
2025-08-31 10:57:49 +02:00
smr 67fb569669 style: fix formatting with black 2025-08-30 20:04:58 +02:00
smr da9be7cff0 Fix PythonOCC >=7.8.0 compatibility in serialize_shape function
Resolves issue #6099: PythonOCC >=7.8.0 changed WriteToString() method
signature, causing TypeError in ifcopenshell.geom.serialise().

This fix uses signature inspection to detect the method signature:
- For PythonOCC < 7.8.0: Use WriteToString() (no parameters)
- For PythonOCC >= 7.8.0: Fall back to Write() method
- Graceful handling of signature inspection failures

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-30 20:04:58 +02:00
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
Andrej730 43c35eaf24 ifcfm - fix error running without pandas 2025-08-29 23:50:27 +05:00
Andrej730 76e3b8dd55 Bonsai - fix error appending curve/fill area styles
It would try to append them as Blender material and would fail, just import them as ifc elements.

Noticed testing #7066
2025-08-29 19:44:04 +05:00
Andrej730 d004410ccb ifcwrap cmake - add _d debug postfix required on Windows 2025-08-29 19:44:03 +05:00
Andrej730 0d3545c621 bim.select_library_file - shortcut to reload the library
Location - https://files.catbox.moe/an9hif.png
2025-08-28 19:11:52 +05:00
Andrej730 12cfa21d9b Fix missing project library ui data refresh
E.g. it wasn't updated on undo
2025-08-28 19:11:52 +05:00
Andrej730 c8a60cc4d5 bim.refresh_library - add description 2025-08-28 19:11:51 +05:00
Andrej730 6702e912e7 bim.save_library - add info message for more responsive ui 2025-08-28 19:11:51 +05:00
Andrej730 b5aeab6404 Remove project library from UI #7057
Example - https://files.catbox.moe/940mhn.mp4
2025-08-28 19:11:51 +05: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
krande 79546807d9 fix lint 2025-08-28 13:15:47 +02:00
Andrej730 71a6bf25bc Fix error loading IFC file without contexts #7060 (8d3aa98) 2025-08-28 11:09:46 +05: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 c090073858 Removes assumption about which nest contains alignment layout segments 2025-08-27 07:35:49 -07:00
krande 9dd7b488d6 Refactor and extend swept shape tests; adjust comments and import structure
Improves formatting and readability in `test_sweeps.py`, adjusts imports and comments, and adds assertions for geometry validation in `simple_sweep_1.ifc` and `simple_sweep_2.ifc` tests. Updates code comments in `IfcFixedReferenceSweptAreaSolid`.
2025-08-27 13:55:42 +02:00
krande d01bf9690d Add test and input for simple_sweep_2.ifc; extend constructor for sweep_along_curve to support fixed reference swept area solids
Includes `simple_sweep_2.ifc` test input, geometry validations in `test_sweeps.py`, and a new constructor for `sweep_along_curve` to handle directrix-based sweeps.
2025-08-27 12:11:02 +02:00
krande 8420b98f3f Simplify IfcFixedReferenceSweptAreaSolid position check logic 2025-08-27 11:52:56 +02:00
krande 2369f72798 Improve IfcFixedReferenceSweptAreaSolid handling and add swept shape tests
Enhances geometry processing for swept area solids by integrating matrix transformations. Includes new utility `_is_swept_shape` for topology analysis, extends testing with `load_ifc_occ_shape`, and updates schema versions in CMake presets.
2025-08-26 21:24:40 +02:00
Richard Brice 1de5940294 Separates referent and alignment layout usages into different referents 2025-08-26 08:02:57 -07:00
krande 4835829700 refactor IfcFixedReferenceSweptAreaSolid logic and adjust install-debug task 2025-08-26 16:10:00 +02:00
Kristoffer Andersen 5719c3db2b Merge branch 'v0.8.0' into feat/IfcFixedReferenceSweptAreaSolid 2025-08-26 14:13:53 +02:00
krande 115d3d4498 start work on improving support for IfcFixedReferenceSweptAreaSolid 2025-08-26 13:32:44 +02:00
Richard Brice 9331e89d15 Alignments can now be created with or without geometric representations 2025-08-25 19:59:07 -07:00
Bruno Perdigão 8903d6a85c Change variable name for consistency. Related to #6963 2025-08-25 20:42:28 -03:00
Bruno Perdigão cb551e1248 Fix issue with creating walls from slabs in IFC2X3 files. Related to #6963 2025-08-25 20:42:28 -03:00
Bruno Perdigão 915c38947d See #6963. Fix issue with changing extrusion angle in IFC2X3 files. 2025-08-25 20:42:28 -03:00
Bruno Perdigão 190d9f8e3f Fix issue with IfcPolyline in get_polyline_coords 2025-08-25 20:42:28 -03:00
daniel-augusto f7e8643f30 Update link to install Bonsai 2025-08-24 08:23:31 +02:00
falken10vdl dccd9d4139 lock drawing titleblock (managed by lock icon in Inkscape) (#7043) 2025-08-21 15:55:19 -05:00
Thomas Krijnen d31aafac5b Update ConversionSettings.h 2025-08-21 14:06:54 +02:00
Thomas Krijnen 2949a86f09 Properly initialize stream::eof #7045 2025-08-21 10:00:44 +02:00
Ryan Schultz 4cbf551c75 small tweak to dev_environment.py 2025-08-20 13:01:42 -05:00
Robin Quint ef24bb52a7 Make Door / Window Tool place doors on the correct side of a wall (#6986) 2025-08-19 13:53:45 +00:00
daniel-augusto 6286d85850 Correct highlight code block python 2025-08-19 09:17:20 +02:00
Andrej730 3d82eb954f Fix missing project custom psets reload when changing IFC filepath #7037 2025-08-18 19:48:04 +05:00
Andrej730 2951aecc14 typing 2025-08-18 19:48:04 +05:00
Andrej730 c4d54f7709 switch_representation - clear geometry cache
Noticed wall representation wasn't updating after window was added to it, because of the existing cache.
2025-08-18 19:46:59 +05:00
Andrej730 53e9837858 fix file_dict typing (126accd6a) 2025-08-18 19:46:59 +05:00
Dion Moult ddbe62772d Fix bug where copy to structure feature was completely inaccessible from the UI 2025-08-18 17:30:56 +10:00
Christoph Mellüh f9dc7d5d94 Improve docs (#7005) 2025-08-18 06:14:06 +00:00
Thomas Krijnen aa97cc25d1 Support faceset face with voids in shape_builder 2025-08-16 15:02:17 +02:00
Thomas Krijnen 0088f3933f Keep ruff happy 2025-08-16 14:07:11 +02:00