Visual Comput (2007) DOI 10.1007/s00371-007-0167-y ORIGINAL ARTICLE Wei Zhao Shuming Gao Hongwei Lin A robust hole-filling algorithm for triangular mesh Springer-Verlag 2007 W. Zhao · S. Gao () · H. Lin The State Key Lab of CAD&CG, Zhejiang University, Hang Zhou, China {zhaowei, smgao, hwlin}@cad.zju.edu.cn Abstract This paper presents a novel hole-filling algorithm that can fill arbitrary holes in triangular mesh models. First, the advancing front mesh technique is used to cover the hole with newly created triangles. Next, the desirable normals of the new triangles are approximated using our desirable normal com- puting schemes. Finally, the three coordinates of every new vertex are re-positioned by solving the Poisson equation based on the desirable normals and the boundary vertices of the hole. Many experimental results and error evaluations are given to show the robustness and efficiency of the algorithm. Keywords Hole-filling · Poisson equation · Harmonic Function · Triangular mesh 1 Introduction Triangular meshes are used widely to represent an ob- ject in 3D modeling systems and computer graphics ap- plications. And they can be obtained in various ways such as a 3D scanner and computer-aided design soft- ware. However, due to the limitations of the generation methods, the resulting triangular mesh models cannot be utilized directly by other applications often because of their incompletion, i.e., containing some defects, such as holes, self-intersecting triangles, gaps, etc. Therefore, cer- tain repairs must be done before taking these models into actual applications, and hole-filling is an important one among them. Another important application of the hole- filling algorithm is in the area of feature suppression. In many computer-aided engineering applications, detailed geometric features are not necessary, so that the triangles involved in the detailed features need to be deleted and the resulting hole must be filled. Many hole-filling approaches have been proposed in the literature. These approaches can be divided into two cate- gories: voxel-based and triangle-based. In the voxel-based approaches, a mesh model is first converted into a volu- metric representation which consists of discrete volumes named voxels, and then different methods are utilized to patch up the holes in volumetric space. Davis et al. [7] used volumetric diffusion to fill the gaps and Curless et al. [6] employed space carving and iso-surface extraction to fill holes. Ju [12] constructed an inside/outside volume using an octree grid and re-constructed the surface by contour- ing. Joshua and Szymon [14] used a min-cut algorithm to split space into inside and outside portions, and patched the holes simultaneously in a globally sensitive manner. Voxel- based approaches work well for complex holes but they are all time-consuming and may generate incorrect topology in some cases. In the triangle-based approaches, the holes are patched by dealing with the triangles directly. Holes with regu- lar boundary over a relatively planar region can be easily patched via planar triangulation, which has been described in detail by a number of textbooks and papers [8, 11, 17]. However, filling a complex hole over an irregular region is much more difficult. To solve this problem, Carr et al. [1] used radial basis function to construct an implicit