commit 462e39a5b33b73c773dd2909f9be3536ac620efc parent 8380bcf289e20dca8a6e0231389818f96b5f91f6 Author: Vincent Forest <vincent.forest@meso-star.com> Date: Thu, 27 Apr 2023 17:02:28 +0200 Merge branch 'release_0.5.4' into develop Diffstat:
36 files changed, 81 insertions(+), 74 deletions(-)
diff --git a/README.md b/README.md @@ -39,17 +39,24 @@ variable the install directories of its dependencies. Release notes ------------- +### Version 0.5.4 + +- Fixes the (rare) situation where temporary local variables could be used in + a unitialized way in the `senc3d_scene_create` function. +- Sets the required version of Star-SampPling to 0.12. This version fixes + compilation errors with gcc 11 but introduces API breaks. + ### Version 0.5.3 -- Fix API break on filter function introduced by Star-3D 0.8. +- Fix API break on filter function introduced by Star-3D 0.8. ### Version 0.5.1 -- BugFix: enclosures including multiple media could end with invalid - primitive count. +- BugFix: enclosures including multiple media could end with invalid + primitive count. -- BugFix: grouping of components in contact at a single vertex was - incorrect, causing invalid enclosures. +- BugFix: grouping of components in contact at a single vertex was + incorrect, causing invalid enclosures. ### Version 0.5 @@ -58,72 +65,72 @@ to an add-like call anymore. Instead the whole geometry must be provided at once, with no duplicates (either vertices or triangles) nor zero-area triangles. -- Compute volume and surface of enclosures. +- Compute volume and surface of enclosures. -- Report overlapping triangles. - Only triangles with a common edge are currently detected. - Do not extract enclosures when overlapping triangles are detected. +- Report overlapping triangles. + Only triangles with a common edge are currently detected. + Do not extract enclosures when overlapping triangles are detected. -- Make enclosure IDs consistent across runs. +- Make enclosure IDs consistent across runs. -- Fix enclosure extraction when all triangles Nz component is zero. +- Fix enclosure extraction when all triangles Nz component is zero. -- More robust on invalid scenes. +- More robust on invalid scenes. ### Version 0.4.2 -- Fix global id of triangles; releases 0.4.0 and 0.4.1 are broken +- Fix global id of triangles; releases 0.4.0 and 0.4.1 are broken -- Reintroduce an API call to get the global id in user space of - a global unique triangle after deduplication +- Reintroduce an API call to get the global id in user space of + a global unique triangle after deduplication ### Version 0.4.1 -- Fix an infinite loop related to a rare numerical accuracy problem. +- Fix an infinite loop related to a rare numerical accuracy problem. ### Version 0.4 -- Change signature of the senc_scene_add_geometry API. Thus this release - is **not compatible** with previous ones. - The global_id callback that was ill-defined is removed and 2 callbacks - are added to manage client-app data when deduplicating geometry. - These 2 callback allow a proper client-app management of global ids. -- Remove execution time for analysis steps from the log. +- Change signature of the senc_scene_add_geometry API. Thus this release + is **not compatible** with previous ones. + The global_id callback that was ill-defined is removed and 2 callbacks + are added to manage client-app data when deduplicating geometry. + These 2 callback allow a proper client-app management of global ids. +- Remove execution time for analysis steps from the log. ### Version 0.3.1 -- Performance Fix: when a connex component was canceled by a thread the - complexity was O(n^2). New algorithm is O(n). -- Output execution time for analysis steps in the log. +- Performance Fix: when a connex component was canceled by a thread the + complexity was O(n^2). New algorithm is O(n). +- Output execution time for analysis steps in the log. ### Version 0.3 -- Add API calls to access to geometry frontiers. -- Improve documentation in the header file. -- BugFix: wrong data cleaning on computation canceling. +- Add API calls to access to geometry frontiers. +- Improve documentation in the header file. +- BugFix: wrong data cleaning on computation canceling. ### Version 0.2.2 -- BugFix when grouping components into enclosures. -- Add a warning message in log when triangles that could surround a - hole are found (triangles with at least one unshared edge and - different media on its sides). +- BugFix when grouping components into enclosures. +- Add a warning message in log when triangles that could surround a + hole are found (triangles with at least one unshared edge and + different media on its sides). ### Version 0.2.1 -- BugFix: needed data cleaning on computation canceling. +- BugFix: needed data cleaning on computation canceling. ### Version 0.2 -- Add the support of enclosures with multiple media. -- Allow to set the FRONT/BACK convention for input triangles. -- Allow to set the normal convention for output triangles. +- Add the support of enclosures with multiple media. +- Allow to set the FRONT/BACK convention for input triangles. +- Allow to set the normal convention for output triangles. License ------- -Star-enclosures-3d is Copyright (C) |Méso|Star> 2019-2020 -(<a href="mailto:contact@meso-star.com" class="email">contact@meso-star.com</a>). +Copyright © 2018-2020, 2023 [|Méso|Star>](https://www.meso-star.com) +(<contact@meso-star.com>). It is free software released under the GPLv3+ license. You are welcome to redistribute it under certain conditions; refer to the COPYING files for details. diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +# Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -64,7 +64,7 @@ endif() ############################################################################### set(VERSION_MAJOR 0) set(VERSION_MINOR 5) -set(VERSION_PATCH 3) +set(VERSION_PATCH 4) set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}) set(SENC3D_FILES_SRC diff --git a/src/senc3d.h b/src/senc3d.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_descriptor.c b/src/senc3d_descriptor.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_device.c b/src/senc3d_device.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_device_c.h b/src/senc3d_device_c.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_enclosure.c b/src/senc3d_enclosure.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_enclosure_c.h b/src/senc3d_enclosure_c.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_enclosure_data.h b/src/senc3d_enclosure_data.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_internal_types.h b/src/senc3d_internal_types.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_sXd_helper.h b/src/senc3d_sXd_helper.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_scene.c b/src/senc3d_scene.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_scene_analyze.c b/src/senc3d_scene_analyze.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_scene_analyze_c.h b/src/senc3d_scene_analyze_c.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_scene_c.h b/src/senc3d_scene_c.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/senc3d_side_range.h b/src/senc3d_side_range.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/sencX3d.h b/src/sencX3d.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/sencX3d_undefs.h b/src/sencX3d_undefs.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_cube_behind_cube.c b/src/test_senc3d_cube_behind_cube.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_cube_in_cube.c b/src/test_senc3d_cube_in_cube.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_cube_on_cube.c b/src/test_senc3d_cube_on_cube.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_device.c b/src/test_senc3d_device.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_enclosure.c b/src/test_senc3d_enclosure.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_inconsistant_cube.c b/src/test_senc3d_inconsistant_cube.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_invalid_scenes.c b/src/test_senc3d_invalid_scenes.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_many_enclosures.c b/src/test_senc3d_many_enclosures.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_many_triangles.c b/src/test_senc3d_many_triangles.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_multi_media.c b/src/test_senc3d_multi_media.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_sample_enclosure.c b/src/test_senc3d_sample_enclosure.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_scene.c b/src/test_senc3d_scene.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_some_enclosures.c b/src/test_senc3d_some_enclosures.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_some_triangles.c b/src/test_senc3d_some_triangles.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_unspecified_medium.c b/src/test_senc3d_unspecified_medium.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_utils.h b/src/test_senc3d_utils.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_utils2.h b/src/test_senc3d_utils2.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/src/test_senc3d_zero_distance.c b/src/test_senc3d_zero_distance.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2016-2021 |Meso|Star> (contact@meso-star.com) +/* Copyright (C) 2018-2020, 2023 |Méso|Star> (contact@meso-star.com) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by