STL Mesh

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

COMPUTER-AIDED

DESIGN
Computer-Aided Design 34 (2002) 1±17
www.elsevier.com/locate/cad

Generation of a ®nite element MESH from stereolithography (STL) ®les


E. BeÂchet a,b,*, J.-C. Cuilliere b, F. Trochu a
Centre de Recherches AppliqueÂes Sur les PolymeÁres (CRASP), DeÂpartement de GeÂnie MeÂcanique, EÂcole Polytechnique de MontreÂal, H3C 3A7, Canada
a
b
Laboratoire de productique, DeÂpartement de GeÂnie MeÂcanique, Universite du QueÂbec aÁ Trois-RivieÁres, G9A 5H7, Canada
Received 24 March 2000; revised 13 October 2000; accepted 26 October 2000

Abstract
The aim of the method proposed here is to show the possibility of generating adaptive surface meshes suitable for the ®nite element
method, directly from an approximated boundary representation of an object created with CAD software. First, we describe the boundary
representation, which is composed of a simple triangulation of the surface of the object. Then we will show how to obtain a conforming size-
adapted mesh. The size adaptation is made considering geometrical approximation and with respect to an isotropic size map provided by an
error estimator. The mesh can be used ªas isº for a ®nite element computation (with shell elements), or can be used as a surface mesh to
initiate a volume meshing algorithm (Delaunay or advancing front). The principle used to generate the mesh is based on the Delaunay
method, which is associated with re®nement algorithms, and smoothing. Finally, we will show that not using the parametric representation of
the geometrical model allows us to override some of the limitations of conventional meshing software that is based on an exact representation
of the geometry. q 2001 Published by Elsevier Science Ltd.
Keywords: Mesh generation; STL File format; Bisection algorithm; Delaunay triangulation

1. Interface with CAD to be computed. In FEM, the geometric and functional


support is provided by the elements (triangles or others),
1.1. CAD-based data sets and they must have a speci®c shape, i.e. the proper size
and the proper quality factor for the error estimator of the
Most CAD software on the market can generate STL ®les, calculation to be as low as desired. In this work, we used the
and these are generally used for prototyping and rendering following quality factor for triangles, where di , i ˆ 0¼2
purposes. These ®les represent a triangulation boundary of represents the length of each side of the triangle. We
the solid. Algorithms for the generation of STL triangula- assume:
tion are highly ef®cient, and the surface can be approxi-
mated very precisely if very large data sets are accepted. X
2
di
However, this is not an exact geometrical model because the  iˆ0
STL ®le format is composed only of an extensive list of d ˆ max di and p ˆ
iˆ0¼2 2
triangle facets. These facets are composed of the coordi-
nates of the three vertices of the triangle, in addition to The quality factor is then:
the coordinates of the normal oriented to the exterior of v
uY
the solid. This triangulation is built to minimize a geometric u 2 
p uu p 2 di
approximation criterion that is related to the real boundary 12 t iˆ0
of the solid (Fig. 1). qˆ ´ 1†
d p
This quality factor is bounded between 0 (for all
1.2. Characteristics of STL triangulation
kinds of degenerated triangles) and 1 (for equilateral
STL triangulation cannot be used directly in the ®nite triangles).
element method (FEM), mainly because it requires speci®c Of course, these requirements are related to the applica-
characteristics in the geometrical description of the domain tion. For example, in ¯uid mechanics it is very common to
use anisotropic elements in boundary layers and/or shocks.
* Corresponding author. Tel.: 11-819-376-5011. It is clear that a mesh obtained by minimization of a
E-mail address: bechet@meca.polymtl.ca (E. BeÂchet). geometric criterion cannot ®t FEM requirements because,
0010-4485/01/$ - see front matter q 2001 Published by Elsevier Science Ltd.
PII: S 0010-448 5(00)00146-9
2 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

Fig. 1. Example of an ASCII STL ®le (there is also a binary ®le format, which contains the same information). Please note the redundancy of vertices A, B and C.

Fig. 2. ªWire frameº representation of a STL mesh. Notice the stretched


triangles near the hole. Fig. 3. Hidden face representation of the STL mesh of a cylinder.

depending on the curvatures and topology of the surface, the


