Gypaets/findTheHole​s

Mesh reconstruction and hole finding in a point cloud

https://github.com/Gypaets/findTheHoles

Vous suivez désormais cette soumission

[triangulation, holes] = findTheHoles(XY,S,M,T)
% Definition
findTheHoles is a 2D mesh reconstruction tool which automatically
identifies holes in a points cloud.
% Usage
Input:
XY= Nx2 matrix with point coordinates.
Optional arguments:
S = Critical area ratio (real and positive number). Knots with a value
higher than the ratio of maximum to minimum neighbouring polygon
area are identified as hole-border points. Default value is 3.
M = Flag for manual editing. Default value is 0.
0: No manual editing.
1: Manual editing of hole-border points. After the first calculation
a figure with the point cloud is opened. Automatically recognized
points are marked with an 'x'. The user can add/remove
not/wrongly recognized border points selecting them with the
brush and clicking the appropiate button.
T = Triangulation (Nx3 matrix with polygon vertices). If not given the
delaunay triangulation of X,Y is used.
Output:
triangulation
.Points: nx2 matrix with points' coordinates.
.ConnectivityList: nx3 matrix with the triangulation polygons.
holes: Cell array. Each cell element is an nx1 matrix with ordered
hole border point indices.

% Method
To identify the holes a triangulation of the points cloud is needed. If
none is given, the delaunay triangulation is used. Points where the
ratio between maximum and minimum neighbouring polygon area exceeds a
critical value are identified as hole-border points. Polygons for which
all vertices are identified as hole-border points are deleted.
The adjacency matrix of the resulting mesh is clustered to get the
holes.
% Issues
The clustering algorithm isn't fully developed yet and has issues with
interconnected holes among others.

% Examples
See file examples_findTheHoles.m

Citation pour cette source

Gypaets (2026). Gypaets/findTheHoles (https://github.com/Gypaets/findTheHoles), GitHub. Extrait(e) le .

Remerciements

A inspiré : HoleDetection3D

Informations générales

Compatibilité avec les versions de MATLAB

  • Compatible avec toutes les versions

Plateformes compatibles

  • Windows
  • macOS
  • Linux

Les versions qui utilisent la branche GitHub par défaut ne peuvent pas être téléchargées

Version Publié le Notes de version Action
1.0.0.0

Repo update.
Added image to description

Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.
Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.