Engineering with Computers

, Volume 31, Issue 1, pp 123–139 | Cite as

An algorithm to mesh interconnected surfaces via the Voronoi interface

Original Article


Many scientific and engineering problems involve interconnected surfaces meeting at junctions. For example, understanding the dynamics of a soap bubble foam can require modelling the fluid mechanics of liquid inside an intricate network of thin-film membranes. If a mesh of these surfaces is needed, the use of standard meshing algorithms often leads to voids, overlapping elements, or other artefacts near the junctions. Here, we present an algorithm to generate high-quality triangulated meshes of a set of interconnected surfaces with high surface accuracy. By capitalising on mathematical aspects of a geometric construction known as the “Voronoi interface”, the algorithm first creates a topologically consistent mesh automatically, without making heuristic or complex decisions about surface topology. In particular, elements that meet at a junction do so by sharing a common edge, leading to simplifications in finite element calculations. In the second stage of the algorithm, mesh quality is improved by applying a short sequence of force-based smoothing, projection, and edge-flipping steps. Efficiency is further enhanced by using a locally adaptive time stepping scheme that prevents inversion of mesh elements, and we also comment on how the algorithm can be parallelised. Results are shown using a variety of examples arising from multiphase curvature flow, geometrically defined objects, surface reconstruction from volumetric point clouds, and a simulation of the multiscale dynamics of a cluster of soap bubbles. In this last example, generating high-quality meshes of evolving interconnected surfaces is crucial in determining thin-film liquid dynamics via finite element methods.


Interconnected surfaces Triangulated mesh Voronoi interface Multiphase Multi-material data sets 