triangles generated can be greatly stretched in a certain
direction (see Figs 2±4). However, the mesh obtained is
generally conforming. 1

1.3. Recovering the geometry in an STL mesh

The contents of an STL ®le consists of the vertex coordi-


nates of each triangle and the associated normal. In order to
achieve a complete meshing of the surface, we need to have
some data on the topology and the curvatures of the surface
1
STL ®les are theoretically conforming even if this is not always the case
in practice. However, if the solid to be meshed is designed properly (no
overlapping between surfaces, no gaps, holes etc.), the STL ®le is usually
conforming, and therefore can be used ªas isº. In this paper we always Fig. 4. Histogram of the quality factor of the triangles in Fig. 3. All of them
consider conforming STL triangulations as input. are below 0.2.
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 3

Fig. 5. Recovering the edges (black lines).

to be meshed. The topology and connectivity between Then, as many industrial artefacts have edges, we need to
triangles is obtained by avoiding redundancy between determinate where they are located, if any. This is done
vertices in the STL ®le. This is done by using a binary using an edge detection process, considering the connectiv-
tree in which the vertices are stored and sorted ity between entities in the triangulation.
according to a lexicographic order. At the end of this The search for the model's edges is very important
procedure, we have a mesh of the object's surface, with since they have to be kept intact in the re-meshing, i.e.
all the types of connectivity needed for the re-meshing, they must not be cut by the Delaunay re-meshing strat-
particularly the connectivity used for adjacency searches egy. The search is based on angle calculations between
(see Section 3). adjacent triangles. The common segment of two triangles

Fig. 6. Graph of the curvatures obtained on the triangles by linear interpolation of the curvatures corresponding to the vertices. The most curved areas are
shown in black.
4 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

is considered to be an edge if the angle between the 2. Re®nement method


normal vectors of the two triangles is greater than a
speci®c value (typically 208). It should be mentioned The triangles of the mesh are sorted with respect to a
that, in addition, we can handle speci®c edges, such as reduced size ratio (ratio between the actual size and the
the contact area between two different parts in an assem- target size). The worst triangles (the biggest ones) are the
bly (in order to apply boundary conditions, for example). ®rst to be handled using the bisection algorithm described in
These segments will be considered as edges, and will be Section 2.1. At each stage, the sorting is updated (since there
kept in the ®nal mesh (Fig. 5). are new triangles and some have been destroyed) and the
The curvature is then evaluated at each element of the process continues as long as all the triangles do not meet the
triangulation by seeking the other triangles connected to it criterion. When all the triangles match the criterion, we
and by examining their normal vectors (see Fig. 6). apply a smoothing procedure. The resulting mesh is ready
The following procedures are used: for every triangle Ti , to deal with the FEM (see Section 3).
we iterate on its three vertices Vj ; j ˆ 0¼2†. At each vertex,
there are two sides, Sjk k ˆ 0¼1†, and the associated trian-
gles adjacent to Ti , Tjk . If Sjk is a sharp edge, we de®ne a 2.1. Bisection algorithm
parameter rjk as 0; otherwise it is 1. The curvature CTi is
evaluated as follows: The new vertices are generated by bisection of a line
0 1 segment that already exists in the mesh. The vertices are
generated in the middle of the line segment, the line
B Y C
uu 0j u segment not necessarily being part of the surface. The
CTi ˆ max B @   rjk C
A 2†
jˆ0¼2 iSj0 i 1 iSj1 i vertices must then be inserted into the mesh and projected
usin uj u k onto the initial STL mesh (Figs 7 and 8).
2
The line segment on which we will generate the vertex is
where uj is the angle between Sj0 and Sj1 , u 0j is the angle found using the algorithm that follows, which is taken from
between the normal vectors of Tj0 and Tj1 . Ref. [9].
After this, the curvature is extrapolated at each vertex Vi First, we search for the triangle T to be re®ned, the one
(CVi ), using the maximum curvature for the n triangles that least respects the target size, as described above. Then
connected to Vi : we search for a path composed of triangles that have a side
longer than T. This de®nes a sequence (Ti).
 
