mirror of https://github.com/CGAL/cgal
Merge pull request #8028 from mglisse/Triangulation-dim_8bit-glisse
Store index/dimension in 8 bits
This commit is contained in:
commit
c21128e652
|
|
@ -76,6 +76,9 @@ Release date: October 2023
|
|||
- Added three functions `vertices()` to the class `Triangulation_3`.
|
||||
Each of them returns an array containing the vertices of the given triangulation simplex.
|
||||
|
||||
### [dD Triangulations](https://doc.cgal.org/6.0/Manual/packages.html#PkgTriangulations)
|
||||
- **Breaking change**: `CGAL::TDS_full_cell_mirror_storage_policy` is now unsupported in dimension larger than 127.
|
||||
|
||||
[Release 5.6](https://github.com/CGAL/cgal/releases/tag/v5.6)
|
||||
-----------
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ indices are not stored).
|
|||
<LI>`CGAL::TDS_full_cell_default_storage_policy`. In that case, the mirror
|
||||
indices are not stored.
|
||||
<LI>`CGAL::TDS_full_cell_mirror_storage_policy`. In that case, the mirror
|
||||
indices are stored.
|
||||
indices are stored. This last policy is not supported when the dimension is larger than 127.
|
||||
</UL>
|
||||
See the user manual for how to choose the second option.
|
||||
|
||||
|
|
|
|||
|
|
@ -14,8 +14,8 @@
|
|||
|
||||
#include <CGAL/license/Triangulation.h>
|
||||
|
||||
|
||||
#include <CGAL/TDS_full_cell_default_storage_policy.h>
|
||||
#include <cstdint>
|
||||
|
||||
namespace CGAL {
|
||||
|
||||
|
|
@ -30,7 +30,7 @@ struct TFC_data< Vertex_handle, Full_cell_handle, Maximal_dimension, TDS_full_
|
|||
typedef TFC_data< Vertex_handle, Full_cell_handle, Maximal_dimension, TDS_full_cell_default_storage_policy > Base;
|
||||
typedef typename Base::Vertex_handle_array Vertex_handle_array;
|
||||
typedef typename Base::Full_cell_handle_array Full_cell_handle_array;
|
||||
typedef typename internal::S_or_D_array< int, typename Base::Dimen_plus > Int_array;
|
||||
typedef typename internal::S_or_D_array< std::int_least8_t, typename Base::Dimen_plus > Int_array;
|
||||
|
||||
private:
|
||||
Int_array mirror_vertices_;
|
||||
|
|
@ -42,7 +42,7 @@ public:
|
|||
|
||||
void set_mirror_index(const int i, const int index)
|
||||
{
|
||||
mirror_vertices_[i] = index;
|
||||
mirror_vertices_[i] = static_cast<std::int_least8_t>(index);
|
||||
}
|
||||
int mirror_index(const int i) const
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue