Guo 2019
Guo 2019
Guo 2019
Computer-Aided Design
journal homepage: www.elsevier.com/locate/cad
article info a b s t r a c t
Article history: In this paper, we present a fully automatic framework that tessellates industrial computer-aided design
Received 16 May 2018 (CAD) models into high-quality triangular meshes. In contrast to previous approaches that are purely
Accepted 19 December 2018 parametric or performed directly in 3D space, our method is based on a remeshing algorithm that
can achieve accuracy and high-quality simultaneously. Given an input standard CAD model, which is
Keywords:
CAD tessellation represented by B-rep format, we first rebuild the parametric domain for each surface patch according to
High-quality mesh an initial triangulation, and then the boundaries of the parametric domain are retriangulated by exploiting
Remeshing the Constrained Delaunay Triangulation (CDT). In the second stage, the 2D triangulation is projected back
to the 3D space, and a modified global isotropic remeshing process is applied, which further improves
the regularity and angle quality of the tessellated meshes. Experiments demonstrate the validity of the
proposed approach and its ability to generate high-quality meshes. Moreover, we evaluate our technique
and compare it with state-of-the-art CAD model tessellation approaches.
© 2018 Elsevier Ltd. All rights reserved.
1. Introduction algorithms (e.g., MeshFix [8] and PolyMender [9]) experience dif-
ficulties in dealing with these problems. Moreover, even some
Tessellating Computer-Aided Design (CAD) models into discrete CAD models have correct topology and geometry, and also contain
representations is important in various downstream applications many small-scale features (e.g., tiny surfaces or thin blending
[1,2] ranging from engineering to scientific research, such as strips, as shown in Fig. 13) that do not contribute to downstream
numerical simulations, rapid prototyping, computational fluid dy- applications. Preserving such small features creates dense triangu-
namics, and visualization, to name a few. The tessellation pro- lations locally.
cess aims to generate a discrete mesh that approximates a CAD From a practical point of view, the ability to generate high-
model with simple discrete elements, e.g., triangles/quads for a quality meshes is the key to the success of numerical analyses
surface mesh and tetrahedra/pyramids/hexahedra for a volumetric [10]. A good mesh usually achieves balance between quality and
mesh. Among all types of tessellations, triangular surface mesh computation time, whereas low-quality (extremely thin or badly
generation attracts the most attention because of its simplicity distorted) elements often hinder the solution convergence and
and flexibility, which is also a prerequisite for many volumetric increase analysis errors. Furthermore, surface meshes are used as
tetrahedral meshing procedures [3]. input to volume mesh generators, thus considerably influencing
Although numerous meshing methods are available, automated the generation of quality volumetric meshes and furthering the
generation of high-quality meshes remains a challenge [4,5]. Even numerical results.
with modern commercial software (e.g., Ansys and Hypermesh) In this paper, we focus on generating isotropic surface meshes
and open-source packages (e.g., NetGen [6] and Gmsh [7]), gen- from CAD models that enhance existing approaches in several as-
erating correct and satisfying meshes is still a time consuming pects. The goal is to obtain well-shaped tessellations of CAD models
process that involves an excessive amount of human effort. As the with high accuracy, while considering the simplicity of patch lay-
complexity of the constructed CAD products increases, existing out and feature preservation. On the one hand, the system robustly
methods cannot always achieve accurate output due to incorrect, handles complex CAD models even with the (near)-degenerate
degenerate or ambiguous geometric designs in the CAD system, cases (Section 4.1) that commonly occur in the conceptual-to-
as illustrated in Fig. 1. Even post-processing with mesh repair early design of industrial products. We address this issue by first
detecting such configurations in an initial triangulation and then
✩ This paper has been recommended for acceptance by S.J. Owen removing non-manifold edges or inserting ‘‘anchor points’’ in the
∗ Corresponding author. parametric domain. Then the use of constrained Delaunay triangu-
E-mail addresses: jianwei.guo@nlpr.ia.ac.cn (J. Guo), xhjia@amss.ac.cn (X. Jia). lation (CDT) can generate correct results. Moreover, we produce
https://doi.org/10.1016/j.cad.2018.12.005
0010-4485/© 2018 Elsevier Ltd. All rights reserved.
50 J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59
Fig. 2. Our algorithm converts an input standard CAD model (881 patches) into a high-quality triangular mesh. At the bottom, we show the histograms of the angle (blue)
and triangle quality (green) distributions. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)
denoted as S(u, v ) = (x(u, v ), y(u, v ), z(u, v )), from a bounded 3. Parametric remeshing: Based on initial triangulation, we re-
domain of R2 , called parametric space, into a 3D coordinate system build the parametric domain for each patch and reapply
R3 , called object space. Furthermore, each patch Pi is uniquely CDT to preserve the boundaries for each parametric domain.
identified by its patch ID i and equipped with a surface type Ci , such Then, the 2D triangulation is projected back to 3D space.
as plane, cylinder, sphere, and B-spline surface. 4. Global remeshing: To improve the mesh quality, a global
To explore the topologic and geometric entities in the CAD isotropic remeshing process is applied. The user-specified
model, several third-party CAD kernels are available, e.g., OCCT meshing size is also satisfied in this stage.
[13], Computational Analysis Programming Interface (CAPRI) [52]. In
our implementation, we use OCCT to access the geometry of shapes Each step involves a precise task while gathering enough in-
represented in B-rep format. It also provides access to the topol- formation for the next step. Details of each step are given in the
ogy of the model, including the connectivity information between following sections.
different patches. However, to operate our mesher, the user is not
required to have a deep knowledge of OCCT. The only parameter for 4. Methodology
OCCT that can be specified by the user is the tessellation precision,
and this parameter is set as 100 (the default value) in all our 4.1. Initial triangulation
experiments.
The core idea of our algorithm is that we only perform surface
3.2. Overview remeshing on a discrete model to achieve high efficiency because
the edges and facets that depict the discrete surface mesh have lin-
The input to our framework is a standard CAD model, G = ear equations. Therefore, a suitable initial triangulation is required,
{Pi }ni=1 , which consists of n trimmed parametric surface patches but it should be generated quickly, and the approximation error
that can meet non-smoothly on boundaries. In addition, the user is should be small.
required to specify the target edge length, ltarget , as the desired size In our approach, we exploit OCCT to generate the initial trian-
of the approximation mesh. The output is a 2-manifold watertight gulation. Although this toolkit is designed to generate triangles for
triangular mesh M = {ti }m i=1 , consisting of as much as possible visualization purposes only (leading to non-conforming meshes at
of quasi-equilateral triangles ti . As shown in Fig. 3, our algorithm face boundaries) and has no gradation in element size, it can con-
undergoes four main stages:
trol the distance between the initial tessellation and the original
1. Initial triangulation: Initially, the CAD model G is converted analytical surfaces. Thus, geometric fidelity is preserved, i.e., the
into a simple triangulation by using OCCT, where the geo- approximation error is small.
metric fidelity (measured as approximation error) is guar- The initial triangulation is not closed yet because each patch Pi
anteed. is tessellated into a patch mesh Mi independently. This condition is
2. (Near-)degeneracy handling (optional): We detect the incor- favorable because our parametric remeshing stage is still operated
rect triangulation caused by poorly designed geometry and in a patch-wise manner. Besides, we collect the original vertices of
repair them by removing non-manifold edges or inserting the input geometry from the B-rep model. These vertices are then
‘‘anchor points’’, and then compute CDT in the parametric identified in the initial triangulation and marked with a ‘‘locked’’
domain. flag. Thus, if a vertex is marked as ‘‘locked’’, it remains fixed in later
52 J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59
Fig. 8. (a) Initial triangulation using OCCT causes gaps or overlaps between neigh-
boring patch meshes. (b) Our boundary curve recovery and sampling could generate
consistent vertices along the shared curves.
Fig. 10. Results before (left) and after (right) edge flipping by angle. Green circles
indicate the entangled triangles caused by splitting long edges.
Fig. 12. A gallery of examples generated by our framework. For each model, we show the input CAD geometry, tessellation result, zoom-in views, and histograms of the
angle (blue) and triangle quality (green) distributions. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this
article.)
56 J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59
Fig. 13. Tessellation results without (middle) and with (right) the operations of patch mesh clustering and constraint simplification.
Fig. 15. Comparison on ‘‘Receiver’’. Each row shows the surface mesh, cutaway
view of tetrahedral meshing, and slivers with dihedral angles smaller than 10◦ .
Fig. 14. Comparison with NetGen [6] and Gmsh [7] on the ‘‘Airplane bracket’’
dataset. From the output of Gmsh, we failed to generate a tetrahedral mesh. For
NetGen and our method, we show the surface mesh, cutaway view of tetrahedral
meshing, and livers with dihedral angles smaller than 10◦ .
is the average triangle quality in the triangulation; θmin and θmax represents the valence of the ith vertex. The value of ξ is positive,
are the minimal and maximal angles, and θ̄min is the average of the and a smaller value indicates a more regular triangulation. dRMS is
J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59 57
Table 1
Our tessellation qualities. |P | is the number of surface patches in the input; |M| is the number of triangles in the output. The other measurements are explained in Section 5.
We use ⋆ after the model name to indicate that the timing also includes the time cost of degeneracy repair.
Type Model |P | |M| Qav g θmin θ̄min θmax θ<30◦ % θ>90◦ % θ>120◦ % ξ dRMS dH (×10−2 ) Time (s)
Gear (Fig. 12) 229 77k 0.87 2.42 48.81 157.25 0.43 1.68 0.03 0.28 0.017 0.074 8.5
Uniform Helicopter Cockpit (Fig. 12) 72 18k 0.88 7.05 50.23 153.63 1.45 0.68 0.21 0.27 0.006 0.236 5.2
Component⋆ (Fig. 12) 183 42k 0.87 2.55 49.39 168.08 0.29 1.54 0.04 0.34 0.005 0.649 5.9
Car (Fig. 2) 881 93k 0.81 0.15 45.32 178.67 1.28 3.05 0.07 0.41 0.074 0.575 15.7
Cover (Fig. 3) 130 48k 0.86 0.78 48.22 130.82 0.32 1.85 0.01 0.31 0.037 0.146 5.6
Suspension Component (Fig. 3) 249 37k 0.85 3.08 47.60 156.53 0.53 2.75 0.02 0.30 0.102 0.512 6.8
Adaptive Seat⋆ (Fig. 12) 257 23k 0.84 0.01 46.92 178.88 0.44 2.76 0.04 0.33 0.029 0.217 10.2
Mini Servo (Fig. 12) 168 35k 0.86 0.88 48.13 176.04 0.27 2.18 0.03 0.32 0.036 0.232 4.5
Cellphone⋆ (Fig. 12) 985 58k 0.83 0.63 45.42 177.81 1.58 3.91 1.04 0.43 0.031 0.177 20.1
Heart (Fig. 13) 93 26k 0.87 0.01 49.05 177.42 1.62 1.19 0.05 0.32 0.006 0.227 8.2
the root mean square distance, and dH is the Hausdorff distance generates intersecting triangles near very narrow sharp features,
between the output mesh and input CAD model, measured with as illustrated in Fig. 14. By contrast, our algorithm is more robust
the Metro tool [58]. Here the input CAD model is approximated in obtaining correct tessellation results by carefully handling tan-
with a dense triangular mesh. gency degeneracy and performing boundary curve recovery before
From these results, we observe that our approach is robust global remeshing.
to tessellate CAD models and to generate high-quality triangular Next, we conduct a comparison in terms of tessellation qual-
meshes. Furthermore, we can remove the internal feature bound- ity. Besides using surface mesh quality metrics, we also evaluate
aries to achieve better quality, as shown in Fig. 13. Notice that the
these three methods by generating tetrahedral meshes. Then we
output meshes may still have a few low-quality triangles. The rea-
compute two criteria for evaluating the quality of a tetrahedral
son is that a complex CAD model usually contains various features
mesh: dihedral angle ϑ , and radius ratio κ . The radius ratio, κ ,
that affect surface mesh quality, i.e., short curves, curve proximities
is defined as κ = r in , where rin and rcir are the inscribed and
3r
and small input angles. An ill-shaped and jagged boundary will re- cir
sult in poor quality mesh elements [59]. This result is unavoidable circumscribed sphere radius of a tetrahedron, respectively. In our
because the features formed by input boundaries cannot be fully approach, we use TetGen [61] to generate tetrahedral meshes from
suppressed by our clustering approach. Cleaning such features on each surface mesh. Figs. 14 and 15 present the comparison for
the geometry level is another topic about CAD defeaturing [60], tetrahedral meshing. The quality is listed in Table 2, where NetGen
which is beyond the scope of this paper. However, histograms of runs by default in parallel mode. Comparison results verify that our
the angle and triangle quality distributions demonstrate that we tessellation technique yields higher quality surface and tetrahedral
can generate high-quality meshes generally. meshes. Furthermore, NetGen and Gmsh often lead to high-density
triangles (marked with green circles) around tiny features, which
Performance evaluation. Our algorithm can achieve greater ef-
ficiency than approaches that directly work on smooth surfaces, are undesirable in practical simulation.
because most of our geometry computations are performed on Finally, to demonstrate the effectivity of our improved remesh-
the discrete model. Specifically, the processing time mainly com- ing approach, we compare it with original real-time adaptive
prises three components: initial triangulation, parametric remesh- remeshing (RAR) method [12]. Fig. 16 shows the remeshing results,
ing, and global remeshing. Thanks to OCCT, the first step can be in which we use the same initial triangulation and 5 iterations
performed very efficiently. Parametric remeshing is the most time for our method and RAR. We achieve a higher quality mesh,
consuming step in our framework, because if we process each sur- especially near the feature boundaries, due to our operations of
face patch one-by-one, the total processing time is linear with the angle optimization and valence optimization for feature vertices.
number of input surface patches. Fortunately, we found that our Besides, the values of ξ of our method and RAR are 0.35 and 0.48,
parametric remeshing works on each patch mesh independently. respectively.
Thus this step can be parallelized. We use the OpenMP library for
threaded parametric remeshing. Comparison with commercial meshers. Many commercial soft-
In the last step, although we have to carefully deal with the ware, such as Altair HyperMesh,2 Pro/ENGINEER,3 MeshGems,4
sharp features that are common in CAD models, our algorithm are available in the market. These software packages are fully
is still considerably faster by utilizing real-time remeshing algo- optimized and provide various state-of-the-art surface meshing
rithms [11,12]. Table 1 lists the timings for tessellating each model. algorithms to generate high-quality meshes. However, they fail
In addition, performance can be further improved by disabling the when handling complex models with degeneracies, as shown in
back-to-surface projection without considerable loss of quality. Fig. 17. In this example, for the tangency case (labeled by (1) in the
figure), MeshGems and HyperMesh generate degenerate triangles.
5.2. Comparisons Although Pro/ENGINEER can correctly handle this tangency case,
it fails to tessellate the model where the curve proximity is met,
Comparison with open-source methods. We now compare our as labeled by (2) in the figure. Compared with these packages,
approach with two popular open-source software, NetGen [6] and our tessellation framework is much simpler, and it outperforms
Gmsh [7], which are both readily available and widely used in them by successfully tessellating this complex model. Therefore,
the meshing and simulation community. For fair comparison, we our algorithm can be used as a drop-in replacement for the task
tune the parameters of each algorithm to generate surface meshes involving CAD tessellation.
with a similar number of vertices and triangles. In addition, the
sizing function used in all methods is defined based on the cur-
vature. First, we compare the robustness of these three methods. 2 http://www.altairhyperworks.com.au/product/HyperMesh.
As shown in Fig. 1, NetGen cannot handle the degeneracy caused 3 https://www.ptc.com/en/products/cad/pro-engineer.
by tangency. While Gmsh is able to deal with such a case, it easily 4 http://www.meshgems.com/.
58 J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59
Table 2
Comparison of graded tetrahedral meshing qualities. The best result of each measurement is marked in bold font. |P | is the number of input patches; |M| is the number
of surface triangles; |τ | is the number of generated tetrahedra.
Model Method |M| |τ | Time (s) Triangle Mesh Tetrahedral Mesh
Qav g θ̄min θ<30◦ % ξ dRMS dH (×10−2 ) ϑmin ϑmax ϑ̄min κmin κ̄ ϑ<10◦ % ϑ<20◦ %
NetGen 26k 146k 16.5 0.824 45.52 3.36 0.35 0.084 0.339 2.17 173.27 69.58 0.005 0.75 0.11 1.38
Receiver (Fig. 14), |P |= 112 Gmsh 20k 106k 34.8 0.829 46.82 2.15 0.61 0.017 0.045 0.67 177.91 69.65 0 0.73 0.14 1.51
Ours 26k 142k 7.6 0.827 46.28 1.01 0.31 0.013 0.161 1.98 172.64 70.04 0.018 0.77 0.09 1.24
NetGen 55k 136k 18.3 0.799 44.14 3.1 0.32 0.165 0.796 0.07 179.28 69.68 0 0.72 0.35 1.71
Airplane bracket (Fig. 15), |P |= 228 Gmsh 63k × 89.5 0.631 38.14 16.28 0.76 0.128 0.473 × × × × × × ×
Ours 49k 125k 9.8 0.817 45.78 2.61 0.34 0.031 0.136 0.27 178.89 69.54 0 0.76 0.29 1.41
Fig. 17. Comparison with some commercial meshers. The green lines represent border edges, while red points represent the vertices of degenerate triangles. (For
interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)
5.3. Limitations (e.g., tight radius fillets, turbulators, and flow diversion devices)
and preserve them properly during mesh generation.
Although the tessellation results of our algorithm satisfy the
requirements for most simulation applications, we have not tack- Acknowledgments
led the exact approximation errors. We hope to address this issue
by integrating another parameter (approximation tolerance) into This work is partially funded by the National Natural Science
the remeshing stage in the future. Next, the SLIM parameterization Foundation of China (61802406, 61872354, 61772523 and
method we used only grants local injectivity, thus a global overlap 61620106003), the Beijing Natural Science Foundation, China
could still happen depending on the shape of the patch. Although (4184102), the Open Funding Project of State Key Laboratory of Vir-
we did not meet this case in our experiments, it remains prob- tual Reality Technology and Systems of Beihang University, China
lematic. We would like to explore other more advanced parame- (Grant No. BUAA-VR-17KF-06), and the Open Projects Program of
terization techniques. In addition, since our framework does not National Laboratory of Pattern Recognition (NLPR), China (Grant
involve any geometry repair mechanism, we cannot handle geom- No. 201700020).
etry errors existing in original CAD models, e.g., self-intersection.
Thus, designers are required to modify the geometry manually or References
automatically by using other repairing algorithms.
[1] Klingner BM, Feldman BE, Chentanez N, O’Brien JF. Fluid animation with
6. Conclusion and future work dynamic meshes. ACM Trans on Graphics (Proc SIGGRAPH) 2006;25(3):820–
5.
[2] Frey PJ, George P-L. Mesh generation: application to finite elements. ISTE;
This paper has proposed a novel method for automated mesh 2007.
generation for CAD models. Our algorithm relies on two classical [3] George P-L, Borouchaki H. Delaunay triangulation and meshing.
remeshing approaches to improve the regularity and angle quality [4] Baker TJ. Mesh generation: art or science? Prog Aerosp Sci 2005;41(1):29–63.
of the mesh. Robustness has been emphasized through the entire [5] Ito Y. Challenges in unstructured mesh generation for practical and efficient
meshing process, and by taking care of the degeneracies, unin- computational fluid dynamics simulations. Comput & Fluids 2013;85:47–52.
[6] Schöberl J. Netgen an advancing front 2d/3d-mesh generator based on ab-
tended construction artifacts, and shape boundary preservation. stract rules. Comput Vis Sci 1997;1(1):41–52.
The experiments on a variety of complex models and the compar- [7] Geuzaine C, Remacle J-F. Gmsh: a three-dimensional finite element mesh
ison with the state-of-the-art tessellation packages, demonstrate generator with built-in pre- and post-processing facilities. Internat J Numer
that our approach is simple yet efficient in generating high-quality Methods Engrg 2009;79(11):1309–31,.
surface meshes. [8] Attene M. A lightweight approach to repairing digitized polygon meshes. Vis
Comput 2010;26(11):1393–406.
In our future work, we would like to extend our approach to [9] Ju T. Robust repair of polygonal models. ACM Trans on Graphics (Proc SIG-
a mesh generator that can control anisotropy and directionality GRAPH) 2004;23(3):888–95.
via a metric tensor field. We are also interested in exploring more [10] Du Q, Wang D, Zhu L. On mesh geometry and stiffness matrix conditioning for
accurate sizing functions rather than the simple curvature to de- general finite element spaces. SIAM J Numer Anal 2009;47(2):1421–44.
fine adaptive mesh with smoothed gradient of element scales. [11] Botsch M, Kobbelt L. A remeshing approach to multiresolution modeling. In:
Eurographics symposium on geometry processing. 2004, p. 189–96.
Lastly, although we considered filtering small features, we indeed [12] Dunyach M, Vanderhaeghe D, Barthe L, Botsch M. Adaptive remeshing for
did not distinguish between important and unimportant features. real-time mesh deformation.. In: Eurographics (Short Papers). 2013, p. 29–32.
One good research topic is to recognize such important features [13] Open Cascade Technology, http://www.opencascade.com.
J. Guo, F. Ding, X. Jia et al. / Computer-Aided Design 109 (2019) 49–59 59
[14] Owen SJ. A survey of unstructured mesh generation technology. In: Interna- [39] Aubry R, Dey S, Mestreau EL, Karamete BK, Gayman D. A robust conforming
tional meshing roundtable. 1998, p. 239–67. nurbs tessellation for industrial applications based on a mesh generation
[15] Bern M, Plassmann P. Mesh generation. Handbook of computational geome- approach. Comput Aided Des 2015;63:26–38.
try. Elsevier Science; 2000. [40] Ju T. Fixing geometric errors on polygonal models: a survey. J Comput Sci Tech
[16] Lo DS. Finite element mesh generation. CRC Press; 2014. 2009;24(1):19–29.
[17] Shimada K. Current issues and trends in meshing and geometric process- [41] Campen M, Attene M, Kobbelt L. A practical guide to polygon mesh repairing..
ing for computational engineering analyses. ASME J Comput Inf Sci Eng In: Eurographics (Tutorials). 2012.
2011;11(2):021008. [42] Attene M, Campen M, Kobbelt L. Polygon mesh repairing: an application
[18] Caendish JC, Field DA, Frey WH. An apporach to automatic three- perspective. ACM Comput Surv 2013;45(2):15.
dimensional finite element mesh generation. Internat J Numer Methods Engrg
[43] Turk G, Levoy M. Zippered polygon meshes from range images. In: Proceed-
1985;21(2):329–47.
ings of the 21st annual conference on computer graphics and interactive
[19] Lévy B, Liu Y. Lp centroidal Voronoi tesselation and its applications. ACM Trans
techniques. SIGGRAPH ’94, ACM; 1994, p. 311–8.
on Graphics (Proc SIGGRAPH) 2010;29(4):119:1–11.
[44] Borodin P, Novotni M, Klein R. Progressive gap closing for meshrepairing. In:
[20] Lévy B, Bonneel N. Variational anisotropic surface meshing with voronoi Par-
Advances in modelling, animation and rendering. Springer; 2002, p. 201–13.
allel Linear Enumeration. In: Proceedings of the 21st international meshing
roundtable. 2012, p. 349–66. [45] Liepa P. Filling holes in meshes. In: Proceedings of the 2003 Eurograph-
[21] Nakahashi K, Sharov D. Direct surface triangulation using the advancing front ics/ACM SIGGRAPH symposium on geometry processing. Eurographics Asso-
method. In: 12th computational fluid dynamics conference. 1995, p. 1686. ciation; 2003, p. 200–5.
[22] Lan T, Lo S. Finite element mesh generation over analytical curved surfaces. [46] Campen M, Kobbelt L. Exact and robust (self-) intersections for polygonal
Comput Struct 1996;59(2):301–9. meshes. In: Computer graphics forum, vol. 29. Wiley Online Library; 2010,
[23] Tristano JR, Owen SJ, Canann SA. Advancing front surface mesh generation p. 397–406.
in parametric space using a riemannian surface definition.. In: International [47] Andújar C, Brunet P, Ayala D. Topology-reducing surface simplification using
meshing roundtable. 1998, p. 429–45. a discrete solid representation. ACM Trans Graph. 2002;21(2):88–105.
[24] Yerry MA, Shephard MS. Automatic three-dimensional mesh genera- [48] Bischoff S, Pavic D, Kobbelt L. Automatic restoration of polygon models. ACM
tion by the modified-octree technique. Internat J Numer Methods Engrg Trans Graph. 2005;24(4):1332–52.
1984;20(11):1965–90. [49] Zhou Q-Y, Ju T, Hu S-M. Topology repair of solid models using skeletons. IEEE
[25] Shostko AA, Löhner R, Sandberg WC. Surface triangulation over intersecting Trans Vis Comp Graph 2007;13(4).
geometries. Internat J Numer Methods Engrg 1999;44(9):1359–76. [50] Nooruddin FS, Turk G. Simplification and repair of polygonal models using
[26] Liu Y, Lo S, Guan Z-Q, Zhang H-W. Boundary recovery for 3d delaunay trian- volumetric techniques. IEEE Trans Vis Comp Graph 2003;9(2):191–205.
gulation. Finite Elem Anal Des 2014;84:32–43. [51] Bischoff S, Kobbelt L. Structure preserving cad model repair. In: Computer
[27] Shewchuk JR. Delaunay refinement mesh generation. In: Tech. rep.. DTIC graphics forum (Proc. EUROGRAPHICS), vol. 24. Wiley Online Library; 2005,
Document; 1997.
p. 527–36.
[28] Sheng X, Hirsch BE. Triangulation of trimmed surfaces in parametric space.
[52] Haimes R. Capri: computational analysis programming interface. a solid mod-
Comput Aided Des 1992;24(8):437–44.
eling based infra-structure for engineering analysis and design. revision 2.0.
[29] Cuillière J-C. An adaptive method for the automatic triangulation of 3d para-
Massachusetts Inst. of Technology, Cambridge, MA; 2004.
metric surfaces. Comput Aided Des 1998;30(2):139–49.
[53] Dassi F, Mola A, Si H. Curvature-adapted remeshing of cad surfaces. Eng
[30] Borouchaki H, Laug P, George P-L. Parametric surface meshing using a com-
bined advancing-front generalized delaunay approach. Internat J Numer Comput 2017.
Methods Engrg 2000;49(1–2):233–59. [54] Loseille A. Unstructured mesh generation and adaptation. Handb Numer Anal
[31] Zheng Y, Weatherill NP, Hassan O. Topology abstraction of surface models for 2017;18:263–302.
three-dimensional grid generation. Eng Comput 2001;17(1):28–38. [55] Rabinovich M, Poranne R, Panozzo D, Sorkine -Hornung O. Scalable locally
[32] Cripps RJ, Parwana S. A robust efficient tracing scheme for triangulating injective mappings. ACM Trans Graph 2017;36(2):16.
trimmed parametric surfaces. Comput Aided Des 2011;43(1):12–20. [56] CGAL, Computational Geometry Algorithms Library, http://www.cgal.org.
[33] Laug P. Some aspects of parametric surface meshing. Finite Elem Anal Des [57] Frey P, Borouchaki H. Surface mesh evaluation. In: 6th Intl. Meshing
2010;46(1):216–26. Roundtable. 1997, p. 363–74.
[34] Béchet E, Cuilliere J-C, Trochu F. Generation of a finite element mesh from [58] Cignoni P, Rocchini C, Scopigno R. Metro: measuring error on simplified
stereolithography (stl) files. Comput Aided Des 2002;34(1):1–17. surfaces. Comput Graph Forum 1998;17(2):167–74.
[35] Wang D, Hassan O, Morgan K, Weatherill N. Eqsm: an efficient high quality [59] Shewchuk JR. Mesh generation for domains with small angles. In: Proceedings
surface grid generation method based on remeshing. Comput Methods Appl of the sixteenth annual symposium on computational geometry. ACM; 2000,
Mech Engrg 2006;195(41):5621–33. p. 1–10.
[36] Marchandise E, Remacle J-F, Geuzaine C. Quality surface meshing using dis- [60] Inoue K, Itoh T, Yamada A, Furuhata T, Shimada K. Face clustering of
crete parametrizations. In: Proceedings of the 20th international meshing a large-scale cad model for surface mesh generation. Comput Aided Des
roundtable. Springer; 2011, p. 21–39. 2001;33(3):251–61.
[37] Marchandise E, Remacle J, Geuzaine C. Optimal parametrizations for surface [61] Si H. TetGen, a Delaunay-based quality tetrahedral mesh generator. ACM
remeshing. Eng Comput 2014;30(3):383–402.
Trans Math Software 2015;41(2):11:1–36.
[38] Aubry R, Karamete BK, Mestreau EL, Dey S. A three-dimensional para-
metric mesher with surface boundary-layer capability. J Comput Phys
2014;270:161–81.