This research was supported in part by the Applied Mathematical Sciences subprogram of the Office of Energy Research, US Department of Energy, under contract number DE-AC02-05CH11231, by the Division of Mathematical Sciences of the National Science Foundation, and by an American Australian Association Sir Keith Murdoch Fellowship.


  1. 1.
    Saye RI, Sethian JA (2013) Multiscale modeling of membrane rearrangement, drainage, and rupture in evolving foams. Science 340(6133):720–724. doi: 10.1126/science.1230623 CrossRefMathSciNetGoogle Scholar
  2. 2.
    Saye RI, Sethian JA (2011) The Voronoi Implicit Interface Method for computing multiphase physics. Proceedings of the National Academy of Sciences 108(49):19,498–19,503. doi: 10.1073/pnas.1111557108 CrossRefMathSciNetGoogle Scholar
  3. 3.
    Osher S, Sethian JA (1988) Fronts propagating with curvature-dependent speed: Algorithms based on Hamilton-Jacobi formulations. Journal of Computational Physics 79(1):12–49. doi: 10.1016/0021-9991(88)90002-2 CrossRefMATHMathSciNetGoogle Scholar
  4. 4.
    Saye RI, Sethian JA (2012) Analysis and applications of the Voronoi Implicit Interface Method. Journal of Computational Physics 231(18):6051–6085. doi: 10.1016/ CrossRefMathSciNetGoogle Scholar
  5. 5.
    Lorensen WE, Cline HE (1987) Marching cubes: A high resolution 3d surface construction algorithm. Computer Graphics 21(4):163–169. doi: 10.1145/37402.37422 CrossRefGoogle Scholar
  6. 6.
    Guéziec A, Hummel R (1995) Exploiting triangulated surface extraction using tetrahedral decomposition. IEEE Trans Visual Comput Graph 1(4):328–342. doi: 10.1109/2945.485620 CrossRefGoogle Scholar
  7. 7.
    Payne BA, Toga AW (1990) Surface mapping brain function on 3d models. IEEE Comput Graph Appl 10(5):33–41. doi: 10.1109/38.59034 CrossRefGoogle Scholar
  8. 8.
    Chan SL, Purisima EO (1998) A new tetrahedral tesselation scheme for isosurface generation. Computers and Graphics 22(1):83–90. doi: 10.1016/S0097-8493(97)00085-X CrossRefGoogle Scholar
  9. 9.
    Bloomenthal J, Ferguson K (1995) Polygonization of non-manifold implicit surfaces. In: proceedings of the 22nd annual conference on computer graphics and interactive techniques, SIGGRAPH ’95, pp. 309–316. ACM. doi: 10.1145/218380.218462
  10. 10.
    Suzuki H, Fujimori T, Michikawa T, Miwata Y, Sadaoka N (2007) Skeleton surface generation from volumetric models of thin plate structures for industrial applications. In: Martin R, Sabin M, Winkler J (eds.) Mathematics of Surfaces XII, lecture notes in computer science 4647:442–464. Springer Berlin Heidelberg. doi: 10.1007/978-3-540-73843-5_27
  11. 11.
    Shammaa MH, Suzuki H, Ohtake Y (2008) Extraction of isosurfaces from multi-material CT volumetric data of mechanical parts. In: Proceedings of the 2008 ACM symposium on solid and physical modeling, pp. 213–220. ACM. doi: 10.1145/1364901.1364931
  12. 12.
    Hege HC, Seebass M, Stalling D, Zöckler M (1997) A generalized marching cubes algorithm based on non-binary classifications. Tech. rep., Konrad-Zuse-Zentrum für Informationstechnik BerlinGoogle Scholar
  13. 13.
    Yamazaki S, Kase K, Ikeuchi K (2002) Non-manifold implicit surfaces based on discontinuous implicitization and polygonization. In: proceedings of geometric modeling and processing 2002, pp. 138–146. doi: 10.1109/GMAP.2002.1027505
  14. 14.
    Pons JP, Ségonne F, Boissonnat JD, Rineau L, Yvinec M, Keriven R (2007) High-quality consistent meshing of multi-label datasets. In: Karssemeijer N, Lelieveldt B (eds.) Information Processing in Medical Imaging, IPMI’07, pp. 198–210. Springer Berlin Heidelberg. doi: 10.1007/978-3-540-73273-0_17
  15. 15.
    Dey TK, Janoos F, Levine JA (2012) Meshing interfaces of multi-label data with Delaunay refinement. Eng Comput 28:71–82. doi: 10.1007/s00366-011-0217-y CrossRefGoogle Scholar
  16. 16.
    Boltcheva D, Yvinec M, Boissonnat JD (2009) Mesh generation from 3d multi-material images. In: Medical Image Computing and Computer-Assisted Intervention, MICCAI ’09, pp. 283–290. Springer-Verlag. doi: 10.1007/978-3-642-04271-3_35
  17. 17.
    Shimada K, Gossard DC (1995) Bubble mesh: automated triangular meshing of non-manifold geometry by sphere packing. In: Proceedings of the third ACM symposium on solid modeling and applications, SMA ’95, pp. 409–419. ACM. doi: 10.1145/218013.218095
  18. 18.
    Meyer M, Whitaker R, Kirby RM, Ledergerber C, Pfister H (2008) Particle-based sampling and meshing of surfaces in multimaterial volumes. IEEE Trans Visual Comput Graph 14(6):1539–1546. doi: 10.1109/TVCG.2008.154 CrossRefGoogle Scholar
  19. 19.
    Bronson JR, Levine JA, Whitaker RT (2013) Lattice cleaving: Conforming tetrahedral meshes of multimaterial domains with bounded quality. In: Jiao X, Weill JC (eds.) Proceedings of the 21st International Meshing Roundtable, pp. 191–209. Springer Berlin Heidelberg. doi: 10.1007/978-3-642-33573-0_12
  20. 20.
    Labelle F, Shewchuk JR (2007) Isosurface stuffing: Fast tetrahedral meshes with good dihedral angles. In: ACM SIGGRAPH 2007 papers, SIGGRAPH ’07, vol.~26. ACM, New York doi: 10.1145/1275808.1276448
  21. 21.
    Chernikov AN, Chrisochoides NP (2011) Multitissue tetrahedral image-to-mesh conversion with guaranteed quality and fidelity. SIAM J Sci Comput 33(6):3491–3508. doi: 10.1137/100815256 CrossRefMATHMathSciNetGoogle Scholar
  22. 22.
    Reitinger B, Bornik E, Beichel R (2005) Constructing smooth non-manifold meshes of multi-labeled volumetric datasets. In: Proceedings of WSCG 2005, pp. 227–234. UNION Agency Science PressGoogle Scholar
  23. 23.
    Zhang Y, Qian J (2012) Resolving topology ambiguity for multiple-material domains. Comput Method Appl Mech Eng 247:166–178. doi: 10.1016/j.cma.2012.07.022 CrossRefMathSciNetGoogle Scholar
  24. 24.
    Zhang Y, Hughes TJR, Bajaj CL (2008) Automatic 3d mesh generation for a domain with multiple materials. In: M.L. Brewer, D.Marcum (eds.) Proceedings of the 16th International Meshing Roundtable, pp. 367–386. Springer Berlin Heidelberg. doi: 10.1007/978-3-540-75103-8_21
  25. 25.
    Liu Y, Foteinos P, Chernikov A, Chrisochoides N (2010) Multi-tissue mesh generation for brain images. In: Shontz S (ed.) Proceedings of the 19th International Meshing Roundtable, pp. 367–384. Springer Berlin Heidelberg. doi: 10.1007/978-3-642-15414-0_22
  26. 26.
    Bloomfield MO, Richards DF, Cale TS (2005) The use of conformal voxels for consistent extractions from multiple level-set fields. In: Sunderam VS, van Albada GD, Sloot PA, Dongarra J (eds.) Computational Science - ICCS 2005, Lecture Notes in Computer Science, Vol. 3516, pp. 49–56. Springer Berlin Heidelberg. doi: 10.1007/11428862_7
  27. 27.
    d’Otreppe V, Boman R, Ponthot JP (2012) Generating smooth surface meshes from multi-region medical images. Int J Numerical Methods Biomed Eng 28(6-7):642–660. doi: 10.1002/cnm.1471 CrossRefMathSciNetGoogle Scholar
  28. 28.
    Anderson JC, Garth C, Duchaineau MA, Joy KI (2010) Smooth, volume-accurate material interface reconstruction. IEEE Trans Visual Comput Graph 16(5):802–814. doi: 10.1109/TVCG.2010.17 CrossRefGoogle Scholar
  29. 29.
    Persson PO, Strang G (2004) A simple mesh generator in Matlab. SIAM Rev 46(2):329–345. doi: 10.1137/S0036144503429121 CrossRefMATHMathSciNetGoogle Scholar
  30. 30.
    Sethian JA (1996) A fast marching level set method for monotonically advancing fronts. Proceedings of the National Academy of Sciences 93:1591–1595. doi: 10.1073/pnas.93.4.1591
  31. 31.
    Chopp DL (2001) Some improvements of the Fast Marching Method. SIAM J Sci Comput 23(1):230–244. doi: 10.1137/S106482750037617X Google Scholar
  32. 32.
    Tsitsiklis JN (1995) Efficient algorithms for globally optimal trajectories. IEEE Transactions on Automatic Control 40(9):1528–1538. doi: 10.1109/9.412624 CrossRefMATHMathSciNetGoogle Scholar
  33. 33.
    Adalsteinsson D, Sethian JA (1995) A fast level set method for propagating interfaces. J Comput Phys 118(2):269–277. doi: 10.1006/jcph.1995.1098 CrossRefMATHMathSciNetGoogle Scholar
  34. 34.
    Carr H, Möller T, Snoeyink J (2006) Artifacts caused by simplicial subdivision. IEEE Transactions on Visualization and Computer Graphics 12(2):231–242. doi: 10.1109/TVCG.2006.22 CrossRefGoogle Scholar
  35. 35.
    Leng J, Zhang Y, Xu G (2012) A novel geometric flow-driven approach for quality improvement of segmented tetrahedral meshes. In: Quadros WR (ed.) Proceedings of the 20th International Meshing Roundtable, pp. 347–364. Springer Berlin Heidelberg. doi: 10.1007/978-3-642-24734-7_19
  36. 36.
    Desbrun M, Meyer M, Schröder P, Barr AH (1999) Implicit fairing of irregular meshes using diffusion and curvature flow. In: Proceedings of the 26th annual conference on computer graphics and interactive techniques, SIGGRAPH ’99, pp. 317–324. ACM Press/Addison-Wesley Publishing Co., New York, NY, USA. doi: 10.1145/311535.311576
  37. 37.
    Persson PO (2005) Mesh generation for implicit geometries. Ph.D. thesis, Massachusetts Institute of TechnologyGoogle Scholar
  38. 38.
    Bern M, Plassmann P (1999) Mesh generation. In: Sack JR, Urutia J (eds.) Handbook of Computational Geometry. Elsevier Science, AmsterdamGoogle Scholar
  39. 39.
    Field DA (2000) Qualitative measures for initial meshes. Int J Numer Methods Eng 47(4):887–906. doi: 10.1002/(SICI)1097-0207(20000210)47:4<887::AID-NME804>3.0.CO;2-H CrossRefMATHGoogle Scholar
  40. 40.
    Freitag LA, Jones MT, Plassmann PE (1999) The scalability of mesh improvement algorithms. In: Heath MT, Ranade A, Schreiber RS (eds.) Algorithms for parallel processing, The IMA volumes in mathematics and its applications, vol. 105, pp. 185–211. Springer New York. doi: 10.1007/978-1-4612-1516-5_9

Copyright information

© Springer-Verlag London 2013

Authors and Affiliations

  1. 1.Department of Mathematics and Lawrence Berkeley National LaboratoryUniversity of California, BerkeleyBerkeleyUSA

Personalised recommendations