C Vi ˆ max CTj 3† Let Sn be the longest segment of the triangle Tn. The
jˆ0¼n 2 1 triangle Tn11 is adjacent to the triangle Tn along its
longest segment Sn. The sequence stops provided that
We should mention that the curvature considered here is a Sn and Sn11 are the same segments. The sequence
norm of the tensor of curvatures related to the surface (i.e. begins, of course, with T0 ˆ T. The ®rst segment to be
we do not care about the directions along which the effects bisected is the last segment in the sequence (Si). The
of the curvature take place), and it should be noted that the algorithm is repeated until the ®rst segment we consid-
curvatures obtained are not very accurate. This is because of ered, S0, is bisected. This leads to a correct re®nement
the discrete geometrical representation of the surface (set of of the area considered (Figs 9 and 10).
planes).
In fact, these curvatures will only drive an optional
adaptive mesh re®nement. The result is a coarser mesh
in less curved areas, and re®ned elsewhere. Fig. 6 illus-
trates the mesh resulting from a linear interpolation of the
curvature across each triangle using the equations
mentioned above.
At this stage, the information we need to begin the
mesh generation procedure is the information about the
isotropic size map of the target mesh. Since this is not
the aim of the present research work we assume either
that a constant size map is provided by the user, or that a
size map based on an error estimator has been provided
(from a previous FEM calculation). We also consider the
case where the density map is based on a geometric
criterion (controlling the maximum distance between
the STL mesh and the triangulation), as described in
Section 2.5. Fig. 7. Before bisection of the segment S.
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 5

However, we are dealing with curved surfaces and therefore


the conventional Delaunay criterion must be changed. This
is in fact essential in order to deal with the curvature of the
surface and, of course, its discrete representation. Let us
return to the original de®nition of a Delaunay triangulation,
in two dimensions [4,5,10].

De®nition 1. Property of the empty circle: Let T be an


arbitrary triangulation of the convex hull of a set of vertices
S. If the property of the empty circle is veri®ed for every
con®guration of two adjacent triangles of the triangulation
T, then this means that it is veri®ed for the whole triangula-
tion. The triangulation T is referred to as a Delaunay-
conforming triangulation.

This de®nition can be adapted to curved surfaces, taking


Fig. 8. After bisection. The new vertex V has been created.
into consideration their curvatures. It is important to note
that if we change the de®nition of the metric, the Delaunay
criterion is still valid [2,6]. We should consider a new de®-
nition of the circumcircle. In this case the circumcircle is the
location of all points on the surface whose curvilinear
distance to the center is the same, namely the radius. The
curvilinear distance is calculated using an integral. In the
parametric space (if it can be locally considered as
constant), the image of the circumcircle as de®ned just
above is generally an ellipsis. Unfortunately, as the surface
is only known through the STL triangulation, such a para-
meterization is not well de®ned.
We propose using another criterion, which is of course
less accurate than the former criterion, but is still good
enough for testing topologically near triangles. This
Fig. 9. Sequences of triangles and segments, before bisection of the forms the basis for de®nitions 2 and 3, which are taken
segment Sn. from Ref. [8].

De®nition 2. Property of the empty sphere: Let Ts be an


arbitrary triangulation of the convex hull of a set of
vertices S located on a surface. If the property of the
empty circumscribed sphere is veri®ed for every con®g-
uration of two adjacent triangles of the triangulation Ts,
then Ts is referred to as a weak Delaunay-conforming
triangulation.

De®nition 3. If, in addition, the property of the empty


sphere is veri®ed for the whole triangulation, then Ts is
referred to as a strong Delaunay-conforming triangulation
on the surface.

Fig. 10. Bisection of the last segment of the sequence, Sn.


De®nition 4. The circumscribing sphere to a triangle is
the sphere with the same centre and the same diameter as
2.2. Respecting the Delaunay criterion the circumscribing circle.

After each bisection, the mesh must be handled locally in It should be noted that triangulations that are weakly
order to achieve better regularity. This is done by respecting Delaunay-conforming in the sense of De®nition 2 generally
the Delaunay criterion, which is well-known for 2D meshes. do not respect the empty sphere criterion for the whole
6 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

surface, i.e. they are not strongly Delaunay-conforming in


