Integer-Grid Maps for Reliable Quad Meshing

advertisement
Integer-Grid Maps for Reliable Quad Meshing
David Bommes1 Marcel Campen2 Hans-Christian Ebke2 Pierre Alliez1 Leif Kobbelt2
1
2
Inria Sophia Antipolis - Méditerranée
RWTH Aachen University
Greedy Rounding + Stiffening
Our Reliable Approach
Figure 1: (left) State-of-the-art parametrization based quad mesh generators, working with greedy rounding and stiffening, perform well if
the target element sizing is chosen conservatively w.r.t. the distance of singularities but fail otherwise. Degeneracies in the map that prevent
the iso-lines from stitching to a valid quad mesh – which mostly cannot be repaired locally – are highlighted in red. (right) Our novel reliable
algorithm produces a valid output for any target sizing and thus in addition to ordinary quad-remeshing can be applied to coarse quad layout
generation as well. The target edge length, indicated by bars, is identical for the left and the right triple.
Abstract
Links:
Quadrilateral remeshing approaches based on global parametrization enable many desirable mesh properties. Two of the most important ones are (1) high regularity due to explicit control over irregular vertices and (2) smooth distribution of distortion achieved
by convex variational formulations. Apart from these strengths,
state-of-the-art techniques suffer from limited reliability on realworld input data, i.e. the determined map might have degeneracies
like (local) non-injectivities and consequently often cannot be used
directly to generate a quadrilateral mesh. In this paper we propose a
novel convex Mixed-Integer Quadratic Programming (MIQP) formulation which ensures by construction that the resulting map is
within the class of so called Integer-Grid Maps that are guaranteed to imply a quad mesh. In order to overcome the NP-hardness
of MIQP and to be able to remesh typical input geometries in acceptable time we propose two additional problem specific optimizations: a complexity reduction algorithm and singularity separating conditions. While the former decouples the dimension of the
MIQP search space from the input complexity of the triangle mesh
and thus is able to dramatically speed up the computation without inducing inaccuracies, the latter improves the continuous relaxation, which is crucial for the success of modern MIQP optimizers. Our experiments show that the reliability of the resulting algorithm does not only annihilate the main drawback of parametrization based quad-remeshing but moreover enables the global search
for high-quality coarse quad layouts - a difficult task solely tackled
by greedy methodologies before.
1
CR Categories: I.3.5 [Computational Geometry and Object Modeling]: Hierarchy and geometric transformations
Keywords: remeshing, quadrangulation, parametrization, mixedinteger optimization
DL
PDF
W EB
DATA
Introduction
The automatic conversion of objects given as triangulated surface
meshes into a quadrilateral representation (referred to as quadremeshing) is a challenging task which has attracted lots of attention in the last years. In animation as well as in simulation quadrilateral meshes are very appealing due to their tensor-product nature.
The edges in a quad mesh tend to form smooth curves on the surface that are very well suited to accurately represent feature curves
and to naturally segment objects into structured parts. Apart from
the well behaved edge flow of a single curve, intersections between
pairs of curves are typically nearly orthogonal and exhibit good numerical properties in Finite-Element Methods.
Often quad-remeshing is a single building block embedded within
a complex application pipeline like, e.g., an animation or simulation system. Consequently reliability of the involved algorithms is
indispensable in order to be able to automatize as many sub steps
as possible and thus achieve high productivity. As an extreme case,
imagine an adaptive simulation where in each of the thousands of
timesteps a remeshing has to be performed. Obviously it is not
feasible to manually react on failure cases in the simulation and a
©ACM, 2013. This is the author’s version of the work.
It is posted here by permission of ACM for your personal
use. Not for redistribution. The definitive version was
published in ACM Transactions on Graphics 32, 4, Proc.
SIGGRAPH 2013.
reliable automatization is absolutely essential. On the other hand
in an interactive digital sculpting scenario a non-reliable dynamic
remeshing algorithm would be equally problematic since it severely
disrupts the workflow by keeping the designer away from her actual
task. Apart from the above examples it is clear that the usage of
a non-reliable algorithm presupposes expert knowledge on how to
react in failure cases, a hurdle often strongly limiting the range of
potential users.
pushing the minimizer of the continuous relaxation towards the best
integer solution is addressed in Section 3.3. The proposed singularity separation conditions exploit the fact that the distance between
singularities in every integer solution can never be smaller than 1.
The experiments in Section 4 show that the combination of complexity reduction and singularity separating conditions allows us to
efficiently find good approximations of the original MIQP, which is
impossible without them.
Parametrization based algorithms are known to produce high quality quad meshes. Especially their abilities to (1) explicitely control the number and position of irregular vertices, (2) to smoothly
distribute distortion by convex variational formulations and (3) to
naturally preserve feature curves and boundaries make them a good
choice for many practical applications. Unfortunately they lack reliability as illustrated in Fig. 1. The main source of non-reliable
behavior are degeneracies in the constructed parametrization function, i.e. the Jacobian determinant of the piecewise linear map is
locally less than or equal to zero. Geometrically a value less than
zero characterizes triangles that flip their orientation in the domain
while a zero value results from local non-injectivities where an edge
or even a whole triangle is mapped to a single point. All such degeneracies destroy the essential property that the mapped grid of
integer-isolines forms a quad mesh on the surface. In the worst case
non-quad regions with an odd number of boundary edges are generated for which it is known that they cannot be quadrangulated individually by a postprocess without touching other parts of the quad
mesh. While state-of-the-art algorithms [Bommes et al. 2009] typically succeed in the generation of finely tessellated quad meshes,
especially the construction of coarse quadrangulations, where the
edge length is equal to or larger than the distance between singularities, is delicate. For such instances it frequently happens that the
energy of a degenerated map, e.g. where two nearby irregular vertices are mapped to the same integer location, is smaller than those
of the closest non-degenerate one. This is the main motivation behind specialized algorithms for the construction of coarse quad layouts [Campen et al. 2012], instead of just driving a parametrization based quad mesh generator with a large target edge length.
Note that our reliable parametrization based approach is the first
one that offers a unified methodology for quad-remeshing on all
desired scales and hence is indeed able to generate also coarse quad
layouts.
1.1
The description is organized in the following way. In Section 2 we
define the class of Integer-Grid Maps, which consists of all piecewise linear maps which non-degenerately map the grid of integer
isolines into a quad mesh on the surface. Finding optimal maps
from this class is computationally intractable, which is not surprising considering that quad meshes have to fulfill global topology
constraints [Murdoch et al. 1997] and that the construction of coarse
quad layouts [Tarini et al. 2011; Bommes et al. 2011; Campen et al.
2012] is well known to be a hard task, even for human designers.
To enable the efficient generation of Integer-Grid Maps, in Section
3.1 we derive a novel convex Mixed-Integer Quadratic Programming (MIQP) formulation, which in principle can be optimized by
modern branch-and-cut techniques like [IBM 2012; Gu et al. 2011].
Such solvers succeed if the search space is low-dimensional and if
the optimal solution is not too far away from that of the continuous
relaxation, i.e. the instance of Quadratic Programming (QP) where
all integer conditions are neglected. The first aspect is addressed by
an aggressive complexity reduction algorithm presented in Section
3.2, which intuitively can be understood as incremental mesh decimation in a carefully chosen flat parametric space. The number of
remaining vertices is roughly equal to the number of singularities in
the quad mesh and thus typically orders of magnitude smaller compared to the input mesh. The loss of accuracy is only marginal since
solely flat parts are re-tessellated. The second important aspect of
Contributions
In summary our main contributions are the following:
• A MIQP formulation where the minimizer in contrast to previous work is guaranteed to be an Integer-Grid Map, Sec. 3.1.
• A complexity reduction algorithm which accurately approximates the high-dim. problem by a low-dim. one, Sec. 3.2.
• Singularity separating conditions, which significantly improve the continuous relaxation of the MIQP, Sec. 3.3.
1.2
Related work
In the last years, quad mesh generation has been studied intensively such that we restrict the discussion to the most relevant aspects while referring the reader to a recent more complete survey
[Bommes et al. 2012]. Previous work on quad remeshing shows a
division between algorithms which come with guaranteed quality,
and methods which aim at maximizing the quality. The guarantees
of the first class lead to reliable algorithms that work every time,
but often are limited to minimum guarantees, e.g. pure quad topology or convex elements, and do not provide strong guarantees on
the overall quality. Most algorithms within this class are operator
based, like Catmull Clark subdivision [Catmull and Clark 1998],
the QMorph [Owen et al. 1999] algorithm, or quad mesh decimation techniques [Daniels et al. 2008; Daniels et al. 2009; Tarini et al.
2010].
The algorithms of the second class are typically based on variational formulations related to global parametrization and often lead
to superior mesh quality in practice but do not provide any guarantees, not even the minimal requirement of generating a topological
quad mesh. Approaches within this class are sometimes driven by
a cross field [Ray et al. 2006; Kälberer et al. 2007; Bommes et al.
2009] or based on quad layouts [Dong et al. 2006; Tong et al. 2006;
Bommes et al. 2010; Huang et al. 2008]. In any case, the problem of
guaranteeing success of such a method is two fold, (1) determining
integer positions of the singular vertices that admit a degeneracy
free bijective parametrization and (2) finding such a map, which
in addition optimizes the resulting mesh quality. The first issue is
trivially solved for layout based approaches by assigning a positive
length to each poly-chord [Daniels et al. 2009] in the quad layout,
while it is a serious hurdle in cross-field based techniques, where
apart from non-reliable greedy techniques no other solution exists.
The second issue has been tackled through many different
strategies like, e.g., penalization of high distortion by stiffening
[Bommes et al. 2009], singularity relocation techniques [Dong et al.
2006; Tarini et al. 2010], the inverse way of domain relaxation
[Bommes et al. 2010] or varying the sizing field by curl correction
[Ray et al. 2006]. Additionally to methods specifically designed
for quad remeshing, there exists previous work on degeneracy-free
parametrization [Floater and Hormann 2005; Sheffer et al. 2006;
Hormann et al. 2007]. It is important to understand that singularities in the map, that are inevitable for quad remeshing, act like
point constraints in texture mapping that require special treatment
[Eckstein et al. 2001; Yu et al. 2012]. Such methods, developed
for texture mapping, require a boundary and cannot be applied in
f −1
Ω
f
Figure 2: The main idea of parametrization based quad mesh
generation methods consists in mapping the canonical quad mesh
formed by the 2D Cartesian grid onto the surface. First the mesh is
parametrized, i.e. cut and flattened by a function f onto a 2D domain Ω. Then the intersection between the Cartesian Grid and the
domain Ω ∩ G is inversely mapped onto the surface, where a quad
mesh is obtained by contouring. Special compatibility conditions
are required along the colored cut-curves.
our context of globally smooth parametrization with cone singularities [Springborn et al. 2008]. Therefore all of the above methods do not provide the required reliability or cannot be applied to
our setting. In the area of quasiconformal maps, however, two recent approaches [Weber et al. 2012; Lipman 2012] are lifting the
variational setting to a new level. While the nonlinear approach of
[Weber et al. 2012] usually succeeds but cannot guarantee to find
a bijective mapping, the powerful concept of “Bounded Distortion
Mapping Spaces” [Lipman 2012] is closely related to one aspect of
our setting. We hence provide a detailed comparison in Section 4.
Since none of the previous methods addresses the integer related
problem (1), all of them fail in the context of coarse quad-remeshing
(cf. Figure 1). This behavior motivated the design of conceptually
different algorithms for quad layout generation based on, e.g., gridpreserving operators [Bommes et al. 2011], separatrix optimization
[Tarini et al. 2011] or loop tracing [Campen et al. 2012]. Due to
its reliability however, our global optimization algorithm is able to
generate quad meshes within the complete range of sizes and even
outperforms state-of-the-art greedy techniques.
From the quality and automatization point of view, cross-field based
techniques seem to be the current choice for industrial practice.
Such algorithms found its way into commercial software like the
qRemesher of Pixologic’s ZBrush or the re-topology tool of 3D
Coat. Moreover, extensions to different input data like point clouds
[Li et al. 2011] or range images [Pietroni et al. 2011] are available
and thus a large application area is covered by them. Consequently,
our overall goal is to improve the reliability of these practical variational approaches and eventually achieve high-quality and guarantees altogether. Stepping back to the root of the mathematical
formulation, we identify the components that are missing for reliability and efficiency and thus are able to complement the formulation of such techniques [Kälberer et al. 2007; Bommes et al. 2009]
by the missing ingredients.
2
Integer-Grid Maps
The main principle of parametrization based quad meshing algorithms is the mapping of the canonical quad mesh formed by the
2D Cartesian grid of integer iso-lines onto a surface embedded in
3D, see Figure 2 for an illustration. However, this map has to fulfill several requirements such that the image of the 2D integer-grid
stitches to a valid quad mesh on the surface as discussed next.
In the following we restrict the discussion to piecewise linear maps
given per triangle. More specifically, given a triangle mesh M =
(V, E, T ) composed of vertices, edges, and triangles, a map f is
(a)
(b)
(c)
(d)
(e)
Figure 3: Integer-Grid Map conditions: (a) For arbitrarily mapped
triangles, the integer lines are discontinuous on the surface. (b)
Compatibility results from transition functions of type (1), however,
with a triangle at the singularity. (c) Moving the singularity to an
integer position, i.e. fulfilling (2), results in a valid IGM leading to
a pure quad mesh on the surface. (d) Invalid orientation consistency (3) results in non-quad cells. (e) A regular vertex is trapped
in a valid but sub-optimal configuration. It is not possible to continuously unfold this configuration without temporarily degenerating
one triangle.
given as the union of all individual triangle maps specified by the
images of their corresponding three vertices:
fi : (ui , vi , wi ) ∈ R2×3 7→ (pi , qi , ri ) ∈ R3×3
Note that following [Kälberer et al. 2007] each triangle is an individual chart and consequently a single vertex might have multiple
copies.
The class of Integer-Grid Maps (IGMs) is defined to be the subset
of all possible maps which additionally correctly stitch the grid of
integer iso-lines to a valid quad mesh. The necessary and sufficient
conditions are the following:
• Transition Functions: The transition function gi→j from the
chart of triangle ti to the chart of a neighboring triangle tj ,
identifying their common edge, has to be an integer-grid automorphism [Kälberer et al. 2007; Bommes et al. 2009] in R2
of the form
r
gi→j (a) = R90ij a + tij
(1)
consisting of a rij ∈ {0, 1, 2, 3} times π/2 ccw rotation and
an integer translation tij ∈ Z2 .
• Singular Points: With the above transition functions it is possible to represent cone singularites with quarter-indices which
are characterized by a nonzero angle defect1 in the domain.
Let S be the set of all singular vertices. Then in order to guarantee a pure quad mesh all singular vertices have to lie on
integer locations in the domain, i.e.
f −1 (si ) ∈ Z2 ∀si ∈ S
(2)
• Consistent Orientation: All domain triangles (u, v, w) with
u, v, w ∈ R2 should have a positive orientation, meaning that
det [v − u, w − u] > 0
(3)
These conditions are illustrated graphically in Figure 3. For the
remainder of this paper it is very important to keep in mind that an
IGM is a bijective map between two piecewise linear 2-manifold
1 The
angle defect
P is defined in the usual way to be 2π −
interior and π − i αi for boundary vertices
P
i
αi for
meshes f : MIGM → M. Naively searching for the best IGM leads
to an instance of Mixed-Integer Nonlinear Programming (MINLP)
as discussed next.
2.1
Naive Search for Integer-Grid Maps
In parametrization based quad-remeshing a variational quality metric Eq (f ) is commonly chosen that penalizes undesired distortion
of the resulting quad elements on the basis of the map f . Usually
the unconstrained minimizer of Eq (f ) is not an IGM and to obtain
a quad mesh we have to solve the following instance of MINLP:
minimize Eq (f ) s. t.
(1), (2), (3)
(P1)
This naive problem formulation consists of 6|T | + 3|E| unknowns
including at least 3|E| discrete variables. Due to (1) there are 2|E|
many equality constraints that are nonlinear in rij and linear in tij .
Furthermore (3) generates |T | many non-convex quadratic inequality constraints. Although the DOFs can be reduced along a spanning tree of dual edges without affecting the solution (cf. [Bommes
et al. 2009]) the resulting number of unknowns is still in the order
of O(|V |) in both, the continuous and discrete variables.
Unfortunately MINLP problems are very hard to solve since they
imply all difficulties from continuous as well as discrete optimization. Even by neglecting all integer constraints there is little hope of
finding good solutions since due to (1) and (3) the continuous relaxation is within the still very difficult class of non-convex Nonlinear
Programs. Figure 3 (e) gives an idea on how complicated the situation is. It shows a typical poor local minimum that we observed in
optimization with non-convex consistent orientation constraints (3).
It is clear that in the case of triangle meshes with thousands of vertices the naive search for IGMs is not feasible due to the huge discrete search space in combination with nonlinear and non-convex
functions.
Modern mixed-integer optimizer codes are able to rapidly find good
feasible solutions if the problem fulfills the following three requirements. (i) The objective function as well as all constraint functions are convex. (ii) The search space is low-dimensional. (iii)
The optimum lies not too far away from the one of the continuous relaxation. Accordingly we show next how we successively
simplify conditions (1), (2) and (3) in order to devise a practically
feasible formulation, namely a low-dimensional convex Quadratic
Program (convex objective function and linear constraints) with a
well-behaved continuous relaxation.
3
Efficient Search for Integer-Grid Maps
One reason for the enormous dimension of discrete variables in
problem (P1) is that potentially every vertex in the input triangle
mesh can represent a singularity in the quad mesh. Therefore one
appealing approach is to split the overall problem into one step
which determines singular vertices and a second step which solves
the parametrization problem with fixed singularities. Note that
this approach, although usually not motivated from this perspective, is realized by all state-of-the-art parametrization based quadremeshing algorithms, by using either a cross-field or a quad layout.
Compared to problem (P1), finding a cross-field with adequate singularities is a simpler task since angle based convex mixed-integer
formulations [Ray et al. 2008] exist which can be tackled with fast
greedy solvers [Bommes et al. 2009] in a reliable way.
Guiding problem (P1) with a cross-field and restricting to fixed singular vertices, all rij in the transition functions are determined,
turning the non-linear constraints (1) into linear ones. The number of required independent tij is roughly 2|S| and thus also sig-
nificantly reduced. Furthermore condition (2) is simplified since
the set S is no longer dynamic but known a priori. The cross-field
enables a powerful quadratic quality metric that on the one hand
favors the alignment of quad elements along the cross directions
and on the other hand tries to reproduce a specified element density
[Kälberer et al. 2007; Bommes et al. 2009]
1X
E(f ) =
At k∇ft − Rt Ht k2Frobenius
(E1)
2 t∈T
where Ht = diag(wt−1 , h−1
t ) is the locally desired anisotropic sizing, the columns of Rt ∈ R3×2 are the normalized u and v directions of the cross-field, and At is the triangle area.
In order to weight the importance of cross direction versus sizing
fidelity and to penalize outliers by a higher-order norm (if desired),
we generalize the quality metric to the following form
1X
At kRtT ∇ft − Ht kkα
(E2)
Eαk (f ) =
2 t∈T
where k ∈ 2Z+ , α ∈ [0, 1] denotes the anisotropy factor, and
a b k
k
k
k
k
c d = 2α(a + d ) + 2(1 − α)(b + c )
α
For α below 0.5 stretching along the cross-field directions is preferred over angular deviation. This is for example useful if crossfield aligned rectangular patches are desired as often seen in coarse
quad layouts. Notice that despite its nonlinearity (E2) is still a convex functional and thus efficiently optimizable.
Up to here, the discussed simplifications are known and have been
applied previously to achieve acceptable runtimes. Notice that for
well behaved input data, i.e. a well chosen combination of geometry, cross-field R and sizing field H, the triangle orientation consistency constraints (3) can be neglected since the variational formulation already penalizes flipped triangles. However, for complicated real-world geometry automatic state-of-the-art algorithms
frequently run into trouble due to the following two reasons. First
of all singularities in an Integer-Grid Map behave similar to isolated point constraints in harmonic parametrizations. Hence, suboptimally chosen singularity locations are likely to induce flipped
triangles, even for continuously relaxed tij (cf. [Yu et al. 2012; Lipman 2012]). Secondly, a greedy estimation of singularity integer
locations (2) can intuitively be understood as snapping the singularities to their closest integer lattice point (cf. the NP-hard closest
lattice problem formulated in [Springborn et al. 2008] and analyzed
in [Micciancio 2006]). Obviously, if the relaxed minimizer of Eq
positions several singular vertices close to the same integer lattice
point these singularities are likely to snap onto each other and thus
induce a degenerate map. While the first issue can be satisfactorily handled by the stiffening approach of [Bommes et al. 2009] or
recent parametrization approaches that bound the quasi-conformal
distortion [Lipman 2012; Weber et al. 2012], the second integer
related one cannot. Moreover it seems to be very difficult if not
impossible to design a greedy snapping strategy which guarantees
a valid map while respecting the linear interdependency caused by
the transition functions.
To overcome the integer related problem in the next sections we derive a convex formulation that is designed for modern branch-andcut mixed-integer optimizers. In contrast to greedy rounding such
solvers are able to scan the entire integer space for valid solutions.
The ultimate goal we want to achieve: Given any cross-field R
and sizing field H, both living on an arbitrary triangle mesh M, efficiently find the Integer-Grid Map f : MIGM → M that optimizes
the quality functional Eαk .
S2
opposing vertices of each original edge as shown in Figure 4
(middle).
u2
s2
c
s0
S0
u0
m
S1
u1
d
m
s1
a
b
Figure 4: (left) Given a m-centered ccw-ordered trisector generated by si , the triangle cannot flip its orientation if each vertex ui
remains strictly within sector Si and the origin m is an interior
point of the triangle. (middle) The Fermat point m is the intersection of the red lines, resulting from equilateral triangles, in blue,
yellow and green, attached to each edge. (right) To guarantee a
Fermat point inside the triangle, large angles above 100◦ are virtually split, meaning that d= (1 − α)b + αc is a linear combination
of the original degrees of freedom.
This construction is possible only if the reference triangle exhibits
no angle larger than 120◦ . However, in all other cases we can simply virtually split the triangle along the altitude at its large angle
as demonstrated in Figure 4 (right). After the split it is guaranteed
that no angle is larger than 90◦ . Note that no explicit splitting is
required, since the split point can be expressed in barycentric coordinates and thus is linear in the original vertices. In practice we
virtually split all triangles exhibiting an angle larger than 100◦ , because for larger angles the Fermat point approaches a vertex which
negatively affects the space of feasible transformations.
The convex subspace C resulting from the trisector positioned at
Fermat’s point contains a rich set of deformations around the reference shape. For example similarity transformations composed of
(i) arbitrary translations, (ii) isotropic scalings within (0, ∞) and
(iii) rotations within (−60◦ , 60◦ ) are still possible.
Due to limited precision floating
point arithmetic it is not possible to handle constraints with strict
inequalities. Accordingly we modify the above constraints to the
following normalized form
s⊥
δi0 (ui − m) · i⊥ − ≥ 0
ksi k
(4)
⊥
s
i+1
1
δi −(ui − m) · ⊥
− ≥0
ksi+1 k
Limited Precision Arithmetic:
3.1
Convex Consistent Orientation
The feasible set of the consistent orientation condition (3) is a nonconvex region N ⊂ R6 . In our quest for IGMs, however, we
need to find a convex approximation C which in addition is conservative, meaning that every point within C fulfills (3) and hence
C ⊂ N . Based on the geometric interpretation of condition (3),
i.e. the signed area of a mapped triangle is required to be positive,
we derive such a conservative convex approximation.
Assume an (arbitrary) ccw-ordered tri-sector (S0 , S1 , S2 ) as illustrated in Figure 4 (left). It is centered at m ∈ R2 and generated by
three ccw-ordered rays m + t · si with t ∈ [0, ∞) that partition R2
into 3 sectors
⊥
Si = {u ∈ R2 : (u − m) · s⊥
i > 0 ∧ (u − m) · si+1 < 0}
where 2 is a lower bound on the distance between two vertices of
the same triangle and δi0 and δi1 are normalization factors, normalizing the constraint value to 1 w.r.t. the reference shape. We choose
as 1% of the smallest reference edge length, although substantially smaller values are also possible as long as the tolerance of the
applied solver is chosen below 2.
Appropriate reference triangles result from the input cross- and
sizing-field as discussed in more detail in Section 3.4. At this point
we thus achieved a convex formulation which in theory is sufficient
to find the best IGM within our convex subspace:
with ()⊥ representing a ccw-rotation by 90 degrees and all index arithmetic modulo 3. Furthermore assume a triangle T =
(u0 , u1 , u2 ) which is compatible to the trisector in a sense that
ui ∈ Si and m is inside T . Then the area of T is guaranteed to be the sum of three positive areas belonging to the triangles Ti = (ui , ui+1 , m) and thus is positive as well. Choosing an P
arbitrary interior point expressed
in barycentric coordinates
P
m = 2i=0 αi ui with αi > 0,
αi = 1 as the trisector center
and keeping si as well as αi fixed results in a conservative and convex approximation of (3) in form of six linear inequality conditions
{ui ∈ Si }.
However, in practice the enormous time complexity of integer optimization does not allow the handling of instances with more than a
few vertices as the experiments in Section 4 show. This is why we
have to spend more effort in the next sections to obtain a practical
problem formulation.
The previous discussion shows that each choice of (α, s0 , s1 , s2 )
defines a convex configuration space C of a triangle with strictly
positive area. Geometrically such a choice is a trisector attached
to a barycentric position in the triangle. Note that every specific
trisector excludes a portion of valid triangle configurations since
the convex set C is only a subset of the non-convex set N .
Imagine that for each triangle T we know a reference configuration
T̄ = (ū0 , ū1 , ū2 ) which is likely to be close to the optimal shape.
Accordingly the goal is to find a C which only excludes unlikely
deformations of the reference T̄ . To enable maximal rotational
freedom we choose a trisector origin m such that angles between
(ūi − m) and (ūi+1 − m) are 120◦ each such that the separation
ray vectors si can be chosen as the corresponding bisectors. This
point is know as the first Fermat point and can be constructed by
first attaching an equilateral triangle at each edge of the reference
triangle and then intersecting the three diagonals connecting both
To understand the following two improvements it is helpful to
briefly review the fundamentals of branch-and-cut solvers [Pardalos and Resende 2002]. Such a solver explores a tree of continuous problems until the best integer solution is found and proven
to be optimal. The root of this tree, which is of exponential size
in the discrete variables, is the original relaxed problem. At each
branch heuristically an inequality is added that splits the search
space into two disjunct parts with integer solutions on the newly
created boundary. Depending on the problem characteristic such a
search might only require the traversal of a linear subset of nodes or
in the worst case visits the complete exponential tree. In any case
we have to solve many continuous problems similar to the relaxation of (P2), leading to the first issue of node complexity which
will be addressed by a complexity reduction algorithm in Section
3.2. The second issue arises if the minimizer of the initial continuous relaxation is far away from the optimal integer solution. In this
minimize Eαk (f ) s. t.
(1), (2), (4)
(P2)
where the former sum is split into a double sum of piecewise linear parts, i.e. the intersection of both non-conforming triangular
meshes. In case of an isotropic and globally constant sizing Ht
we can moreover allow for a slight bias in the metric by observing
that the first map roughly satisfies RtT ∇ft ≈ Ht leading to
Eαk (f ◦ g) ≈
1
2
X
As k∇gs − Ikkα
(E4)
s∈TM−
which avoids the necessity to intersect both triangle meshes.
Our mesh decimation in
parametric space is a simple algorithm based on the three well
known operations: halfedge collapse, edge flip and edge split
(cf. [Botsch et al. 2010]) illustrated on the right. By disallowing all operations that move
a cone singularity it is guarancollapse
teed that the decimation is an isometric re-tessellation of flat 2D
space. Sorted by increasing edge
length, we perform valid halfedge
collapses until no more collapse
flip
is possible. We then flip edges
that violate the Delaunay criterion [Botsch et al. 2010] until
the intrinsic Delaunay triangulasplit
tion of our current vertex set is
reached. Due to the flips new
halfedges might become collapsible and we iterate both steps until convergence. This simple strategy typically leads to the intrinsic
Delaunay triangulation of the singular vertices, which is the coarsest mesh we can potentially reach. Due to the non-uniform distribution of singularities, the triangle quality of the decimated mesh
is typically rather low and exhibits triangles with large aspect ratio. However, since we observed that good triangle quality is not
critical for the solution of our mixed-integer problem, we favor low
complexity over mesh quality and skip potential mesh improving
strategies such as Delaunay refinement. More important in order
to not exclude good integer solutions is that all crucial DOFs are
available as discussed next.
Operator based Mesh Decimation:
Figure 5: Aggressively decimating the input mesh (left, 15k vertices) embedded in 3D is problematic, since the resulting surface
(middle, 109 vertices) strongly changes as can be noticed at the upper handle. Moreover a straightforward mapping of the input crossfield to the decimated surface, which is required for the intended
optimization, is not available. Instead we decimate the flat parts
within a cone-metric parametrization, which preserves the original
geometry (right, 109 vertices).
case the branch heuristics frequently fail and let the solver dive into
subtrees without any feasible solution. To prevent such inefficient
tree traversal, in Section 3.3 we propose singularity separating conditions that strongly improve the initial continuous relaxation and
thus significantly speed up the solution process.
3.2
Complexity Reduction
To reduce the node complexity of the branch-and-cut algorithm
it is tempting to aggressively decimate the input mesh. Recall
that due to (2) singularities of the cross-field imply integer conditions in the map and consequently cannot be removed from the
mesh. In contrast this is possible for all regular vertices. The
problem with such an extreme decimation pre-process is that the
input surface itself would be heavily altered as illustrated in Figure 5 (middle). We cannot expect that the best quad mesh for
the decimated surface is similar to the optimal one for the original surface. In order to nevertheless perform an extreme complexity reduction we can exploit the following observation: The
solution of the continuous relaxation of (P2) is a globally smooth
map frelaxed : Mrelaxed → M with Mrelaxed being flat except from
cone singularities at cross-field singularities. Accordingly the idea
is to perform decimation in flat parametric space and thus being
able to represent the original input surface by an extremely coarse
mesh. After decimation, i.e. the map Mrelaxed → M− , every new
triangle overlaps with a set of triangles of Mrelaxed in parameter
space (see inset) and thus represents a surface patch by means of
frelaxed as shown in Figure 5 (right). Mathematically the decimation in parametric space
corresponds to a change of function space and
it is straightforward to formulate the original
quality measure Eαk in terms of the decimated
mesh. Based on the known map f : M− → M we search for the
unknown IGM g : Mint → M− . The map g should minimize the
energy of the combined function f ◦ g : Mint → M, which by the
chain rule evaluates to the following expression
Eαk (f ◦ g) =
1XX
At∩f (s) kRtT ∇ft ∇gs − Ht kkα
2 t∈T
M
s∈TM−
(E3)
Mapping from the continuous
relaxation to the integer solution requires the singular vertices to
snap onto the integer-grid Z × Z. From this point of view a triangle with a large interior angle is problematic – it is likely that
the best way to arrange its vertices in the integer-grid is on a line
resulting in a degenerate triangle. To not exclude the possibility
of arranging the vertices on a line, after decimation we split all
integer-critical edges. An edge is integer-critical if it is incident
to a triangle with three singular vertices where the angle opposing the edge is large. We choose a conservative angle threshold
of 110◦ to capture all cases that might be problematic. Each split
separates two singular vertices by a regular one and the number
of integer-critical edges decreases monotonically. Thus, splitting
integer-critical edges sorted by decreasing length is sufficient.
Splitting Integer-critical Edges:
Maintaining the Map f : M− → M:
The described decimation algorithm is conceptually simple. The only technically more
involved aspect is related to the fact that we do not have a global
embedding of Mrelaxed into 2D. Consequently transition functions
gi→j between different charts have to be taken into account. The
setting is comparable to [Pietroni et al. 2010; Khodakovsky et al.
2003] which potentially could be adapted to our setting. However,
for our special case of a pure re-tessellation we propose a simpler
and more efficient solution. Considering that we know frelaxed it is
sufficient to track fdeci : M− → Mrelaxed while performing the decimation operations. Note that fdeci restricted to the chart of a single
triangle ti ∈ M− is a simple linear map between two 2D tangent
spaces. Accordingly, for each triangular chart ti we allocate a function Ψi : R2 → TMrelaxed × R2 that maps from the tangent space
of ti ∈ TM− to the tangent space of tj ∈ TMrelaxed . To avoid potential ambiguities due to global non-injectivities of a single-chart
representation of frelaxed , we require that the image of ti ’s barycenter Ψi (m) = (tj , ψi (m)) satisfies ψi (m) ∈ tj , i.e. it is inside the
image triangle tj . The situation is depicted on the right. Notice that expressψi (c)
ing the green triangle patch in the tanMrelaxed
gent space of tj in general involves transition functions.
In the beginning those maps are trivtj
ially initialized with the identity funcψi (m)
tion Ψi (u) = (ti , u). For all operations applied during decimation, we now ψi (a)
ψi (b)
state how to update the Ψ functions. To
perform an edge collapse/flip/split operΨi
ation in M− it is convenient to first express the required neighborhood of tric
angles in a common coordinate chart by
M−
transforming their 2D coordinates with
ti
the corresponding transition functions g.
In this case we update Ψnew
= Ψi ◦ g −1 .
m
i
If the geometry of the triangle changes
a
such that the barycenter moves from mo
b
to mn , we map the update path via ψi to
Mrelaxed . If the image of the path subsequently visits triangles (tj1 . . . tjn ), the map has to be updated by
the corresponding transition functions η = gjn−1 →jn ◦. . .◦gj1 →j2
and consequently Ψnew
i (u) = (tjn , η ◦ ψi (u)). For all of our operations, the straight line between old and new barycenter is guaranteed to be within the local neighborhood of affected triangles and
thus can be mapped unambiguously.
3.3
Singularity Separation
In this section we address the issue that the minimizer of the continuous relaxation might be arbitrarily far away from the best possible
integer solution. The reason is that singular vertices might get arbitrarily close to each other within the continuous relaxation, while
their distance in the integer-grid Z × Z of a valid IGM can never be
less than 1. If we, for example, want to compute the coarse quad
mesh of Figure 1 (rightmost), the minimizer of the continuous relaxation covers a total area of less than one (completely fits into
one integer-grid cell), while the optimal integer solution shown requires 112 cells. Such a far-away continuous relaxation challenges
modern branch-and-cut solvers, since they are very likely to spend
much time searching solutions in infeasible sub-trees until enough
information about the problem is collected to succeed. Instead of
letting the solver algebraically search for separation conditions, it
is much more efficient to provide geometrically derived ones right
from the start. In optimization literature such conditions that do not
cut away good solutions but improve the continuous relaxation are
called cuts, explaining the second term in ”branch-and-cut”.
Based on the insights of the above example, our strategy is as follows. We search for pairs of singularities with a ∞−norm distance
of less than 1 and add a linear condition that spreads it to at least 1.
For
√ each singular vertex si , we grow a geodesic disc Gi of radius
2 within the mesh representing the decimated continuous relaxation M− . All singularities sj within the geodesic disc Gi with
i < j are candidates for a singularity separation condition. For each
such pair (si , sj ) we trace the shortest geodesic path P connecting
them. If P contains another singularity sk with k ∈
/ {i, j} we reject
the candidate, since it is redundant due to shorter candidate paths
(si , sk ) and (sk , sj ). Otherwise, we express the difference vector
in a common chart (∆u, ∆v)T = (ui , vi )T − η(uj , vj ), where η
is the combined transition function along the path as before. Separation is performed along the u axis if |∆u| ≥ |∆v| leading to the
condition |∆u| ≥ 1 and otherwise along the v axis with an analog
condition. Linearization of this condition is done by fixing the sign
found in M− , leading to
sgn (∆u)|M− · ∆u ≥ 1
(5)
or
sgn (∆v)|M− · ∆v ≥ 1
for u and v separators respectively. Notice
that these conditions depend linearly on translational variables introduced by the transition
functions of η. On the right side an example
is shown with geodesic iso-contours in red, a
valid separation path in green and an invalid
one in orange. The orange path is not a straight
line, since its singularity lies in the shadow region S of the green singularity, which can be
induced either by a non-convex boundary point
or a cone singularity with a total angle larger
than 2π. Notice that typically many such paths
exist, which can be skipped.
S
v
u
To compute geodesic distances we use the Fast Marching method
[Kimmel and Sethian 1998] driven by the circle update [Novotni
and Klein 2002], which is exact in the obstacle-free planar case –
the only interesting one for us due to rejection of all paths that are
not straight connections between singularities.
It is clear that the above separation constraints do not induce an infeasible problem since a global scaling of the whole mesh by a large
positive factor is sufficient to separate all singularities and thus to
satisfy all conditions. Moreover it is very unlikely that good solutions are lost since the orientation field energy strongly increases if
two singularities swap their spatial ordering.
Re-computing the continuous relaxation with all generated singularity separation conditions effectively avoids the clustering of singularities. However, in rare cases the separation conditions might
induce new pairs of close singularities which are then separated by
iterating the above approach. Due to anisotropic stretching induced
by the separators edges may become integer-critical. Similarly to
3.2 we remove them through edge splits.
3.4
Algorithm and Implementation Details
Based on the described components, our algorithm can be understood as a series of bijective maps between meshes. As depicted in
Figure 6 it is composed of the following steps:
1. Globally smooth parametrization (M → Mrelaxed )
2. Decimation in parametric space (Mrelaxed → M− )
3. Addition of Singularity Separators (M− → Msep
− )
4. Optimization of MIQP (Msep
− → Mint )
5. (optional) Refinement of map (Mint → MIGM )
6. Quad mesh extraction (MIGM → Q)
In the following we describe additional aspects and implementation
details of our algorithm that has been implemented in C++ as a plu-
M
→
Mrelaxed →
M−
→
Msep
−
→
Mint
→
MIGM
→
Q
Figure 6: Algorithm overview from left to right: Starting with a cross-field on a hand model M, a series of maps is constructed to generate
the quad mesh Q. Since intermediate meshes cannot be embedded in 3D, the image of the integer-grid on M is shown for visualization
instead. At first the relaxation of the mixed-integer problem leads to Mrelaxed , which is subsequently decimated within its flat parts into
M− , where the new tessellation is overlaid in green. Due to violated integer conditions the grid does not conform everywhere. Singularity
separators, shown in red on Msep
− , are added to make it more similar to the unknown IGM Mint . Then Mint is computed by branch-and-cut on
the low-dimensional and improved problem. Optional refinement of Mint adds DOFs to get smoother isolines in MIGM , which is eventually
contoured to the resulting quad mesh Q.
gin for the geometry processing framework OpenFlipper [Möbius
and Kobbelt 2012].
The refinement of step 5 can be seen
as an inverse of the decimation. The coarse mesh M− provides
enough DOFs to accurately determine the integer part of the desired IGM, i.e. the connectivity of the quad mesh. However, its extreme coarseness sometimes leads to unpleasant distortions of the
iso-lines which can be avoided by a denser mesh with more DOFs.
For the runtime the refinement is not critical as long as we only
optimize continuous DOFs while keeping the integers fixed. Our
refinement simply splits edges in Mint at their midpoint, prioritized
by decreasing edge length. The algorithm terminates if all edges
are shorter than a user-prescribed tolerance with a default value of
1, where the number of triangle mesh vertices roughly coincides
with that of the quad mesh. We then optimize the map while keeping the tij integer DOFs of the transition functions fixed. This step
is optional and can be easily left out or replaced by a more sophisticated adaptive up-sampling, which only adds new DOFs in
distorted regions.
(optional) Refinement:
is done in steps 1, 3, 4 and
5, which require some more explanation. Instead of redundantly allocating variables in each triangle, vertices are merged along a dual
spanning-tree. In steps 1, 3 and 4, an arbitrary singularity is additionally fixed to (0,0) in order to obtain a unique minimum. Both
steps are common practice and details can be found in [Bommes
et al. 2009]. For conditions (4) we need 2D reference triangles to
determine appropriate trisectors. In step 1 they are chosen based
on the input cross- and sizing-field, i.e. the reference triangles minimize kRtT ∇ft − Ht k2α . Since the subsequent steps solely map
between 2D spaces, reference triangles for 3, 4 and 5 are automatically available through the latest configuration. This means that
trisectors are greedily re-initialized in every step, which in spirit is
similar to local global approaches [Bouaziz et al. 2012]. It is worth
noting that only the low-dimensional optimization of step 5 implies
integer conditions.
Optimization of (P2) type problems
Features and Boundaries: Preservation of features and boundaries can be integrated in a straightforward way. We require an
explicit representation of feature edges in the input mesh and add
linear conditions, ensuring that such edges are mapped onto integergrid lines (cf. [Bommes et al. 2009]). The feature graph (also containing all boundaries) consists of feature lines, that are potentially
chains of mesh edges, which are either closed or end at feature vertices. During the decimation, it is sufficient to treat feature vertices
like singularities and forbid their movement. If we additionally forbid all halfedge-collapses between vertices lying on different feature lines, the rest of the algorithm can proceed as before.
In all of our examples, we apply the interior
point method IPOPT [Wächter and Biegler 2006] for continuous
optimization problems and the branch-and-cut algorithm of CPLEX
[IBM 2012] for problems containing integer variables. CPLEX is
restricted to quadratic programs with k = 2 and we leave higher
order optimizations for the future. Alternatively CPLEX could also
be used for the continuous optimization but IPOPT is faster if the
constant Hessian and constant Jacobian of the constraints are exploited. Apart from this option we use the default settings, which
probably leaves some potential for performance tuning.
Numerical Solver:
In steps 1 and 5, the conditions (4) for consistent orientation are typically violated only for a small fraction of
triangles. To benefit from this we implemented a lazy constraint
evaluation. The idea is to start with an empty set of type (4) constraints and only if constraints are violated we add them and iterate
both steps until a valid solution is found. To significantly reduce the
number of outer iterations, we conservatively add all (normalized)
constraints with a function value below 0.5. In all of our examples
the lazy mechanism improved the performance. For example, the
runtime of the buddha model of Figure 10 decreased from 9.3 to 4
minutes while the result is identical.
Lazy Constraints:
4
Results
We performed different experiments and comparisons in order to
evaluate our algorithm. The algorithm requires a cross-field, a sizing field and parameters k-norm and anisotropy α as input. Instead
of tuning these parameters for each example, we decided to apply
“default” settings by choosing α = 0.1 for quad layout generation
and α = 0.5 else and k = 2 in all of our examples. Furthermore,
except from one example we restrict to uniform sizing fields, i.e. a
constant target edge length. The reason for these choices is that
we do not intend to show the best possible solutions by tuning the
inputs, but instead validate reliability and quality within an automated environment. Unless stated otherwise cross-fields have been
generated with [Bommes et al. 2009].
Model
Singularities
Patches
Dual Loops Our Method Enhanced CF
B OTIJO
B LOCK
G UY
E LK
ROCKER A RM
F ERTILITY
72
48
40
52
30
48
221
76
168
86
115
98
B OTIJO
E LK
For the generation of coarse quad layouts, we compare against Dual Loops Meshing [Campen et al.
2012] w.r.t. identical models and cross-fields. We choose a target
edge length of 20% of the largest bounding box edge. The comparison results are shown in the following table and Figure 8 respectively.
Coarse Quad Layouts:
B LOCK
F ERTILITY
G UY
A very good way to validate reliability is to perform experiments with random data, as e.g. those in Figure 7. Starting with a sphere, we position all of its vertices at random positions
within the unit-cube and generate a random cross-field as input for
our algorithm. Solely for visualization reasons the resulting quad
mesh is mapped back onto the input sphere and smoothed. The random field leads to extreme valences between 1 and 9, all handled by
our algorithm without any problems. There is one mild condition
for the input cross-field, i.e. no singularity index should be greater
or equal to one, corresponding to a quad mesh valence of 0 or less
and obviously impossible. In a cross-field, that is not artificially distorted, the angle between neighboring crosses is never larger than
45◦ , which gives a hint why random cross-fields still contain valid
parametrization in the induced linearized space. However, theoretically there is no guarantees for that since counter-examples with
artificial extreme distortions can be constructed easily. The situation is comparable to [Lipman 2012], where a local/global approach
for resetting the cross-field is proposed to escape such constellations. In our setting, we never observed such a case, although we
performed a large number of random examples. This is probably
because the cross-field energy enables a good estimate of triangle
rotations.
Random Data:
112∗
58
66
85
*see Figure 1
ROCKER A RM
Figure 7: Random Example: The 254 vertices of a sphere are randomly positioned inside a unit-cube, where a random cross-field is
constructed, resulting in 194 singularities with valences between 1
and 9. Despite the complicated setting, our reliable algorithm finds
an IGM within 60s, leading to a valid quad mesh. After generation,
the quad mesh is mapped back onto the sphere to better inspect the
result. A few smoothing iterations uncover the correctly reproduced
inhomogeneous distribution of singularities.
175
76
55
62
74
117
Enhanced CF
In order to demonstrate the importance of our decimation and singularity separation steps we performed an experiment with the B OTIJO
model of Figure 1 (rightmost). To be able to find any solution without our optimizations, we reduced the mesh from 15k to 3k vertices
(by keeping the singularities). In the first test we used our decimation strategy without addition of singularity separators and not
a single solution could be found within 8h. In the second test we
conversely skipped the decimation step but added singularity separators, leading to a first low-quality solution after 20 minutes. However, 8h were still not sufficient to find a solution comparable to Figure 1 (rightmost), which has been generated by our full algorithm
with decimation and singularity separation within 17s. Disabling
the split of integer-critical edges behaves similarly to the first experiment without singularity separators and the solver spends hours
of computation without finding any feasible solution.
Importance of Decimation and Singularity Separation:
Figure 8: Coarse quad layouts generated with our approach.
The global branch-and-cut optimization strategy leads to quad
layouts with fewer patches compared to the greedy strategy of
[Campen et al. 2012], while still being well aligned to the given
cross-field. Comparing many results, we found that there is another characteristic difference between both algorithms. The Dual
Loops algorithm is not affected much by the precise location of irregular vertices, since it usually searches for curves far away from
them. Our algorithm, however, searches for the map with minimal
energy, where the position of singularities has a stronger influence.
Therefore, we provide additional experiments with enhanced crossfields, where some singularities are manually moved to geometrically more meaningful positions. The results show that for some
models like B OTIJO slight improvements of the cross-field lead to
significant improvements of the quad layout.
We compare our algorithm,
which we call Reliable Mixed-Integer Quadrangulation (RMIQ),
against QuadCover (QC) [Kälberer et al. 2007] and Mixed-Integer
Quadrangulation (MIQ) [Bommes et al. 2009] and its variant with
stiffening (MIQ Stiff). The first experiment is shown in Figure 1.
The results of another representative model, i.e. the ROCKER A RM,
Comparison to Greedy Rounding:
Algorithm
Q UAD C OVER
MIQ
MIQ S TIFF
RMIQ 1 S
# Degenerate Faces / Run Time (s)
h = 10−4 h = .025 h = .05
h = .2
8 2.5
51 2.5 82 2.6 2047 2.6
18 3.8 42 4.2 568 4.0
8 3.9
0 12.3
0 111.3
1 166.6 541 155.6
0 12.0
0 12.0
0 11.9
0 11.6
Table 1
QUADCOVER
MIQ S TIFF
MIQ
RMIQ 1 S
Figure 10: Additional result showing feature handling and two
more complex models.
cause orientation and sizing cannot be chosen independently in a
quad mesh. However, as a proof of concept Figure 11 shows a
quad mesh of the B OTIJO model generated with a linearly changing sizing function and the cross-field as used before. Since the
cross-field singularities are not synchronized with the sizing function, undesired distortions in the transition regions are unavoidable.
However, it is worth mentioning that even for such inconsistent input data our approach reliably finds the solution which is closest to
the desired orientation and sizing.
Figure 9: The shown parametrizations are generated with h = .05.
Degeneracies in the map are highlighted in red.
are shown in Figure 9 and Table 1. While QuadCover and MIQ
fail to generate a valid mapping even for the smallest target edge
length of 10−4 , MIQ with stiffening succeeds up to a size where
the integer-rounding aspects become dominant. Notice that the improved robustness of stiffening comes at the price of a large increase in runtime. Our method, however, efficiently produces valid
parametrizations for arbitrarily large target edge lengths. The runtime, which is less than 12 seconds, is dominated by the first relaxed
solution including all vertices of the input triangle mesh (35k for the
ROCKER A RM), since the branch-and-cut algorithm found solutions
close to the optimum already within 1 second. It is also worth to
mention, that the solution quality is superior to greedy rounding,
leading to better results. Interestingly, the solver gets faster in finding the optimal solution with increasing target edge length. The
reason is that more and more separator constraints are generated
such that the feasible integer space close to the optimal solution
gets smaller.
Figure 10 shows additional results where the largest is the buddha
model with 200k faces, efficiently computed within 4 minutes due
to the lazy constraint mechanism. Sharp features of the mechanical
models are preserved as explained in Section 3.4.
is not the main topic of this paper and we refer the reader for details to [Kovacs et al. 2010; Zhang et al. 2010].
In our opinion sizing belongs to the cross-field generation step be-
Non-uniform sizing
(a)
(b) ∞-norm
(c) 1-norm
(d) oct.
Figure 11: (a) A quadmesh resulting from a linearly varying sizing
field. (b)-(d): Different variants of Lipman’s constraints applied to
the example of Figure Figure 1. The ∞-norm variant unnecessarily
subdivides the long and thin patch, resulting in 124 quads. Similarly the 1-norm refines in a different location, also leading to 124
quads. The octagon version is the union of both previous spaces
and thus able to generate a coarser mesh with 112 quads, as our
approach does. The overall runtime was 71s, 58s, 227s, 45s and
17s for ∞-norm, 1-norm, octagon, our constraints and our lazy
constraints respectively.
Recently Lipman proposed the powerful concept of bounded distortion
mapping spaces [Lipman 2012] that is related to one aspect of our
algorithm, namely the orientation consistency constraints. Consequently we compare both in order to clarify similarities and differences. In a nutshell, the setting of [Lipman 2012] is the following:
d−b
Given a 2D affine map with a linear part of A = a+c
d+b a−c , orientation flips are prevented and the conformal distortion is bounded to
C by the convex cone condition k(c, d)T k2 ≤ a C−1
with a > 0.
C+1
A
conservative
linear
version
results
from
exchanging
k · k2 with
√
2k · k∞ . The first obvious difference is that we do not explicitly
Comparison to Bounded Distortion Mapping Spaces:
bound conformal distortion, since we neither want to exclude rectangles with strong anisotropy nor want to preserve triangle quality.
Both constraint types depend on a reference configuration, chosen
for linearization. Our constraints depend explicitly on the shape,
while those of Lipman constrain the mapping function instead. We
performed experiments with the above constraints and found that
the quadratic cone-constraints are significantly slower within the
branch-and-cut algorithm, increasing the runtime to an impractical
level. The ∞-norm linearization on the other hand leads to a runtime comparable to ours, however, it cuts away solutions that are
relevant for our integer-grid maps. Analyzing the constraint for the
map A =√diag(w, h)
√shows that the ∞-norm restricts anisotropy to
w/h ≤ ( 2 + 1)/( 2 − 1) ≈ 5.8 and the same for h/w, even for
C = ∞. To overcome this limitation, we invesc
tigated different linearizations, namely a 1-norm
and an octagon approximation as shown on the
d
∞-norm
side. The green disc is a slice of the cone, corresponding to a specific a value. The approximation
with an n-gon requires n linear inequality condi1-norm
tions resulting in a tradeoff between accuracy and
runtime, that is not available for our constraints.
In practice, however, except for the limited aspect ratio of the ∞-norm case, we observed only
octagon
slightly differences in the overall behavior of our
constraints, the 1-norm and the octagon version
and conclude that the corresponding feasible regions, although different, all are rich enough for our purpose. Figure 11 (b)-(d) shows
an experiment comparing the different alternatives on a complicated
example. Thus we could potentially exchange our orientation consistency constraints by the 1-norm version of [Lipman 2012]. The
main reason to introduce our novel set of constraints is that in contrast to [Lipman 2012], our constraints generalize in a straightforward way to the volumetric 3D case as outlined Section 5 and thus
will be important for future work, e.g. in the area of hexahedral
meshing.
Since we search for the IGM which best reproduces
a given sizing- and cross-field, it is not surprising that the resulting
quality strongly depends on them. For example, while searching
for coarse quad layouts, sub-optimally placed singularities might
lead to an energetically optimal solution, which is not the one a
human designer has in mind. Another limitation stems from the
fact that, although we strongly reduce the problem complexity, the
branch-and-cut algorithm still has an exponential runtime component within the discrete unknowns. Consequently, the algorithm is
likely to extremely slow down for meshes with thousands of singularities. In practice it seems to be hard to precisely estimate the
feasible range, since the overall time strongly varies due to many
unpredictable criteria that support or handicap the success of the
branch-and-cut strategy.
Limitations:
5
Conclusion and Outlook
We presented a reliable approach to quad remeshing that unifies
the generation of fine-scale quad meshes and coarse quad layouts.
We believe that our method will be an important building block for
many future approaches, that build on top of its reliability. A unique
feature is that due to our aggressive yet accurate complexity reduction, we are able to perform a global optimization approach instead
of the commonly used greedy strategy. Interesting directions for
future work include the generation of sizing fields, a degree of freedom that we did not exhaust yet and the interleaved optimization of
singularities, which in our setting are kept fixed.
Another very promising direction is
the extension of our reliable approach to the volumetric case.
Once a (valid) 3D cross-field is available, volumetric integer-grid
parametrization approaches like [Nieser et al. 2011; Li et al. 2012]
follow a structure similar to the surface case. Our paper is designed
in a way, where the extension of each step to 3D seems to be possible. For each tetrahedron, the orientation consistency constraint
can be linearized analogously to Section 3.1 by choosing an interior
point and generating a separating plane through it for each edge of
the tetrahedron. A similar way of decimation, separator generation
between singular lines and solution of the quadratic integer problem
seems to be possible as well.
The Volumetric Case:
Acknowledgements
This project was funded by by the European Research Council
(ERC Starting Grant ’Robust Geometry Processing’, Grant agreement 257474); the DFG Cluster of Excellence on Ultra-high Speed
Mobile Information and Communication (UMIC), German Research Foundation grant DFG EXC 89, http://www.umic.
rwth-aachen.de; and the Aachen Institute for Advanced Study
in Computational Engineering Science (AICES). Models have been
obtained from the AIM@SHAPE repository and the Image-based
3D Models Archive, Telécom Paris. The GUY model was initially
c
created using Cosmic Blobs
by Dassault Systemes Solidworks
Corp. Additionally we would like to thank Jan Möbius for the geometry processing framework http://www.OpenFlipper.
org and the reviewers for their competent and helpful comments.
References
B OMMES , D., Z IMMER , H., AND KOBBELT, L. 2009. Mixedinteger quadrangulation. In SIGGRAPH ’09: ACM SIGGRAPH
2009 papers, ACM, New York, NY, USA, 1–10.
B OMMES , D., VOSSEMER , T., AND KOBBELT, L. 2010. Quadrangular parameterization for reverse engineering. In Proc.
on Mathematical Methods for Curves and Surfaces, SpringerVerlag, Berlin, Heidelberg, MMCS’08, 55–69.
B OMMES , D., L EMPFER , T., AND KOBBELT, L. 2011. Global
structure optimization of quadrilateral meshes. Comput. Graph.
Forum 30, 2, 375–384.
B OMMES , D., L ÉVY, B., P IETRONI , N., P UPPO , E., S ILVA , C.,
TARINI , M., AND Z ORIN , D. 2012. State of the art in quad
meshing. In Eurographics STARS.
B OTSCH , M., KOBBELT, L., PAULY, M., A LLIEZ , P., AND L ÉVY,
B. 2010. Polygon Mesh Processing. AK Peters.
B OUAZIZ , S., D EUSS , M., S CHWARTZBURG , Y., W EISE , T.,
AND PAULY, M. 2012. Shape-up: Shaping discrete geometry
with projections. Comp. Graph. Forum 31, 5 (Aug.), 1657–1667.
C AMPEN , M., B OMMES , D., AND KOBBELT, L. 2012. Dual
loops meshing: Quality quad layouts on manifolds. ACM Trans.
Graph. 31, 4.
C ATMULL , E., AND C LARK , J. 1998. Seminal graphics. ACM,
New York, NY, USA, ch. Recursively generated B-spline surfaces on arbitrary topological meshes, 183–188.
DANIELS , J., S ILVA , C. T., S HEPHERD , J., AND C OHEN , E.
2008. Quadrilateral mesh simplification. In SIGGRAPH Asia
’08: ACM SIGGRAPH Asia 2008 papers, ACM, New York, NY,
USA, 1–9.
DANIELS , II, J., S ILVA , C. T., AND C OHEN , E. 2009. Localized quadrilateral coarsening. In SGP ’09: Proceedings of the
Symposium on Geometry Processing, Eurographics Association,
Aire-la-Ville, Switzerland, Switzerland, 1437–1444.
D ONG , S., B REMER , P.-T., G ARLAND , M., PASCUCCI , V., AND
H ART, J. C. 2006. Spectral surface quadrangulation. In SIGGRAPH ’06: ACM SIGGRAPH 2006 Papers, 1057–1066.
E CKSTEIN , I., S URAZHSKY, V., AND G OTSMAN , C. 2001. Texture mapping with hard constraints. Comput. Graph. Forum 20,
3.
F LOATER , M. S., AND H ORMANN , K. 2005. Surface parameterization: a tutorial and survey. In Advances in Multiresolution for Geometric Modelling, N. A. Dodgson, M. S. Floater,
and M. A. Sabin, Eds., Mathematics and Visualization. Springer,
Berlin, Heidelberg, 157–186.
N IESER , M., R EITEBUCH , U., AND P OLTHIER , K. 2011.
Cubecover- parameterization of 3d volumes. Comput. Graph.
Forum 30, 5, 1397–1406.
N OVOTNI , M., AND K LEIN , R. 2002. Computing geodesic distances on triangular meshes. In The 10-th International Conference in Central Europe on Computer Graphics, Visualization
and Computer Vision’2002 (WSCG’2002).
OWEN , S. J., S TATEN , M. L., C ANANN , S. A., AND S AIGAL ,
S. 1999. Q-morph: an indirect approach to advancing front
quad meshing. International Journal for Numerical Methods in
Engineering 44, 9, 1317–1340.
PARDALOS , P., AND R ESENDE , M. 2002. Handbook of applied
optimization. Oxford University Press, Incorporated.
G U , Z., ROTHBERG , E., AND B IXBY, R., 2011. Gurobi optimizer
4.5: http://www.gurobi.com.
P IETRONI , N., TARINI , M., AND C IGNONI , P. 2010. Almost isometric mesh parameterization through abstract domains.
IEEE Transaction on Visualization and Computer Graphics 16,
4 (July/August), 621–635.
H ORMANN , K., L ÉVY, B., AND S HEFFER , A. 2007. Mesh parameterization: theory and practice. In SIGGRAPH ’07: ACM
SIGGRAPH 2007 courses, 1.
P IETRONI , N., TARINI , M., S ORKINE , O., AND Z ORIN , D. 2011.
Global parametrization of range image sets. ACM Transactions
on Graphics, Proceedings of SIGGRAPH Asia 2011 30, 6.
H UANG , J., Z HANG , M., M A , J., L IU , X., KOBBELT, L., AND
BAO , H. 2008. Spectral quadrangulation with orientation and
alignment control. ACM Trans. Graph. 27, 5, 1–9.
R AY, N., L I , W. C., L ÉVY, B., S HEFFER , A., AND A LLIEZ , P.
2006. Periodic global parameterization. ACM Trans. Graph. 25,
4, 1460–1485.
IBM, 2012. Ilog cplex optimizer 12: http://www.ibm.com.
R AY, N., VALLET, B., L I , W. C., AND L ÉVY, B. 2008. Nsymmetry direction field design. ACM Trans. Graph. 27, 2, 1–13.
K ÄLBERER , F., N IESER , M., AND P OLTHIER , K. 2007. Quadcover - surface parameterization using branched coverings. Computer Graphics Forum 26, 3 (Sept.), 375–384.
K HODAKOVSKY, A., L ITKE , N., AND S CHR ÖDER , P. 2003. Globally smooth parameterizations with low distortion. In ACM SIGGRAPH 2003 Papers, ACM, New York, NY, USA, SIGGRAPH
’03, 350–357.
K IMMEL , R., AND S ETHIAN , J. A. 1998. Computing geodesic
paths on manifolds. In Proc. Natl. Acad. Sci. USA, 8431–8435.
KOVACS , D., M YLES , A., AND Z ORIN , D. 2010. Anisotropic
quadrangulation. In Proceedings of the 14th ACM Symposium
on Solid and Physical Modeling, ACM, New York, NY, USA,
SPM ’10, 137–146.
L I , E., L ÉVY, B., Z HANG , X., C HE , W., D ONG , W., AND PAUL ,
J.-C. 2011. Meshless quadrangulation by global parametrization. Computer and Graphics.
L I , Y., L IU , Y., X U , W., WANG , W., AND G UO , B. 2012. All-hex
meshing using singularity-restricted field. ACM Trans. Graph.
31, 6 (Nov.), 177:1–177:11.
L IPMAN , Y. 2012. Bounded distortion mapping spaces for triangular meshes. ACM Trans. Graph. 31, 4 (July), 108:1–108:13.
M ICCIANCIO , D. 2006. The hardness of the closest vector problem
with preprocessing. IEEE Trans. Inf. Theor. 47, 3 (Sept.), 1212–
1215.
M ÖBIUS , J., AND KOBBELT, L. 2012. Openflipper: An open
source geometry processing and rendering framework. In Curves
and Surfaces, vol. 6920 of Lecture Notes in Computer Science.
Springer Berlin / Heidelberg, 488–500.
M URDOCH , P., B ENZLEY, S., B LACKER , T., AND M ITCHELL , S.
1997. The spatial twist continuum: A connectivity based method
for representing all-hexahedral finite element meshes. Finite Element in Analysis and Design 28, 2 (December), 137–149.
S HEFFER , A., P RAUN , E., AND ROSE , K. 2006. Mesh parameterization methods and their applications. Found. Trends. Comput.
Graph. Vis. 2 (January), 105–171.
S PRINGBORN , B., S CHR ÖDER , P., AND P INKALL , U. 2008. Conformal equivalence of triangle meshes. In SIGGRAPH ’08: ACM
SIGGRAPH 2008 papers, 1–11.
TARINI , M., P IETRONI , N., C IGNONI , P., PANOZZO , D., AND
P UPPO , E. 2010. Practical quad mesh simplification. Computer
Graphics Forum (Special Issue of Eurographics 2010 Conference) 29, 2, 407–418.
TARINI , M., P UPPO , E., PANOZZO , D., P IETRONI , N., AND
C IGNONI , P. 2011. Simple quad domains for field aligned mesh
parametrization. ACM Transactions on Graphics, Proceedings
of SIGGRAPH Asia 2011 30, 6.
T ONG , Y., A LLIEZ , P., C OHEN -S TEINER , D., AND D ESBRUN ,
M. 2006. Designing quadrangulations with discrete harmonic
forms. In Proc. of SGP, EG Association, Aire-la-Ville, Switzerland, SGP ’06, 201–210.
W ÄCHTER , A., AND B IEGLER , L. T. 2006. On the implementation of an interior-point filter line-search algorithm for largescale nonlinear programming. Math. Program. 106 (May), 25–
57.
W EBER , O., M YLES , A., AND Z ORIN , D. 2012. Computing extremal quasiconformal maps. Comp. Graph. Forum 31, 5 (Aug.),
1679–1689.
Y U , H., L EE , T.-Y., Y EH , I.-C., YANG , X., L I , W., AND
Z HANG , J. J. 2012. An rbf-based reparameterization method
for constrained texture mapping. IEEE Transactions on Visualization and Computer Graphics 18, 7 (July), 1115–1124.
Z HANG , M., H UANG , J., L IU , X., AND BAO , H. 2010. A wavebased anisotropic quadrangulation method. ACM Trans. Graph.
29 (July), 118:1–118:8.
Download