PurposeIntegrality of surface mesh is requisite for computational engineering. Nonwatertight meshes with holes can bring inconvenience to applications. Unlike simple modeling or visualization, the downstream industrial application scenarios put forward higher requirements for hole-filling, although many related algorithms have been developed. This study aims at the hole-filling issue in industrial application scenarios.Design/methodology/approachThis algorithm overcomes some inherent weakness of general methods and generates a high-level resulting mesh. Initially, the primitive hole boundary is filled with a more appropriate triangulation which introduces fewer geometric errors. And in order for better performances on shape approximation of the background mesh, the algorithm also refines the initial triangulation with topology optimization. When obtaining the background mesh defining the geometry and size field, spheres on it are packed to determine the vertex configuration and then the resulting high-level mesh is generated.FindingsThrough emphasizing geometry recovery and mesh quality, the proposed algorithm works well in hole-filling in industrial application scenarios. Many experimental results demonstrate the reliability and the performance of the algorithm. And the processed meshes are capable of being used for industrial simulation computations directly.Originality/valueThis paper makes input meshes more adaptable for solving programs through local modifications on meshes and perfects the preprocessing technology of finite element analysis (FEA).