the sense of De®nition 3. This is not an obstacle when deal-
ing only with surface meshing, but if subsequently we have
to generate a volume mesh using a 3D Delaunay method,
then some triangles will eventually have to be cut [8]. If we
are dealing with planar geometry, De®nition 2 comes to
De®nition 1 with no more conditions, and we can af®rm
that in this case the triangulation is Delaunay-conforming
provided that it is weakly Delaunay-conforming, as in
De®nition 2.
In De®nition 2, the distances are measured in the 3-
dimensional Euclidean space. Thus, instead of testing a
node with an exact Delaunay criterion, we verify only if it
is not in the circumscribing sphere of the triangles located in
the vicinity of the node. This vicinity is related to the topol-
ogy of the mesh. It is, in fact, the connectivity relationship
between the triangles that de®nes the vicinity (the shell
concept, [6]) (Figs 11 and 12). Fig. 12. STL mesh of the surface generated by AutoCad (side view).
The local remeshing algorithm is based on diagonal
swapping [1]. The diagonals to be swapped are deter-
mined by searching for triangles that do not respect the modi®ed Delaunay criterion are taken into account is not a
modi®ed Delaunay criterion relative to the new vertex. problem because the original STL mesh will be highly
We perform a kind of ªstarº remeshing of the convex re®ned. Indeed, from a certain point of advancement of
domain that is composed of the triangles found the algorithm, triangles that do not respect the modi®ed
previously, by connecting the added node to the corners Delaunay criterion will all be taken into account because
of the convex domain. This is the ªWatsonº algorithm at that point the difference in orientation between all the
[11]. In order to avoid poor geometrical approximation, triangles will be below the angle threshold. At the end of
the search for triangles that do not respect the modi®ed the re®ning step, the triangulation will be weakly Delaunay-
Delaunay criterion is done only on triangles whose conforming. This is the key in adapting the algorithm
orientation does not overly differ from the orientation described in [9] to curved surfaces.
of the triangles in the immediate vicinity of the new
vertex, a difference of about 158 to 608 being normal
2.3. The projection algorithm
(see Figs 13 and 14). To avoid destruction of the
edges of the object, in the algorithm it is forbidden to As we see in Fig. 15, Delaunay remeshing leads to poor
swap segments that belong to the list of edges, as geometric approximations. Often, when we generate a node
de®ned above in Section 1.3.
Figs 13±16 show the effect of the threshold angle on the
quality of the surface approximation during the initial mesh-
ing steps. As anticipated, the edges are not destroyed.
The fact that not all the triangles that do not respect the

Fig. 13. Several meshing steps, with a threshold angle of 458 (four vertices
Fig. 11. Cylinder, built using AutoCad. inserted).
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 7

Fig. 16. Good approximation: threshold angle of 208.


Fig. 14. Several meshing steps, with a threshold angle of 208 (eight vertices
inserted). Using information in the vicinity between the STL trian-
gles, it is easy to test a limited number of triangles. In
order to do so, we start by testing an STL triangle that
corresponds to one of the nodes of the segment that is
bisected. We then test all neighboring triangles and
proceed until we ®nd the proper triangle onto which the
new triangle will be projected. Simple geometric algebra
is used for the actual projection. A similar approach is
used for mesh smoothing. When a node is moved during
the smoothing process, its new location should be on the
STL triangulation. This, of course, implies that the infor-
mation about the initial STL triangulation has to be kept
throughout the whole process.

2.4. Smoothing

We implemented a kind of ªlaplacianº smoothing,


Fig. 15. Poor geometrical approximation of the surface: threshold angle of obtained by moving the vertices at the location of the bary-
458. centre of the connected vertices, without relaxation. This
operation is repeated for each ªfreeº vertex of the mesh.
on a segment that is not part of the original STL mesh, it is Of course, we have to re-project the vertices onto the STL
not located on the original STL model. Consequently, we surface. Again, we are not concerned with vertices that are
need a projection algorithm to relocate the node onto the situated on edges (they are not free to move). It should be
surface as described by the original STL triangulation. noted that the laplacian smoothing of a surface without
This operation is time-consuming because the target limits or edges (such as a sphere) can't converge, because
triangle on the initial STL mesh on which the vertex the mesh is to move inde®nitely. This is a poorly formulated
will be projected is not known a priori. An adjacency problem, somewhat similar to a laplacian problem without
search algorithm is used to avoid testing all the triangles boundary conditions. However, our aim is to obtain a local
of the initial STL mesh. This algorithm is also useful smoothing so that we do not have to wait until complete
when the solid to be meshed features very thin volumes convergence is achieved. In most cases, 10 iterations are
(see example 3.4: interleaved tetrahedrons). We should suf®cient. By local smoothing, we mean that the regularity
avoid the projection of a node belonging to the inner of the mesh is related to how the nodes are set relative to
surface onto the outer surface. The projection algorithm each other; clearly, the in¯uence of nodes farther away is
is based on the fact that each new node is created on a much less than nodes in the immediate vicinity, so we don't
segment (due to the bisection algorithm). In fact, we need to wait until complete convergence is achieved to
know the STL triangle where a new node is created. obtain a regular mesh (Figs 17 and 18).
8 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

Fig. 19. De®nition of the gap between the sphere and the triangle.

boundary of the original solid model). As the original solid


model is not available (we only start from the STL triangu-
lation), we use the curvatures de®ned in Section 1.3 in order
to approximate the solid boundary locally and calculate the
gap. The gap considered here, for a given triangle Ti , is the
Fig. 17. Before smoothing. maximum distance between Ti and the sphere that passes
through the vertices of the triangle, with RTi being the radius
of the sphere (see Fig. 19):
1
RTi ˆ 4†
CTi
where CTj is the curvature in the vicinity of triangle Ti .

2.6. User input

The only parameters that have to be provided by the user


of our mesh generation process are the following:

² the STL ®le


² the target size or the size map
² the threshold angle for the edge detection algorithm,
represented by Te . In the examples shown below Te has
been set to 458.
² the threshold angle for avoiding poor geometric approx-
imation during the Delaunay remeshing process, repre-
sented by Td . In the examples shown below Td has been
Fig. 18. After smoothing (10 iterations). set to 258. It should be mentioned that Te and Td are
closely related. If Td , Te , the edges detected with Te
2.5. Respecting a size map will not be destroyed anyway.

As shown in the examples below, algorithms have been 2.7. The advantages of using STL instead of CAD patches
implemented in order to respect different types of size maps
that are imposed a priori. Since nodes are generated on In a mesh generation process based on CAD patches, the
existing triangles using bisection techniques (as long as patches that make up the solid's boundary are meshed indi-
the length of the sides of the triangle are locally greater vidually. Consequently, the edges shared by adjacent patches
than the prescribed size), the actual mesh size is about 0.6 are kept in the resulting mesh. Most of the time, patches in
times the prescribed size. CAD designs are not related to any physical meaning and
The size map consists of either a constant size map, an generally there is no point in keeping patch edges in the
arbitrary size map provided by the user or by an error esti- resulting mesh for FEM calculation purposes. Moreover,
mator, or a size map that will lead to a good geometric keeping patch edges often leads to a stretched triangle because
approximation of the solid's boundary. In the latter case, they contribute to constraining the resulting mesh. In our
mesh density is driven locally by the maximum geometric mesh generation system the only edges that are kept are
error (theoretically the gap between the target mesh and the ªtrueº edges and edges that are needed to apply the boundary
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 9

Fig. 20. CAD model of a ®llet.

Fig. 23. Re®nement: constant target size: 3 mm. Smoothing. 2302 triangles,
1153 vertices.

Fig. 21. Resulting mesh obtained from the STL ®le (patch independent).

conditions. The following example (see Fig. 20) illustrates the


concept of ªpatch independentº mesh generation (Fig. 21).

3. Validation examples

3.1. Cylinder
Fig. 24. Histogram of the length of segments corresponding to Fig. 23 The
(Figs 22±27) target size is 3 mm. (see Section 2.5).

Fig. 22. Original STL mesh. 252 triangles, 128 vertices. Height: 30 mm. Fig. 25. Histogram of the quality factor of the triangles in Fig. 23.
10 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

Fig. 28. Original STL mesh. 1386 triangles, 695 vertices. Size: 150 mm.

Fig. 26. Adaptive re®nement: maximum imposed geometric error:


0.005 mm, maximum imposed triangle size: 4 mm for low curvature
regions. Smoothing. 7086 triangles, 3545 vertices.

Fig. 29. Re®nement: constant target size: 8 mm. Smoothing. 4040 triangles,
2022 vertices.

Fig. 27. Re®nement: constant target size: 7 mm, coarsening (not described
here): constant target size: 5 mm. Smoothing. 314 triangles, 159 vertices.

3.2. Revolution solid


Fig. 30. Histogram of the length of segments corresponding to Fig. 29. The
(Figs 28±33) target size is 8 mm (see Section 2.5).
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 11

Fig. 31. Histogram of the quality factor of the triangles in Fig. 29.

Fig. 34. Original STL mesh. 1908 triangles, 932 vertices. Size: 100 mm.

Fig. 32. Adaptive re®nement: maximum imposed geometric error: 0.1 mm,
maximum imposed triangle size: 20 mm for low curvature regions.
Smoothing. 6434 triangles, 3219 vertices.

Fig. 35. Re®nement: constant target size: 2 mm. Smoothing. 59,196 trian-
gles, 29,576 vertices.

Fig. 33. Re®nement: constant target size: 8 mm, except on a plane: 2 mm.
Smoothing. 8622 triangles, 4313 vertices.

3.3. Power supply fan


Fig. 36. Histogram of the length of segments corresponding to Fig. 35. The
(Figs 34±39) target size is 2 mm (see Section 2.5).
12 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

3.4. Interleaved tetrahedrons

The dif®culty comes from the fact that there are ®ve
tetrahedrons touching each other (distinct solids). The
projection algorithm could project vertices onto the wrong
solid, and this is avoided by adjacency relations used in the
projection algorithm described in Section 2.2 (Figs 40±43)

Fig. 37. Histogram of the quality factor of the triangles in Fig. 35. Thin
blades imply quality factors under 0.1.

Fig. 40. Original STL mesh. 480 triangles, 220 vertices. Size: 60 mm.

Fig. 38. Adaptive re®nement: maximum imposed geometric error:


0.01 mm, maximum imposed triangle size: 10 mm for low curvature
regions. Smoothing. 75,696 triangles, 37,826 vertices.

Fig. 39. Adaptive re®nement: maximum imposed geometric error: 0.1 mm, Fig. 41. Re®nement: constant target size: 2mm. No smoothing. 7920 trian-
maximum imposed triangle size: 10 mm for low curvature regions. gles, 3940 vertices.
Smoothing. 13,730 triangles, 6843 vertices
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 13

Fig. 42. Histogram of the length of segments corresponding to Fig. 41. In Fig. 45. Re®nement: constant target size: 0.2 in. Smoothing. 45,602 trian-
this case, the histogram is not properly smoothed. This is due to the fact that gles, 22,803 vertices.
the geometry heavily constrains the shape of triangles and the length of
segments. The target size is 2 mm (see Section 2.5).

Fig. 46. Histogram of the length of segments corresponding to Fig. 45. The
target size is 0.2 in (see Section 2.5).

Fig. 43. Histogram of the quality factor for triangles in Fig. 41. Same
remark as for Fig. 42.

Fig. 47. Histogram of the quality factor for the triangles in Fig. 45.

3.5. Guitar

(Figs 44±48)

Fig. 48. Adaptive re®nement: maximum imposed geometric error: 0.02 in.,
maximum imposed triangle size: 0.8 in. For low curvature regions. Smooth-
Fig. 44. Original STL mesh. 3470 triangles, 1737 vertices. Size: 20 in. ing. 27,550 triangles, 13,777 vertices.
14 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

3.6. Lever

(Figs 49±54)

Fig. 52. Adaptive re®nement: maximum imposed geometric error:


0.05 mm, maximum imposed triangle size: 13 mm for low curvature
regions. Smoothing. 26,432 triangles, 13,206 vertices.
Fig. 49. AutoCAD model of a lever.

Fig. 53. Histogram of the length of segments corresponding to Fig. 51. The
target size is 5 mm (see Section 2.5).
Fig. 50. Original STL mesh. 1330 triangles, 655 vertices. Size: 377 mm.

Fig. 54. Histogram of the quality factor for the triangles in Fig. 51.

3.7. Aneurysm
Fig. 51. Re®nement: constant target size: 5 mm. Smoothing. 30,208 trian-
gles, 15,094 vertices. (Figs 55±59)
Fig. 55. STL mesh from a medical scanner. 10,494 triangles, 5245 vertices. Fig. 56. Re®nement: constant target size: 3 1/10 mm). Smoothing. 21,462
Size: 278 1/10 mm Courtesy of Dr M.,L. Raghavan, Department of Biome- triangles, 10,729 vertices.
dical Engineering, University of Iowa, Iowa City, IA.

