Commit Graph

1520 Commits

Author SHA1 Message Date
Richard Brice df7318973d Adds support for IfcOpenCrossProfileDef and branching with IfcSectionedSurface 2026-01-14 13:28:07 -08:00
Andrej730 d41985f23a format cmake files 2025-12-22 18:44:42 +05:00
Andrej730 dd683d1115 examples - further simplify linking 2025-12-12 20:19:42 +05:00
Andrej730 5a0f8d30cf cmake - install headers using PUBLIC_HEADER, deprecate INCLUDEDIR 2025-12-12 19:30:21 +05:00
Andrej730 2627052b55 cmake - export IfcOpenShellConfig.cmake 2025-12-11 19:55:41 +05:00
Andrej730 71a36147a6 FindCGAL - another fix for 6591a6981 2025-12-11 18:03:44 +05:00
Andrej730 3cc8477a01 cmake - move ifcgeom installs to ifcgeom cmake
we don't install kernel libraries as they now have `OBJECT` type
IFCGEOM_SCHEMA_LIBRARIES and headers were handled in b7a9199  30184a3 9d28628
2025-12-05 20:24:00 +05:00
Andrej730 40cffe2dd1 cmake - remove unused installs after 8fb10d2 2025-12-05 20:24:00 +05:00
Andrej730 8ea4b9e38c Remove redundant links in 0555523c9 2025-12-05 20:24:00 +05:00
Andrej730 0555523c98 cmake - move all cgal related stuff to CGAL::CGAL target 2025-12-04 19:59:07 +05:00
Andrej730 db09744428 Temporarily disable setting point3 tag to fix build (4fc2f623c)
Since `point3` don't currently have `tag` member.

Ping @aothms
2025-12-04 19:59:07 +05:00
Thomas Krijnen 4fc2f623cf Count number of emitted normals in OBJ serializer, which might be less than verts when writing line geometries 2025-12-02 16:32:37 +01:00
Esteban DUGUEPEROUX 2e5d87b5d7 cmake: Link Eigen3 only against targets needing it 2025-12-02 14:53:44 +01:00
Esteban DUGUEPEROUX b7a9199253 cmake: Externalize geometry mapping target cmake config 2025-11-30 15:29:21 +01:00
Esteban DUGUEPEROUX 30184a3f6d cmake: Externalize geometry_serializer cmake config files to their own directory 2025-11-30 12:29:26 +01:00
Esteban DUGUEPEROUX 083fab5255 cmake: Use standard install way
For specific install customization, use CMAKE_INSTALL_BINDIR, CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR variables.

See-Also: https://cmake.org/cmake/help/latest/guide/tutorial/Installation%20Commands%20and%20Concepts.html
2025-11-30 11:11:51 +01:00
Thomas Krijnen bd57cc8735 Move sweep directrix closer to origin #7408 2025-11-30 09:56:27 +01:00
Andrej730 9eedbc6f72 FindOpenCASCADE - fix linking issue with non-configs #7390
Unexpected consequence of #7365 - previously `OPENCASCADE_LIBRARIES` supposed to be a list of libraries filepaths, but after refactor `OpenCASCADE_LIBRARIES` end up being both list of library names and list of filepaths.
And since link directories for the names was not provided, it failed to find the libraries to link.
If using OpenCASCADEconfig it wouldn't fail as cmake would evaluate library names as imported target names.

To fix it and simplify it even further, in case of manually provided paths, it now creates `OpenCASCADE_INTERFACE` target and stores it in `OpenCASCADE_LIBRARIES` - target will automatically have all the includes, library names and library dirs.
2025-11-21 18:28:06 +05:00
Andrej730 f56a97512a Rename IFC_GEOM_EXPORTS replaced in #7340 2025-11-20 20:12:48 +05:00
Esteban DUGUEPEROUX 9d28628157 cmake: Have a dedicated CMakeLists.txt for kernels 2025-11-19 11:23:04 +01:00
Thomas Krijnen 9e9d664511 .glb --separate-z-up-node option 2025-11-17 18:26:00 +01:00
Thomas Krijnen d6daa64c48 Support --element-hierarchy in .glb output 2025-11-17 14:05:59 +01:00
Thomas Krijnen a34e42a519 Handle infra sweeps of open loops #7338 2025-11-13 12:43:41 +01:00
Richard Brice 96da78c670 Updates IfcSectionedSurface so it works with taxonomy::function_item 2025-11-12 11:37:07 -08:00
Thomas Krijnen bd5a1b5bda Account 2x3/4 differences in Shading/Rendering::Transparency() 2025-10-30 18:35:20 +01:00
Thomas Krijnen eb1c81514b Check for attribute nil #7276 #7291 2025-10-28 10:51:31 +01:00
Thomas Krijnen b1c44d42e3 Reset logger product to none 2025-10-26 13:31:31 +01:00
Thomas Krijnen 9e2c7e653f Commit suggestion in #7276 2025-10-22 14:37:10 +02:00
Thomas Krijnen 200c0bf773 Commit suggestion in #7276 2025-10-22 13:23:34 +02:00
Thomas Krijnen 9415878f57 Remove warning about combination of RefDirection as Axis #7251 2025-10-21 13:33:32 +02:00
Thomas Krijnen 919ac41a74 Consider case of only RefDirection in sectioned shapes #7251 2025-10-21 13:32:51 +02:00
Thomas Krijnen 80093f3777 Loft all wires not only the outer one #7251 2025-10-21 13:09:10 +02:00
Thomas Krijnen 28f5d6e91c Copy internal status on interpolated loops #7251 2025-10-21 13:08:29 +02:00
Thomas Krijnen 2b3ec66017 mark failed_on_purpose on IfcBoundingBox without --keep-bounding-boxes #7215 2025-10-09 08:45:25 +02:00
Osyotr 066326ab3b Fix warning C4275
It's not enough to disable this warning by adding /wd4257 at build time because it's triggered when the library is consumed.
2025-10-03 18:12:56 +02:00
Osyotr 92e25ce3cb Fix warning C4702: unreachable code 2025-10-03 13:56:10 +02:00
Thomas Krijnen d684d47dc8 Make sure compound structure is retained as SvgSerializer depends on it 2025-10-01 15:01:50 +02:00
Thomas Krijnen ce91d296b6 dllimport/export #6926 2025-09-26 14:24:49 +02:00
Thomas Krijnen b6abb24858 Support single circ/elip compcurves #7149 2025-09-23 11:11:42 +02:00
Thomas Krijnen b5ccb93618 Fix Outer bound check in serializer #7099 2025-09-13 14:24:03 +02:00
Thomas Krijnen 18ad13cb8b Merge remote-tracking branch 'origin/v0.8.0' into tfk-rocksdb-storage 2025-08-31 16:06:07 +02: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
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
Thomas Krijnen a958f1373c Eliminate some warnings 2025-08-27 11:03:16 +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
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