-
Quality Measure of Quadrilateral Meshes
Phillip LuAdvised by Dianna Xu
Haverford College, Department of Computer Science
Abstract
A method of analyzing the quality of quadrilateral meshing
algo-rithm is presented. By running each quadrilateral of the mesh
throughJohn Robinsons Continuum-Region-Element (CRE) method, the
re-sultant numeric values correlate with the shape parameters of
eachquadrilateral. We find that Robinsons Jacobian determinant,
evenafter accounting for scale, is only as good as a mesh quality
measureas aspect ratio as defined by the CRE method.
Keywords. quadrilateral mesh, mesh quality, mesh analysis
1 Introduction
Polygonal meshes are discrete, approximate representations of 2D
or 3Dshapes constructed from simple polygons: a collection of
points, edges, andpolygonal faces that represents a 2D or 3D
object. Though mainly used incomputer graphics, these meshes have a
variety of applications, from high-order surface modelling to data
compression [3].
Since most 3D geometrical objects have two dominant directions,
quadri-lateral meshes are particularly well suited for representing
such objects, giventhat individual quadrilaterals have two pairs of
edges that run (ideally) or-thogonal to each other [3].
Applications for which preserving the shape andform of the 3D
object is of importance would therefore prefer quadrilateralmeshes
over triangular meshes, since transformations of a triangular
meshwould not guarantee that the overall shape is preserved.
However, due to thedifficulties inherent in creating quadrilateral
meshes, the majority of research
1
-
effort has gone into triangle mesh construction. As such, though
there areseveral methods of measuring the quality of a triangle
mesh [2, 5], there isno widely accepted similar metric to measure
the quality of a quadrilateralmesh.
Beyond simple metrics like the amount of polygons in a mesh, it
is difficultto find a measurement of quality that represents the
entire mesh withoutresorting to measurement of the individual
polygonal elements. As such,almost all mesh quality measures
examine the shape quality of each polygon.
As Eppstein states in his presentation to the Meshing Roundtable
in 2001,there are numerous measures of a triangle, such as ratio of
circumcricle toincircle radii, ratio of diameter to height, or
perimeter squared to area [5].However, he mentions that the quality
guarantees for quad/hex meshes [are]much less developed. It is easy
to see that finding a metric for triangles iseasier than finding
one for quadrilaterals: while triangles can always be in-scribed
within a circle (the smaller the circle is, the better a triangle
is),not all quadrilaterals can be inscribed within a circle (i.e.
non-cyclic quadri-laterals). While diameter to height is a
consistent measure of a trianglesquality, it is not for that of a
quadrilaterals, as using that measure wouldreturn the same value
for both squares and a rhombus (same diameter, sameheight).
However, we would not want the measure for a square and rhom-bus to
be the same, since the preference for quadrilateral meshes over
othertypes of meshes is partially due to the quadrilateral having
two dominantlocal directions, typically associated with principal
curvature directions. Wewould thus prefer to have a mesh composed
of mostly squares, where the twodominant local directions are, for
the most part, orthogonal to each other,and thus accurately
representing curvature directions, as opposed to a meshcomposed of
mostly rhombuses, especially extremely tapered ones.
Measuring the quality of a quadrilateral is significantly more
difficult thanthat of a triangle, since there are more geometric
features in a quadrilateralthat need to be properly reflected in
the metric itself (i.e. skew, aspect ratio)than in a triangle.
While John Robinson was primarily concerned aboutfinite element
stress testing in his Continuum-Region-Element (CRE) methodpaper,
he shows that the determinant of the quadrilaterals Jacobian
matrixis a numerical variable that reflects all significant
features of a quadrilateral[8]. This paper will attempt to evaluate
the Jacobian determinants viabilityas a measurement of
quadrilateral mesh.
Throughout this paper, I will use the shorter term quad to refer
toquadrilateral.
2
-
2 Related Works
As mentioned before, this paper will be an evaluation of the
validity of Robin-sons CRE method [8] in mesh quality measurement.
Thus, this paper willdraw heavily from the terminology and methods
of Robinsons paper andbook (i.e. aspect ratio, skew, and taper are
all defined within his works,and will be integrated within my
analysis). Robinson was concerned abouthaving a general method of
finite element stress testing: a method of analyz-ing the forces on
and within physical structures (planes, bridges, dams, etc.)by
breaking them down into many small discrete structural pieces
(finiteelement) [9]. Since these individual finite elements are
made up of sim-ple polygons (polygons with non-intersecting
perimeters), there is significantwork done on analyzing the effects
of pressure, torque, and bending on mate-rials modeled by simple
polygons. As such, the CRE method, while originallydeveloped as an
element testing procedure, can be used to measure a quadsaspect
ratio, skew, and taper, amongst other measurements of shape.
The first quad mesh algorithm I will be testing my quality
measurementon will be Atalay, Ramaswami, and Xus quad-tree
algorithm [1] for gener-ating a quad mesh. I will be using the mesh
quality measures section oftheir paper and comparing my results
with theirs. The algorithm itself willbe discussed in section
2.1
While the Bommes et al. survey of quad-mesh algorithms [3]
containsmultiple quad-mesh algorithms, few would mesh over a 2D
point cloud, fewerstill have publicly available executables. Thus,
I will be using JonathanRichard Shewchuks publicly available
triangle mesh generator [10] to createan initial triangle mesh,
from which I will convert to a quadrilateral mesh.A discussion of
this process will be in section 2.2.
2.1 Atalay, Ramaswami, and Xus Quadtree Mesh Al-gorithm
Atalay, Ramaswami, and Xus algorithm for generating quad meshes
relies onusing quadtrees effectively [1]. A quadtree, effectively a
tree data structuresuch that each node has either no children
(leaf), or exactly 4 children. Atalayet al.s algorithm first takes
the point set, and creates a quadtree, each nodesplitting whenever
it has more than two elements in it. This effectivelymeans that
each node will contain at most one point. Further, Atalay et
al.salgorithm ensures that no two neighbouring structure are two or
more levels
3
-
Figure 1: A visualization of a quadtree with associated point
set. [6]
apart, and uses this property to apply quad templates for the
deepest levelof the subdivision. After that, the algorithm can
apply general templatesfor stitching together nodes of arbitrary
levels. The existence of generaltemplates allows geometric analysis
of the worst-case configuration, whichyields the minimum angle of
18.43 and a maximum angle of 171.86.
Atalay et al.s algorithm takes 2D point set information and
outputs aGeomview Object File Format (.OFF) file, that consists of
the meshs verticesand faces.
2.2 Shewchuks Triangle
As previously mentioned, I will be running the analysis program
over theoutputs of Shewchuks Triangle program. Triangle can take in
point sets,
4
-
and output a Delaunay triangulation (a triangulation such that
no point isinside the circumcircle of any triangle in the
triangulation). A Delaunay tri-angulation will maximize the minimum
angle of the resultant triangle mesh,given that no additional
points can be added [4]. Every point set is alsoguaranteed to have
a Delaunay triangulation.
An advantage to using Shewchuks Triangle program is that I am
able tospecify certain quality guarantees. I will thus be using
Triangle to output twosets of data: one with no quality guarantee,
and one with a quality guaranteethat the minimum angle will be at
least 20 degrees.
This by itself should not be of any concern. After all, my goal
here is notto analyze the quad meshing algorithms in-depth, but
instead to use Robin-sons metrics on the meshes and comparing the
result. However, ShewchuksTriangle only outputs triangle meshes,
and so we need a way to convert thetriangle mesh into a quad mesh.
While there exists several methods of tri-to-quad mesh algorithms,
few of them offer an implementation of them online.Instead, we will
do a crude tri-to-quad algorithm that is simple to implement,though
offers nothing in terms of quality guarantees.
For each triangle in the triangle mesh, we add four additional
points atthe centroid, and the three midpoints at their respective
edges. We thenadd three edges, from centroid to the three
midpoints. We now have threequadrilaterals in place of the
triangle. We do this conversion for all thetriangles in the mesh,
and we will end up with a quad mesh. See Figure 2for example.
While this method is crude and offers no specific guarantee,
this algorithmwill suffice for providing a mesh generator to
compare to. Generally, weexpect a tri-to-quad mesh algorithm to
have worse metrics than direct quadmesh generation algorithms,
especially tri-to-quad mesh algorithms that donot apply mesh
smoothing or mesh simplification afterwards. This gives us avery
general hypothesis to test: our metric for mesh quality should be
betteron Atalay et. als algorithm than on Shewchuks algorithm after
tri-to-quadmesh conversion.
3 Method
The CRE method was originally developed as a procedure for
understandinghow forces work on and within 3-dimensional, complex
objects, representedby and broken down into numerous discrete,
elementary pieces. While the
5
-
Figure 2: Making a quad mesh from a triangle mesh.
(a) Shewchuks Triangles Delaunay triangulation of 50 random
points.
(b) Quad mesh by running the tri-to-quad mesh algorithm over the
triangulation.
6
-
method was designed to work on any shape of element with any
number ofnodes, the elementary shape he derives all the equations
in the paper fromis the quad [8]. Since bad shapes can affect the
results of finite elementanalysis, Robinson developed the CRE
method to find the shape param-eters that differentiate one shape
to another, so as to be able to identifybad shapes prior to
conducting finite element analysis via an automatedanalysis
system.
In his paper, Robinson shows that any quad shape can be
constructedgiven four parameters: aspect ratio (AR), skew (), and
the respective taperin two principle directions (Tx, Ty) [8]. He
further shows that given the coor-dinates of the four points on the
quad, one can plug in equations to find allfour shape parameters,
the proof of which can be found in Robinsons paper.I will explain
these equations in detail in the sections 3.1 and 3.2 below.
The method and structure for comparing the different algorithms
will bediscussed in section 3.3.
3.1 Local Cartesian Coordinates
Each of our quads exist as four points in some global Cartesian
coordinatesystem. To ease calculations and to make sure the quad is
in the rightorientation (see Figure 3), we need to convert to a
local Cartesian coordinatesystem [9]. To do this, the four vectors
from the centroid going through
the four bisectors of the quad edges is used (i.e.V 05 being the
vector from
the centroid to the bisector of the segment from vertex 1 to
vertex 2. See
Figure 4). The correspondingV 06 is used as the vector to define
the local x
vector (x ). To find the corresponding y vector, we cross V 06
with V 07 toget the normal vector to the plane of the quad
(corresponding to the localz vector, z ). With x and z defined, we
can then find the y by crossingz with x . x and y will be referred
to as x and y in the rest of the paper,x-axis being the axis that
is in the direction of x .
With the local coordinate system defined, we can now convert the
fourpoints into the new coordinate system by projecting the old
Cartesian coor-dinates onto the new vectors, like so:
xi =V 0i xyi =V 0i y
7
-
where i from 1 to 4 indicates the four respective vertices of
the quad, andV 0i is the vector from the centroid to that
particular vertex. Thus, we nowhave all four vertices in the local
coordinate system.
The interpolation function from the old system to the new system
canbe also expressed in the following equation, where and are
curvilinearcoordinates with limits 1;
x = e1 + e2 + e3 + e4y = f1 + f2 + f3 + f4
The curvilinear coordinates (, ) of the four points are (1,1),
(1,1),(1,1), (1,1) for points 1, 2, 3, and 4 respectively (Figure
3). The e and fcoefficients are given in the following
equations:
Figure 3: Points oriented counter-clockwise starting from bottom
left.Point 0 indicates centroid. Bisectors shown.
8
-
Figure 4: Midpoints defined in counter-clockwise fashion
e1 = 14(x1 + x2 + x3 + x4) f1 = 1
4(y1 + y2 + y3 + y4)
e2 = 14(x1 + x2 + x3 x4) f2 = 1
4(y1 + y2 + y3 y4)
e3 = 14(x1 x2 + x3 + x4) f3 = 1
4(y1 y2 + y3 + y4)
e4 = 14(x1 x2 + x3 x4) f4 = 1
4(y1 y2 + y3 y4)
We can now produce the shape parameters by using the
coefficients pro-duced above.
3.2 Shape Parameters
The four coefficients of e and f each are closely related to the
features of thequad. While I will be explaining how each
coefficients affect the features,Figure 5 provides a quick glance
at what the coefficients do.
e1 and f1 may be the most straight-forward coefficients to
explain. Sincee1 is the sum of the four x coordinates divided by
four, this is the averagevalue of x. Likewise, f1 represents the
average value of y. The coordinates(e1, f1) thus points to the
centroid of the quad.
9
-
e2 and f3 both represent a similar concept: the half-length of
the edges ofthe original rectangle. We can see this by construing
e2 as actually being14((x2 x1) + (x3 x4)) and f3 as being 14((y3
y2) + (y4 y1)). Keeping inmind the orientation of the points
(Figure 3), (x2x1) and (x3x4) representthe edges of the original
rectangle parallel to the x-axis, while (y3 y2) and
Figure 5: Physical meaning of the e and f coefficients [8]
10
-
(y4y1) represent the edges of the original rectangle parallel to
the y-axis. Byhalving the respective sums, we find the average
length of the line segmentsparallel to their respective axis. By
halving the result again, we find thehalf-length of the line
segments.
e3 and f2 both represent a similar concept: the length between
the bi-sector of a segment on the original rectangle to its
respective point on askewed parallelogram (see Figure 5c). Again,
we can see that e3 is actually12(12(x3 x2) + 12(x4 x1)). Since (x3
x2) and (x4 x1) represent twice thedistance between the vertex to
the respective point on the original rect-angle in the x-axis,
12(x3 x2) and 12(x4 x1) represent just the distance.12(12(x3 x2) +
12(x4 x1)) thus represents the average distance of the two.The
logic follows for f2 on the y-axis.
e4 and f4 both represent the distance from a point on the
tapered quadri-lateral (resembling a trapezoid) to its respective
point on the original rect-angle. The logic is similar to that of
the other coefficients. Taper causespoints 1 and 3 to move in one
direction, and points 2 and 4 to move in theother (as seen when
comparing the movement of the vertices on a rectangleas it
gradually becomes a trapezoid). Thus, to measure the average
distanceof movement on the x-axis, we add x1 and x3 while
subtracting x2 and x4 tofind the total distance of taper. Dividing
by 4 yields the average distanceof taper.
The shape parameters are given in Robinsons paper as the
following [8]:
aspect ratio = e2f3
orf3e2
(largest)
skew = e3f3
taper in the x-direction(Tx) = f4f3
taper in the y-direction(Ty) = e4e2
We can easily see how e2 and f3 are related to the aspect ratio.
e2represents the half-width, f3 represents the half-length; by
dividing one overthe other and taking the bigger of the two, we get
the aspect ratio (widthover length, or length over width, whichever
is bigger).
Regarding skew, since e3 represents the absolute distance of
skew in thex direction, we need a way of scaling so that if the
shape is identical, our
11
-
metric for skew does not increase as the shape becomes larger.
f3 is chosenfor this, as it is a scale of the associated
parallelogram in the y direction.
Thus, skew = e3f3
Regarding the two tapers, e4 and f4 represent the emphabsolute
distanceof taper in the x and y direction, respectively. Similar to
what we did withskew, we need to ground the distance to the size of
the quadrilateral. Thus,taper in the x direction would use the
half-width e2, and taper in the y
direction would use the half-length f3. Thus, taperx =f4f3
, and tapery =e4f2
From Robinsons paper [8]: the Jacobian matrix for a flat
(projected)quadrilateral is given by:
[J] =
x
y
x
y
= [(e2 + e4) (f2 + f4)(e3 + e4) (f3 + f4)]
The determinant of [J] can written as det[J] =
e2f3+e2f4+(e4f3e3f4).Which, in turn, can be refactored using the
shape metrics in the following:
det[J] = f 23 (AR)(1 + Tx + (Ty Skew
ARTx))
As we can see, all four shape parameters are present within the
deter-minant, in addition to the half-length of the basic
rectangle. For analysis,we will be taking the determinant at the
third vertex of the quadrilateral(top-right), as that vertex has
the curvilinear coordinate where = = 1.
Due to the presence of the half-length, the size of the
quadrilateral willaffect its Jacobian determinant. This, plus the
possibility of having negativetapers which can actually reduce the
determinant to below the determinantof a square, have led me to
suggest a new metric, Modified determinant, forquadrilateral
quality, by removing the mentioned metrics from the equation:
ModDet[J] = (AR)(1 + Tx + (Ty SkewAR
Tx))
Again, we will use only the third vertex of the quadrilateral
for analysis.
12
-
Since the aspect ratio, skew, both tapers, and the Jacobian
determinantare all calculable from only the four points of a quad,
these calculations canbe implemented in a relatively
straight-forward way. Since quad meshes aremade up of quad elements
by definition, I can run the CRE method over allthe quads in the
mesh and find out the average of all four respective shapeelements
and the Jacobian determinant.
Running the mesh generation algorithm over a set of different
inputswould yield many quad meshes derived from an algorithm. By
using theaverage value of the shape elements from all the quads
from all the meshesgenerated by a single algorithm, we can compare
that average to that of otheralgorithms.
3.3 Comparison Method
I have written a program that takes in a quad mesh in Geomview
Object FileFormat (.OFF), and outputs the average and worst metric
of quads in themesh using the method discussed previously. Using
this program, for eachmesh generation algorithm I examine, I will
run and record the metrics overseveral selected point sets. This
includes 6 sets of points placed randomly invarious quantities (10,
50, 100, 200, 500, 1000) and a set of 303 points thatis a polygonal
representation of Lake Superior. The 6 sets of random points,once
generated, is tested on all the algorithms: all the meshing
algorithmsare tested on the same data set.
The metrics that I will specifically compare with are the
following:
Total quadsAverage/worst ARAverage/worst Skew valueAverage/worst
Taper in the x-axisAverage/worst Taper in the y-axisAverage/worst
Jacobian determinantAverage/worst Modified Jacobian determinant
4 Comparisons and Results
The tables below show the average (Table 1) and worst (Table 2)
metrics ofthe resultant meshes using the specified algorithm and
the specified input.
13
-
Table 1: Average metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Total quads 801 3768 7613 15074 37219 75057 24444Avg.
AR 1.182521 1.207838 1.191341 1.200362 1.202959 1.197838
1.198281Avg. skew value 0.187232 0.176465 0.176154 0.176752
0.175277 0.176673 0.185968Avg. taperx 0.15145 0.156579 0.151035
0.150312 0.149911 0.149348 0.155988Avg. tapery 0.173889 0.16305
0.163772 0.159986 0.158285 0.161002 0.172206Avg. Jacobian det.
119.4661 31.66326 16.43845 8.39404 3.417593 1.698783 0.013589Avg.
mod. det. 1.609149 1.631948 1.601269 1.608572 1.610947 1.605722
1.629233
Table 1.a Atalay et al. quadtree meshing average metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Total quads 39 273 555 1152 2949 5934 1758Avg. AR
5.587552 4.619727 4.916503 3.703014 4.028027 3.658026 5.456112Avg.
skew value 2.81124 2.498871 2.540989 1.768101 1.965916 1.790858
2.884117Avg. taperx 0.25 0.25 0.25 0.25 0.25 0.25 0.25Avg. tapery
0.361675 0.320704 0.329417 0.321119 0.312787 0.309766 0.358115Avg.
Jacobian det. 338.2453 70.20836 51.46118 20.99207 50.31810 4.078406
0.031532Avg. mod. det. 8.636394 7.061956 7.643117 5.718958 6.274875
5.601143 8.545263
Table 1.b Shewchuk Triangle tri-to-quad meshing average
metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Total quads 126 489 1032 1935 4830 9921 3339Avg. AR
1.649084 1.647021 1.639505 1.647352 1.643218 1.660241 1.678473Avg.
skew value 0.510837 0.513869 0.505065 0.508918 0.500012 0.516299
0.526546Avg. taperx 0.25 0.25 0.25 0.25 0.25 0.25 0.25Avg. tapery
0.289354 0.284134 0.281548 0.282497 0.282193 0.281665 0.281482Avg.
Jacobian det. 35.49717 28.91249 14.93490 8.27568 3.483061 1.69971
0.005471Avg. mod. det. 2.493724 2.475079 2.456549 2.470872 2.464108
2.488185 2.514221
Table 1.c Shewchuk Triangle with minimum 20 angles, tri-to-quad
meshing aver-age metrics
14
-
Table 2: Worst metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Worst AR 3.000000 3.000004 3.000003 3.000007 3.000027
3.000055 3.00073Worst skew value 1.145833 1.333333 1.333333
1.333334 1.875 1.875002 1.875004Worst taperx 0.6 0.6 0.6 0.6
0.600002 0.600002 0.600029Worst tapery 0.730798 0.730798 0.730798
0.730799 0.7308 0.730805 0.730854Worst Jacobian det. 4783.264
2990.188 3140.657 3153.046 3157.515 3160.102 17.503433Worst mod.
det. 4.89 4.890005 4.890003 4.890004 4.89001 4.890047 4.890585
Table 2.a Atalay et al. quadtree meshing worst metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Worst. AR 42.79535 281.9245 466.2196 559.2251 1777.939
1174.521 530.1884Worst. skew value 28.77125 127.9088 294.6275
329.0671 1254.819 624.1278 351.1376Worst. taperx 0.25 0.25 0.25
0.25 0.25 0.25 0.25Worst. tapery 1.823832 1.044526 7.098919
4.005084 9.556236 3.096078 3.855682Worst. Jacobian det. 2448.629
3334.426 4191.789 1702.153 107129.7 964.6050 8.472251Worst. mod.
det. 64.19302 422.8869 699.3325 838.8374 2666.950 1761.781
795.2556
Table 2.b Shewchuk Triangle tri-to-quad meshing worst
metrics
10 pts 50 pts 100 pts 200 pts 500 pts 1000 ptsLake Superior
(303 pts)Worst. AR 3.34753 4.425987 4.043448 4.180376 4.376373
4.558736 4.615184Worst. skew value 1.656701 1.820182 1.757625
1.744029 1.812709 1.899074 1.925705Worst. taperx 0.25 0.25 0.25
0.25 0.25 0.25 0.25Worst. tapery 0.018427 0.066429 0.072425
0.079237 0.077191 0.086745 0.087063Worst. Jacobian det. 276.9116
661.7325 200.6794 136.0718 47.29270 32.69729 0.273995Worst. mod.
det. 5.021296 6.63898 6.065173 6.270564 6.56456 6.838106
6.922818
Table 2.c Shewchuk Triangle with minimum 20 angles, tri-to-quad
meshing worstmetrics
15
-
Figure 6: Jacobian determinant against size of input set
An initial glance yields some interesting observations. Despite
the glaringdisadvantage of the tri-to-quad algorithm, the quad
meshes created by ithave much fewer faces than those created by
Atalay et al.s direct quad meshgeneration algorithm. While running
Triangle with a bounded minimumangle gives us quad meshes with more
faces, they still have significantlyfewer faces than those created
by Atalay et al.s algorithm.
The change in average metric over quantity of points does not
seem to besignificant; that is, more random points in a set does
not have a significantimpact on the average metrics, except for the
Jacobian determinant. How-ever, knowing the way the Jacobian
determinant is calculated (the Jacobiandeterminant has the
coefficient of aspect ratio times the square of the mid-length),
this can be attributed to the smaller elements in quad meshes
withmore faces. This is supported by the fact that the Lake
Superior input datayields a much smaller Jacobian determinant, no
matter the algorithm. SeeFigure 6.
16
-
Figure 7: Modified Jacobian determinant against size of input
set
I initially thought there would be a significant difference
between ran-domly generated point set input and a polygonal point
set, but plottingmodified Jacobian determinant against input size
(Figure ??) yields almostno difference between randomly generated
and polygonal point set input, atleast for Shewchuks Triangle
algorithm with angle guarantee and Atalay etal.s quadtree
algorithm.
Comparing the average aspect ratio of non-bounded and bounded
min-imum angles on Shewchuks Triangle shows a dramatic improvement
fromthe 3.5 to 5.5 range to a more manageable and consistent 1.6 to
1.7 range(Figure 8). Meanwhile, Atalay et al.s quadtree algorithm
generates aspectratio in the range between 1.18 to 1.2.
Curiously, the average taper in the x direction is consistently
0.25, boundedminimum angle or not. Perhaps this is an artifact from
the tri-to-quad algo-rithm. After examining the individual
analysis, all the quads seem to have a
17
-
Figure 8: Aspect ratio against size of input set
taper of -0.25 under the algorithm.Looking at the worst metrics,
taper in the x-direction exhibits a very
strange characteristic. While we know that the Shewchuk
tri-to-quad meshcontain only quads of taper -0.25, and so the
identical worst taperx is nosurprise, taper for Atalay et al.s
algorithm generate meshes with extremelysimilar tapers. I can not
offer any thoughts as to why this would be the case,given that six
of the input point sets are essentially randomly generated, andso
there would be no guarantee that a quad with a given taper would
exist.This may be worth further investigation.
It is interesting to see that the worst modified Jacobian
determinant forAtalay et al.s quad meshes are also very similar to
each other. This can per-haps to attributed to the angle bounds
that their algorithm guarantees. Thesame effect is not seen in
Shewchuks Triangle with bounded angles, possiblybecause while the
original triangle mesh has angle guarantees, the
tri-to-quadconversion may introduce extreme angles. This can be
seen in Shewchuks
18
-
Triangle without bounded angles: the worst modified determinant
increasesdramatically for bigger input sets.
Figure 9: Modified Jacobian determinant against aspect ratio
5 Evaluation
The metrics do provide the expected results: Shewchuks Triangle
withoutbounded angles gives the worst meshes, followed by Shewchuks
Trianglewith bounded angles, and followed by the quadtree direct
meshing algorithm.While the modified determinant is indicative of
four shape parameters (aspectratio, skew, taperx and tapery),
Robinsons method of calculating aspect ratioseems to be sufficient
for general mesh quality assessment. As we can seein Figure 9,
modified Jacobian determinant correlates extremely highly
withaspect ratio. This would indicate that for the input set we
have analyzed,modified Jacobian determinant is as good as a mesh
quality measure asRobinsons aspect ratio.
19
-
For individual quad analysis, the modified Jacobian determinant
will bemore effective in determining its quality. The determinant
is affected by allfour shape parameters, and so is the ideal
candidate should algorithms needto maximize for a certain quality
metric.
However, there are limitations to the Jacobian determinant. As
Robinsonstates, a quadrilateral has two sets of shape parameters
depending on whichof the oblique axes is taken as the local x-axis,
although the skew parameter isthe same in each case [8]. This means
that the same quad, given a differentordering of points, could give
one of two metrics. See Figure 10.
6 Conclusion
This paper examines Robinsons CRE method in-depth, and provided
animplementation of the analysis to be run on quad meshes in .OFF
format.The modified Jacobian determinant, given in this paper, is a
valid measureof the quality of a quad mesh, although it should be
noted that for meshanalysis, Robinsons method of measuring aspect
ratio works similarly asan indicator of quality. Further research
could be conducted by analyzingother quad mesh generation programs.
Since the source code for the analysisprogram is given below, the
only impediment to analyzing other quad meshalgorithms would be the
acquisition of executable implementation of thealgorithms, and the
necessary file type conversion, as .OFF is one of manymesh formats
available.
The code for the analysis program and input data sets is
available athttps://github.com/plu97/analyzeOffFile.
References
[1] Atalay F. B., Ramaswami S. and Xu D. (2012) Quadrilateral
Mesheswith Provable Angle Bounds, Engineering with Computers 28,
Issue 1,pp 31-56
[2] Bern M., Eppstein D., Gilbert J. (1994) Provably Good Mesh
GenerationJournal of Computer and System Sciences 48, Issue 1, pp
384-409
20
-
[3] Bommes D., Levy B., Pietroni N., Puppo E., Silva C., Tarini
M., ZorinD. (2013) Quad-mesh Generation and Processing: A Survey,
ComputerGraphics Forum 32, Issue 6, pp 51-76
[4] Devadoss S. L. and ORourke J. (2011) Discrete and
Computational Ge-ometry
[5] Eppstein D. (2001) Global Optimization of Mesh Quality, from
http://www.ics.uci.edu/~eppstein/pubs/Epp-IMR-01.pdf [Accessed
Dec.19 2014]
[6] Eppstein D., Goodrich M. T., Sun J. Z. (2005) The Skip
Quadtree:A Simple Dynamic Data Structure for Multidimensional Data,
fromhttp://www.ics.uci.edu/~eppstein/pubs/EppGooSun-SoCG-05.pdf
[Accessed Apr. 19 2015]
[7] Remacle, J.-F., Lambrechts, J., Seny, B., Marchandise, E.,
Johnen, A.and Geuzainet, C. (2012) Blossom-Quad: A non-uniform
quadrilateralmesh generator using a minimum-cost perfect-matching
algorithm. In-ternational Journal for Numerical Methods in
Engineering 89, Issue 9,pp 1102-1119
[8] Robinson J. (1987) CRE Method of Element Testing and the
JacobianShape Parameters, Engineering Computations 4, Issue 2, pp
113-118
[9] Robinson J. (1988) Understanding Finite Element Stress
Analysis
[10] Shewchuk J. R. (1996) Triangle: Engineering a 2D Quality
Mesh Gen-erator and Delaunay Triangulator, Applied Computational
Geometry To-wards Geometric Engineering, pp 203-222
[11] Tarini M., Pietroni N., Cignoni P., Panozzo D. and Puppo E.
(2010)Practical Quad Mesh Simplification, Computer Graphics Forum
29, Num-ber 2, pp 407-418
21
-
Figure 10: Jacobian Determinant measurement
(a) A quad, with aspect ratio = 1.2, mod. Jacobian determinant =
1.6733
(b) The same quad, rotated 90 to the right. Aspect ratio = 1.5,
mod. Jacobiandeterminant = 2.0
22