Fig. 57. Closeup of Fig. 56.


16 E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17

boundary being in the resulting mesh. The result is a


patch-independent mesh, which can be advantageous for
very complex parts composed of many small patches.
In addition, the mesh procedure is independent of any
exact CAD ®le format. We currently mesh geometry
that originates with many CAD systems, such as Auto-
CAD and Catia.
Further work on anisotropic mesh generation using the
same basis will be carried out.

Fig. 58. Histogram of the length of segments corresponding to Fig. 56. The References
target size is 3 mm (see Section 2.5).
[1] Cher®ls C, Hermeline F. Diagonal swap procedures and characteriza-
tions of 2D-Delaunay triangulations. Math Mod and Num Anal
1990;24(5):613±26.
[2] CuillieÁre JC. A direct method for the automatic discretization of 3D
parametric curves. Comp Aided Design 1997;29(9):639±47.
[4] Delaunay B. Sur la spheÁre vide. Bul Acad Sci URSS, Class Sci Nat
1934:793±800.
[5] Dirichlet, GL. U È ber die Reduktion der positiven quadratischen
Formen mit drei understimmten ganzen Zahlen. Z Angew Math
Mech 1850;40(3):209±27.
[6] George PL, Borouchaki H. Triangulation de Delaunay et maillages:
application aux eÂleÂments ®nis, Paris, HermeÁs. ISBN 2-86601-625-4,
1997.
[8] PeÂbay PP, Frey PJ. A priori Delaunay-conformity. Proceedings of the
7th International Meshing Roundtable, 1998. p. 321±33.
[9] Rivara MC, Inostroza, P. Using longest-side bisection techniques for
the automatic re®nement of delaunay triangulations. Intl J for Num
Fig. 59. Histogram of the quality factor for the triangles in Fig. 56. Because Meth in Eng 1997;40:581±97.
of tiny details on the original model, there are still some stretched triangles. [10] VoronoõÈ G. Nouvelles applications des parameÁtres continus aÁ la theÂo-
rie des formes quadratiques. Recherches sur les paralleÂloeÁdres primi-
tifs. Journal Reine angew math 1908;134.
4. Conclusions [11] Watson DF. Computing the n-dimensional Delaunay Tesselation with
application to VoronoõÈ polytopes. Computer Journal 1981;24(2):167±
In this paper, we have shown the possibility of directly re- 72.
meshing (i.e. without knowing the actual exact geometry) not
only meshes from STL ®les, but more generally all surface
meshes, provided that they are conforming. For example, this Further reading
can be done when using a FEM adaptive remeshing loop and a
size map provided by an error estimator. [3] CuillieÁre JC. An adaptive method for the automatic triangulation of
3D parametric surfaces. Comp Aided Design 1998;30(2):139±49.
The method described can mesh a solid without [7] Ito Y, Nakahashi K. Direct surface triangulation using stereolithogra-
being restricted by the CAD representation (patches), phy (STL) data, 38th AIAA Aerospace Sciences Meeting & Exhibit,
i.e. two patches can be meshed without their common AIAA-2000-0924, 2000.
E. BeÂchet et al. / Computer-Aided Design 34 (2002) 1±17 17

Eric Bechet is a PhD student at the EÂcole Jean-Christophe CuillieÁre is a Professor at the
Polytechnique de MontreÂal, QueÂbec, Canada. Universite du QueÂbec aÁ Trois-RivieÁres,
He received a BS (1997) in mechanical QueÂbec, Canada. He received his BS (1988)
engineering from the EÂcole SupeÂrieure des and PhD (1993) in Mechanical Engineering
Sciences de l'IngeÂnieur de Nancy, France. from the Institut National Polytechnique de
His research interests are in mesh generation Lorraine (Nancy, France). His major research
for complex parts, and anisotropic re-meshing interest is in mesh generation algorithms for
algorithms for accurate injection moulding complex shapes. He is also involved in research
simulations. works about CAD/CAM integration and Finite
Element applications in Mechanical Design
and Manufacturing.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy