You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the PMP::detect_vertex_incident_patches function, the property map is calculated only for vertices incident to feature edges.
But the documentation says: "a property map that will contain the patch ids of all the faces incident to each vertex of pmesh".
I think there's a bug in the condition
// Look only at feature verticesif(!get(edge_is_feature_map, edge(halfedge(vit, pmesh), pmesh)))
continue;
at line 337, in the file "CGAL/Polygon_mesh_processing/detect_features.h"
Source Code
I have generated a cube in which each face has a point on each face that is not incident to feature edges.
The number of incident patches for these points is zero, which does not correspond to the documentation.
> This commit fixes an issue in the `detect_vertex_incident_patches` function where only vertices incident to feature edges were processed. According to the documentation, every vertex should have a property map entry containing the patch IDs of all incident faces. However, due to the condition:
>
> ```cpp
> // Look only at feature vertices
> if(!get(edge_is_feature_map, edge(halfedge(vit, pmesh), pmesh)))
> continue;
> ```
>
> vertices that are not incident to any feature edges were being skipped, resulting in their patch IDs remaining empty. This patch removes (or comments out) that conditional check, ensuring that every vertex is examined and its corresponding patch IDs are collected. This change aligns the function’s behavior with its documentation.
>
> **Files Affected:**
> `Polygon_mesh_processing/include/CGAL/Polygon_mesh_processing/detect_features.h`
>
> **Impact:**
> All vertices in the mesh now have the property map populated with the patch IDs of all incident faces, ensuring consistent and correct behavior as expected by users.
>
> **Issue Reference:**
> FixesCGAL#8730
Issue Details
In the
PMP::detect_vertex_incident_patches
function, the property map is calculated only for vertices incident to feature edges.But the documentation says: "a property map that will contain the patch ids of all the faces incident to each vertex of pmesh".
I think there's a bug in the condition
at line 337, in the file "CGAL/Polygon_mesh_processing/detect_features.h"
Source Code
I have generated a cube in which each face has a point on each face that is not incident to feature edges.
The number of incident patches for these points is zero, which does not correspond to the documentation.
Environment
Qt 6.7.3
Everything is installed via vcpkg (classic mode).
The text was updated successfully, but these errors were encountered: