Reliable Feature-Line Driven Quad-Remeshing
Reliable Feature-Line Driven Quad-Remeshing
Fig. 1. A mosaic of the processed Thingi10K dataset. The entire dataset is available at https://www.quadmesh.cloud
We present a new algorithm for the semi-regular quadrangulation of an additional irregular-vertices inside patches, but the regularity of the final-
input surface, driven by its line features, such as sharp creases. We define a mesh is safeguarded by optimizing for both their number and for their
perfectly feature-aligned cross-field and a coarse layout of polygonal-shaped reciprocal alignment. In total, our method guarantees the reproduction of
patches where we strictly ensure that all the feature-lines are represented as feature-lines by construction, while still producing good quality, isometric,
patch boundaries. To be able to consistently do so, we allow non-quadrilateral pure-quad, conforming meshes, making it an ideal candidate for CAD models.
patches and T-junctions in the layout; the key is the ability to constrain Moreover, the method is fully automatic, requiring no user intervention, and
the layout so that it still admits a globally consistent, T-junction-free, and remarkably reliable, requiring little assumptions on the input mesh, as we
pure-quad internal tessellation of its patches. This requires the insertion of demonstrate by batch processing the entire Thingi10K repository, with less
than 0.5% of the attempted cases failing to produce a usable mesh.
Authors’ addresses: Nico Pietroni, University of Technology Sydney, Sydney, Australia, CCS Concepts: • Computing methodologies → Computer graphics;
nico.pietroni@uts.edu.au; Stefano Nuvoli, Dept. of Mathematics and Computer Science,
University of Cagliari, Cagliari, Italy, s.nuvoli@studenti.unica.it; Thomas Alderighi,
Shape modeling; Mesh geometry models.
University of Pisa , ISTI-CNR, Pisa, Italy, thomas.alderighi@isti.cnr.it; Paolo Cignoni, Additional Key Words and Phrases: modelling, geometry processing, quad-
ISTI-CNR, Pisa, Italy, paolo.cignoni@isti.cnr.it; Marco Tarini, University of Milan, Milan,
Italy, marco.tarini@unimi.it. meshing
ACM Reference Format:
Permission to make digital or hard copies of all or part of this work for personal or Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco
classroom use is granted without fee provided that copies are not made or distributed Tarini. 2021. Reliable Feature-Line Driven Quad-Remeshing. ACM Trans.
for profit or commercial advantage and that copies bear this notice and the full citation
on the first page. Copyrights for components of this work owned by others than ACM
Graph. 40, 4, Article 155 (August 2021), 17 pages. https://doi.org/10.1145/
must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, 3450626.3459941
to post on servers or to redistribute to lists, requires prior specific permission and/or a
fee. Request permissions from permissions@acm.org.
© 2021 Association for Computing Machinery.
0730-0301/2021/8-ART155 $15.00
https://doi.org/10.1145/3450626.3459941
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:2 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:3
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:4 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
4
3 3
3 3
4
3 3
3 3
3 4 3 3
4 3 3 3
3 3 3
4 3
3 3 3
1 3 2
3 4 3
3 4 3 3
3
4 4 3
2 3
3
3 3 1
4
4 4 1
Fig. 3. The phases of our remeshing algorithm. Refer to Section 3.2 for an overview, and the referred Sections for the specific phases.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:5
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:6 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
Fig. 5. Faces that are adjacent to multiple features edges are split, adding Straight Right-Turn
new edges (red lines), and each face is assigned to the field direction aligned
to its only adjacent feature edge (green arrows). A cross field is then propa-
gated over other triangles (gray crosses).
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:7
The valence of a (disk-homeomorphic) patch, used by the second on a non-rectangular patch, produces a single irregular vertex with
condition, is defined as the number of turns in its boundary loop, a valency corresponding to that of the patch, located somewhere in
and can be understood as its number of topological sides (a side of the interior of the patch, and, when applied to a rectangular patch,
a patch is the part of the loop from one turn to the next). The upper produces no irregular vertex.
limit to the value 6 reflects a limitation of [Takayama et al. 2014]. Differently from the validity conditions, which are necessary to
The third condition disallows left-turns, as they would result guarantee a valid solution, adherence to the quality conditions is
in quad angles larger than 180°, and U-turns, as the resulting an- only desirable because it favors the final meshing quality.
gle would be close to 360°(in Figures 6,7,14, disallowed boundary
vertices are colored in orange, and allowed ones in green). 5.2 Layout Construction Procedure
This set of conditions, while weak and easy to enforce, suffice The initial layout generated by the sole feature-lines typically in-
to guarantee the applicability of our fallback “general” strategy. fringes the conditions stated above. We complete this layout by
Yet, there is no guarantee on the quality of the resulting meshing; adding new paths, to enforce the fulfillment of the validity condi-
experiments confirm that this can result in the introduction of an tions on all patches, and maximizing the number of patches that
excessive constellation of new internal irregular vertices (disrupting also meet the quality conditions.
field alignment), and impact negatively the isometry and quad- Our heuristic consists of a succession of “rounds”, in each of which
shapes of the final mesh. we insert a certain number of new paths, targeting one specific
Conversely, our “simple” quadrangulation strategy, when appli- problem. The sequence of rounds is described below in Section 5.4.
cable, results in maximal regularity and tends to create good quality All rounds work in the same fashion: we first trace a large number
meshing, well aligned to the smooth cross-field. Its applicability, as of candidate paths on the mesh (Section 5.3), we sort them to get
studied in [Tarini 2021], depends on the fulfillment of simple equa- a good spatial distribution and, in that order, we decide whether
tions or inequalities defined, in closed-form, on the integer number or not to use them for the patch layout. Any candidate path that
of edges 𝑒𝑖 on each side 𝑖 of a patch. We report these conditions in does not intersect tangentially previously inserted paths is chosen
full, for the cases that are relevant to us: if either: (1) it contributes directly toward the fulfillment of any one
in a 3-sided patch: ∀𝑖, 𝑒𝑖 ≤ 𝑒𝑖+1 + 𝑒𝑖+2 objective (for example by separating two singularities, or removing
in a 4-sided patch: ∀𝑖, 𝑒𝑖 = 𝑒𝑖+2 a left-turn) or (2) it splits any patch that still does not meet all the
(1) objectives. The latter helps because smaller patches make easier for
in a 5-sided patch: ∀𝑖, 𝑒𝑖 + 𝑒𝑖+1 + 𝑒𝑖+4 ≥ 𝑒𝑖+2 + 𝑒𝑖+3
the objectives to be fulfilled.
in a 6-sided patch: ∀𝑖, 𝑒𝑖 ≤ 𝑒𝑖+2 + 𝑒𝑖+4 After all rounds, we check if any patches still fail to meet the
(the indices are intended to be modulo the valency of the patch). validity conditions. In this case, we repeat a sequence of rounds
The integer edge numbers 𝑒𝑖 will only be determined in a subse- concentrated only on that patch, this time with only the candidate-
quent phase. However, because we are targeting a constant edge paths inside it and disallowing them to exit it (any new candidate-
size, we can expect these numbers to be roughly proportional to path is stopped as soon as it reaches the patch boundary, creating
the (geodesic) lengths of the respective patch side. Therefore, we a T-junction). We recursively repeat this step until all patches are
can predict that the conditions above will be more likely to be met solved.
whenever the same equation or inequality approximately holds on This strategy allows the construction of shorter candidate paths,
the scalar lengths of the patch sides. with fewer chances to be prevented by invalid intersections with
The conditions in Equation 1 can be understood as a generaliza- existing paths; these new paths can, in turn, serve as a stopping
tion to non-rectangular patches of the well-known condition, sought point in subsequent recursive steps, and so on until all constraints
in many coarse-layout based remeshing approaches, to attain oppo- are met (see Figure 8).
site sizes of rectangular patches of a matching length ([Campen et al.
2012; Pietroni et al. 2015; Schertler et al. 2018; Tarini et al. 2011],
among others).
With this set of motivations in mind, we want layout patches to
also fulfill the two following “quality conditions”:
Geometric Condition The lengths of the patches sides must b
approximately fulfill the inequality or equality above (1). We 2
add a tolerance equal to the length of the shortest side.
Valence Match Rectangular (4-sided) patches should contain 1
a
no field-singular vertex, and patches with a single internal
field-singular vertex should only contain a valency matching
that of the singularity; no patches should contain more than
one field singularity. Fig. 8. An example of the recursive strategy fixing a constraint: the path
The latter condition is useful as it favors the alignment of final 1 creates a T-junction, but, in the next recursive step, it allows path 2 to
quad-mesh edges with the smooth cross-field, resulting in a higher- terminate early (with another T-junction), thus allowing field-singularities
quality meshing. This is because the simple strategy, when applied a and b to end up in two different patches, meeting the valency constraint.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:8 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
Fig. 11. Nodes of graph 𝐺 from both sides of a split edges are connected. In
the image, positions of nodes has been offset to illustrate the connectivity
Fig. 9. Examples of paths inserted in succession (in the Looped paths round). of the graph.
Candidate Sorting. The order in which potential paths are consid- of the surrounding faces. While averaging cross-field values, we
ered for insertion drastically affects the set of paths that are picked. take into account the 90° rotational symmetry of the field.
We want to avoid conglomerations of close paths, so (similarly to Similarly to [Campen et al. 2012] (which follows 𝑀4 mesh stratifi-
LoopyCuts [Livesu et al. 2020]) we always analyze the potential cation introduced by [Kälberer et al. 2007]), we populate 𝐺 with four
path that presents the largest distance from the closest edge in any nodes for each mesh-vertex, one for each tangent direction of the
picked path (including initial ones). Figure 9 exemplifies the effect field at that vertex, except for field-singularities. Singular vertices,
of this choice. which do not have an associated field value, are not represented in
𝐺 (so, no path will be traced across them).
Clean-up of redundant paths. Once the rounds of path insertion Because each node in 𝐺 represents both a vertex and a field
have completed we have a layout that meets the validity conditions direction, by selecting the starting node and the (potential) ending
on all patches, and the quality conditions on most patches (if not nodes of the path search, we are prescribing not only the starting
necessarily all). During its construction, however, there is no easy and ending positions, but also the outgoing and incoming cross-field
way to predict whether a path being inserted will end up being directions of the candidate path being traced.
useful to the fulfillment of any constraint because multiple paths We connect two nodes in 𝐺 whenever (1) they reside at two
can contribute to meet the same constraints. Therefore, at the end of vertices 𝑣𝑖 and 𝑣 𝑗 connected by a mesh-edge, (2) they correspond to a
the insertion process, we iterate over all paths again and dissolve the matching direction of the cross-field, and (3) the angle between (𝑣 𝑗 −
ones whenever we determine that its removal does not infringe any 𝑣𝑖 ) and their (averaged) field direction 𝑓 is smaller than 45◦ . Each
condition that is already met. Once again, the ordering of testing connection is weighted by the modulus of its drift value, defined, as
is relevant; empirically, we found that processing paths in reverse in [Tarini et al. 2011], as the quantity
of their insertion works best. Figure 10 shows the result of this
𝑑𝑖 𝑗 = (𝑣𝑖 − 𝑣 𝑗 ) · 𝑓 ⊥
processing step.
Next, we illustrate how a single candidate path is constructed. where 𝑓 ⊥ is the tangent direction orthogonal to 𝑓 , found as the cross
product with the surface normal (𝑓 ⊥ = 𝑓 × 𝑛 𝑣 ); this value measures
5.3 Tracing a Candidate Path how much a path traversing that connection deviates from the field.
We cast the problem of tracing a new candidate path as a shortest- We also add a zero-weighted connection between any two nodes
path search between a given starting point and a set of potential located at straight vertices that are duplicates of an original mesh
ending points. This is solved by executing the Dijkstra algorithm vertex, having a matching tangent direction, but not on either of
over an auxiliary directed weighted graph 𝐺 which is constructed the two opposite field directions aligned to the path (see Figure 11).
from the mesh for this purposes. This allows a candidate path to be traced across an existing path,
but never tangentially to it.
Auxiliary graph construction. First, we assign a cross-field value
at each vertex, except for field-singularities, by averaging the values
Fig. 12. Paths are drawn over mesh edges, so in general they will be jagged.
Right: intersection occur at vertices, only if the followed direction fields
Fig. 10. The effect of Clean-up of redundant paths. (black arrows) are orthogonal.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:9
Fig. 13. Different rounds of the tracing process: initial sharp-features (a); convexity-enforcement (b); looped-paths (c); border-to-border paths round (d).
Due to its connectivity, graph 𝐺 automatically allows only for and one turning right (see Figure 14,top); for each U-turn vertex,
candidate paths that go topologically straight over a cross-field direc- we add three nodes in 𝑆, going straight or turning either direction
tion, meaning that traces path always follow a consistent direction (see Figure 14,bottom). As ending nodes 𝐸, we choose the ones re-
of the cross-field. The weighting favors the alignment of the path siding on the vertices of 𝑆 with opposite direction: this attempts
to the cross-fields. the creation of paths that fix two different turns, one at each end.
The tracing of a candidate path can fail, when there are not This round is repeated a second time, if there are still non-convex
enough edges in the mesh. patches, using, as 𝐸 all the straight nodes; paths traced in this way
will end on a T-junctions (or on the mesh boundary). Figure 13.b
Jagged paths. Because new candidate paths are drawn over mesh-
shows the result of this round.
edges, they will in general be jagged (see Figure 12). We use the
modulus of the drift value as weigh because Dijkstra algorithm Looped-paths round. In this phase, we populate the pool of poten-
requires weights to be non-negative. This has the drawback of pe- tial paths with a set of loop paths. We select a uniformly distributed
nalizing zigzagging paths during the search, because their drifts in subset of internal vertices (using the approach of [Corsini et al.
opposite directions are summed up instead of canceling. To mitigate 2012]), and we attempt to trace two potential looping paths. A po-
this problem, we augment the connectivity of the 𝐺 by inserting a tential looping path is traced by using the same node as the only
virtual connection between every two nodes originally separated by element of 𝑆 and 𝐸. Figure 13.c shows the result of this step.
two connections, setting its cost to be the sum of the two (signed)
drift values. However, whenever a virtual connection is traversed, Border-to-border paths round. The last phase of our tracing pro-
we also visit the intermediate node, in order to be able to detect cess consists of joining straight boundary-nodes with other straight
(tangential) crossings with any other candidate path. boundary-nodes. As starting nodes 𝑆, we select a sub-sampling of
all straight boundary nodes. This creates small paths that can be
Tangential crossing detection. Given two candidate paths, it is useful to solve residual problems. Figure 13.d and 9 shows the result
trivial to check whether or not they intersect tangentially, by testing of this round.
if they pass through two nodes that reside at the same mesh vertex,
associated to two cross-field directions that are not orthogonal.
Arch-length estimation. To evaluate the fulfillment of the Geomet-
ric Condition (Section 5.1), we need to measure the lengths of the
sides of a patch. Summing all mesh edges forming the path would
overestimate its length of jagged paths. Instead, we only sum the
distance spanned by each edge along the cross-field associated to
that edge (which is the dot-product of the edge-vector with the
field-direction).
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:10 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:11
Fig. 17. The irregular vertices added internally to the patches will in general be misaligned (a); (b-e) this is countered by adding a Singularity alignment term
for each pair of matching sides of non-rectangular patches, pointed by arrows (see text).
Singularity alignment term. Assuming that the “simple” strategy 9 for singularity-alignment. However, the overall system allows for
is applied inside a non-rectangular patch, exactly one stream of any variations of these parameters.
edges stemming from the irregular point (often called a separatrix, When the conditions reflected by regularity and singularity-
e.g. [Tarini et al. 2011]) will exit from each side of the patch (red lines alignment terms are not met perfectly, we incur in a small dete-
in Figure 16), splitting the side into two “sub-sides”. The number rioration of the final quality (for example, extra singular vertices are
of edges in the two is given by a linear equation of the number included, or existing singularity get misaligned); these penalties do
of edges on the sides of the patch [Tarini 2021]. For completeness, not necessarily aggravate for larger infringements of the conditions,
in Figure 16 we list the linear equations for all the cases that are which, conversely, are penalized proportionally more by our objec-
relevant in our scenario. tive functions. To counter this, we adopt a simple strategy where
We can exploit this information to promote the reciprocal align- the ILP is solved twice in succession, the second time dropping the
ment of the internal singularities in two adjacent patches to be re- singularity alignment terms that were not met in the first run.
ciprocally aligned. We proceed as follows. First, we identify pairs of
Implementation details. In some examples, the extreme complex-
non-rectangular patches sides that are either adjacent (Figure 17.b),
ity of the shape generates a large number of variables, dispropor-
or separated by a sequence of rectangular patches (Figure 17.c). Note
tionately affecting the performance of this phase. As a simple opti-
that pair of matching sides can also be found between different sides
mization, we group the patches into multiple subsets of 𝑚 adjacent
of the same patch (Figure 17.d). For each such pair, we impose the
patches (we used 𝑚 = 300) and separately solve each subsystem
equality of the two matching sub-sides, in a soft sense (that is, we
fixing the number of edges in the arches along its boundaries.
impose an objective function term, consisting of the absolute differ-
ence between the sub-sides that must be matching). For simplicity
6.2 Per-patch tessellation
of implementation, our prototype neglects to add this term for pairs
of charts separated by T-junctions (Figure 17.e). As the last phase, each patch is individually quadrangulated, using
The effectiveness of this term is exemplified in Figure 18. either the simple strategy [Tarini 2021] whenever applicable (fulfille-
ment of Equation 1), or the general strategy otherwise [Takayama
et al. 2014]. The constraints we imposed in precedent phases ensure
that, at worst, the latter case can be used, and a valid final mesh is
generated. As a final phase, we also apply a step of tangent space
smoothing [Pietroni et al. 2015] to improve the shape of the quads
while constraining vertices on the feature-lines.
7 RESULTS
We initially tested our method on a dataset composed of 308 triangle
meshes, which includes all the models used in [Myles et al. 2014]
and [Fang et al. 2018]. On a consumer-level laptop (MacBook Pro,
2.9 GHz Intel Core i7, 16GB RAM), the processing time for the
Fig. 18. The effect of the singularity alignment constraints on the final result entire dataset was about 5 hours (a minute per mesh), distributed
(left not aligned, right aligned). as follows: 2h and a half for the initial meshing optimization, 50m
for the layout construction, and 2h for the final quadrangulation.
We defined features by thresholding crease edges dihedral angles at
Balancing objectives. The four objective function terms, for isom- 45° followed by a erode-dilate procedure to remove small and noise
etry, regularity (for rectangular and non-rectangular patches), and edges (if more than two sharp features meet at a single vertex, they
singularity-alignment, are weighted by parameters that can be used are not eroded). As the target edge-size, we used twice the average
to strike a well-balanced trade-off between these potentially con- edge-size of the input model after mesh optimization. Our prototype
flicting objectives. For the examples shown in Figures 24, 27 and 28, is single-threaded and not optimized; it has been implemented using
we used 1 for isometry, 99 and 91 for the two regularity terms, and the VCG Library [CNR 2013], CG3Lib [Muntoni and Nuvoli 2021],
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:12 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:13
(a) (b)
Fig. 22. (a) Miscategorized feature-edges might influence the final quadran-
gulation; (b) A squeezed patch considered almost perfectly quadrangulable
according to the side-length based criteria.
Fig. 23. Resilience: even when the input presents local inconsistencies such
as self-intersections, topological noise, double surfaces, and CSG leftovers,
our approach succeeds to build a quad tessellation, that is correct in areas
where the input is correct.
8.1 Limitations
Lack of strict guarantees. We do not possess a demonstration
Fig. 21. Comparison of our method (right) with [Fang et al. 2018] (left).
that the minimal required conditions (during layout construction
of Section 5, and edge assignment, Section 6.1) can always be met
8 DISCUSSION through our layout construction procedure, which in part relies on
heuristics. However, our system never failed to produce a result in
Our novel remeshing approach is designed around the requirement
almost ten thousand models over real datasets, except in the 0.5%
to preserve feature-lines, and produces good quality, isometric, pure-
of the cases (which mostly corresponds to non-orientable mesh, see
quad, and conforming meshes. Its reliability is confirmed by exten-
Section 7).
sive experiments where a large number of models are automatically
quadrangulated. Problems affecting quality. The strict preservation of feature-lines
One innovative element of our method is that irregular vertices makes the system susceptible to miscategorized feature-edges, or
are introduced by two separated approaches: at corners of patches bad-quality (for example, noisy) ones (see Figure 22.a). With CAD
(during layout construction), and internally to patches (during patch models, automatic labeling based on dihedral angles works well,
quadrangulation). We are encouraged to consider this as a strongly but with other categories of models, such as scanned meshes, this
beneficial addition in the panorama of automatic quadrangulators, requires more care and it is not trivial (see [Matveev et al. 2020]).
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:14 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
Fig. 24. Examples of quadrangulation of mechanical meshes with simple shapes; the connectivity closely resemble manully modelled meshing.
Fig. 25. Because it strives to align close irregular vertices inside patches, our method tends to produce meshes in which the graph of separatrices emanated
from irregular vertices (shown in blue) is simpler, compared to competing methods, with fewer edges traversed by separatrices.
A potential weakness of our method is that choosing the internal Alignment of irregular vertices . Our method aligns close irregular
quadrangulation of patches based only on the boundary of the patch vertices to each other, when this is compatible with the other ob-
can in theory result in loss of edge isometry. Note that this problem jectives. As a result, the graph of separatrices constructed from our
cannot arise when the interior of the patch presents significant meshes tends to be simpler than the one produced by competing
geometric features, that would induce additional field singularities, semi-regular quad-remeshing methods (Figure 25), but not, in many
and thus trigger a split of the patch. Our experiments show that cases, to the point of resulting in a coarse-quad layout. This calls
this phenomenon is rare, but also that it results in substantially for more aggressive strategies to enforce alignment; in alternative,
shorter edges when it occurs (see Figure 22.b). Settling this question separatrix-graph simplification methods such as [Bommes et al.
requires more investigation. 2011; Tarini et al. 2011] could be employed as a post-processing
step.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:15
Instant
Meshes
32 52 22 86 98
Quadriflow
8 88 34
16 24
Proposed
Scaled Jacobian
Fig. 26. A comparison between Instant Meshing [Jakob et al. 2015] (top), Quadriflow [Huang et al. 2018] (middle) and the proposed method (bottom). The
faces are color-coded by shape quality, measured as their Scaled Jacobian [Stimpson et al. 2007]. In each model, we report the number of singularities in the
light blue circle, and the histogram of quality, in logarithmic scale – negative values, corresponding to concave faces, are represented in the red bin).
Fig. 27. Examples of quadrangulation of mechanical models with complex, challenging shapes.
Symmetries. A visual (qualitative) inspection of our results reveals problem, however, is that symmetries are not always respected,
in many cases a quality reminiscent of what is typically associated including the recurring case where similar features in an object (e.g.
with manual modeling by digital artists. One notable remaining in a decorative pattern) are quadrangulated slightly differently.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
155:16 • Nico Pietroni, Stefano Nuvoli, Thomas Alderighi, Paolo Cignoni, and Marco Tarini
Fig. 28. Examples of quadrangulation of organic-looking model. Even if our method is designed around the need of preserving feature-lines, it also works well
on organic smooth mesh with no feature-lines.
81877
61394
423069 67792
230923
44503
69975 128001
Fig. 29. Examples of hi-res quadrangulated model from the Thingi10k repository.
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:17
ACKNOWLEDGMENTS Stefano Nuvoli, Alex Hernandez, Claudio Esperança, Riccardo Scateni, Paolo Cignoni,
and Nico Pietroni. 2019. QuadMixer: layout preserving blending of quadrilateral
The authors thank Luigi Malomo for helping with triangular re- meshes. ACM Trans. Graph 38, 6 (2019), 180:1–180:13.
meshing. The models are courtesy of the AIM@SHAPE Shape Repos- Daniele Panozzo, Yaron Lipman, Enrico Puppo, and Denis Zorin. 2012. Fields on
symmetric surfaces. ACM Trans. Graph 31, 4 (2012), 111:1–111:12.
itory, Stanford 3D Scanning Repository and Thingi10K Repository. Daniele Panozzo, Enrico Puppo, Marco Tarini, Nico Pietroni, and Paolo Cignoni. 2011.
Automatic Construction of Quad-Based Subdivision Surfaces using Fitmaps. IEEE
Transaction on Visualization and Computer Graphics 17, 10 (october 2011), 1510–1520.
REFERENCES https://doi.org/10.1109/TVCG.2011.28
Nico Pietroni, Enrico Puppo, Giorgio Marcias, Roberto Scopigno, and Paolo Cignoni.
David Bommes, Marcel Campen, Hans-Christian Ebke, Pierre Alliez, and Leif Kobbelt. 2016. Tracing Field-Coherent Quad Layouts. Comput. Graph. Forum 35, 7 (2016),
2013a. Integer-grid maps for reliable quad meshing. ACM Trans. Graph 32, 4 (2013), 485–496.
98:1–98:12. Nico Pietroni, Davide Tonelli, Enrico Puppo, Maurizio Froli, Roberto Scopigno, and
David Bommes, Timm Lempfer, and Leif Kobbelt. 2011. Global Structure Optimization Paolo Cignoni. 2015. Statics Aware Grid Shells. Comput. Graph. Forum 34, 2 (2015),
of Quadrilateral Meshes. Comput. Graph. Forum 30, 2 (2011), 375–384. 627–641.
David Bommes, Bruno Lévy, Nico Pietroni, Enrico Puppo, Cláudio T. Silva, Marco Tarini, Nicolas Ray, Wan Chiu Li, Bruno Lévy, Alla Sheffer, and Pierre Alliez. 2006. Periodic
and Denis Zorin. 2013b. Quad-Mesh Generation and Processing: A Survey. Comput. Global Parameterization. ACM Trans. Graph. 25, 4 (Oct. 2006), 1460–1485. https:
Graph. Forum 32, 6 (2013), 51–76. //doi.org/10.1145/1183287.1183297
David Bommes, Henrik Zimmer, and Leif Kobbelt. 2009. Mixed-integer quadrangulation. Faniry H. Razafindrazaka and Konrad Polthier. 2017. Optimal base complexes for
ACM Trans. Graph. 28, 3 (2009), 77. quadrilateral meshes. Computer Aided Geometric Design 52-53 (2017), 63 – 74.
Marcel Campen. 2017. Partitioning Surfaces Into Quadrilateral Patches: A Survey. https://doi.org/10.1016/j.cagd.2017.02.012 Geometric Modeling and Processing 2017.
Comput. Graph. Forum 36, 8 (2017), 567–588. Faniry H. Razafindrazaka, Ulrich Reitebuch, and Konrad Polthier. 2015. Perfect Matching
Marcel Campen, David Bommes, and Leif Kobbelt. 2012. Dual loops meshing: quality Quad Layouts for Manifold Meshes. Comput. Graph. Forum 34, 5 (2015), 219–228.
quad layouts on manifolds. ACM Trans. Graph. 31, 4 (2012), 110:1–110:11. Nico Schertler, Daniele Panozzo, Stefan Gumhold, and Marco Tarini. 2018. Generalized
Marcel Campen, David Bommes, and Leif Kobbelt. 2015. Quantized global parametriza- Motorcycle Graphs for Imperfect Quad-Dominant Meshes. ACM Trans. Graph. 37, 4,
tion. ACM Trans. Graph 34, 6 (2015), 192:1–192:12. Article 155 (July 2018), 16 pages. https://doi.org/10.1145/3197517.3201389
Marcel Campen, Martin Heistermann, and Leif Kobbelt. 2013. Practical Anisotropic CJ Stimpson, CD Ernst, P Knupp, PP Pébay, and D Thompson. 2007. The Verdict library
Geodesy. Comput. Graph. Forum 32, 5 (2013), 63–71. reference manual.
Paolo Cignoni, Guido Ranzuglia, Marco Callieri, Massimiliano Corsini, Matteo Dellepi- Kenshi Takayama, Daniele Panozzo, and Olga Sorkine-Hornung. 2014. Pattern-Based
ane, Marco Di Benedetto, Fabio Ganovelli, Giorgio Marcias, Gianpaolo Palma, Nico Quadrangulation for N -Sided Patches. Comput. Graph. Forum 33, 5 (2014), 177–184.
Pietroni, Federico Ponchio, Luigi Malomo, Marco Tarini, and Roberto Scopigno. Marco Tarini. 2021. Closed-form Quadrangulation of N-Sided Patches.
2013. MeshLab: an Open-Source Mesh Processing Tool. http://www.meshlab.net. arXiv:2101.11569 [cs.GR]
CNR. 2013. The Visualization and Computer Graphics Library. Marco Tarini, Nico Pietroni, Paolo Cignoni, Daniele Panozzo, and Enrico Puppo. 2010.
http://vcg.isti.cnr.it/vcglib/. Practical quad mesh simplification. Comput. Graph. Forum 29, 2 (2010), 407–418.
Massimiliano Corsini, Paolo Cignoni, and Roberto Scopigno. 2012. Efficient and Flexible Marco Tarini, Enrico Puppo, Daniele Panozzo, Nico Pietroni, and Paolo Cignoni. 2011.
Sampling with Blue Noise Properties of Triangular Meshes. IEEE Trans. Vis. Comput. Simple quad domains for field aligned mesh parametrization. ACM Trans. Graph.
Graph 18, 6 (2012), 914–924. http://doi.ieeecomputersociety.org/10.1109/TVCG. 30, 6 (2011), 142:1–142:12.
2012.34 Francesco Usai, Marco Livesu, Enrico Puppo, Marco Tarini, and Riccardo Scateni. 2016.
Olga Diamanti, Amir Vaxman, Daniele Panozzo, and Olga Sorkine-Hornung. 2014. Extraction of the Quad Layout of a Triangle Mesh Guided by Its Curve Skeleton. ACM
Designing N -PolyVector Fields with Complex Polynomials. Comput. Graph. Forum Trans. Graph. 35, 1, Article 6 (Dec. 2016), 13 pages. https://doi.org/10.1145/2809785
33, 5 (2014), 1–11. Amir Vaxman, Marcel Campen, Olga Diamanti, David Bommes, Klaus Hildebrandt,
Olga Diamanti, Amir Vaxman, Daniele Panozzo, and Olga Sorkine-Hornung. 2015. Mirela Ben-Chen Technion, and Daniele Panozzo. 2017. Directional Field Synthesis,
Integrable PolyVector fields. ACM Trans. Graph 34, 4 (2015), 38:1–38:12. Design, and Processing. In ACM SIGGRAPH 2017 Courses (Los Angeles, California)
Xianzhong Fang, Hujun Bao, Yiying Tong, Mathieu Desbrun, and Jin Huang. 2018. Quad- (SIGGRAPH ’17). Association for Computing Machinery, New York, NY, USA, Article
rangulation through Morse-Parameterization Hybridization. ACM Trans. Graph. 37, 12, 30 pages. https://doi.org/10.1145/3084873.3084921
4, Article 92 (July 2018), 15 pages. https://doi.org/10.1145/3197517.3201354 Paul Zhang, Josh Vekhter, Edward Chien, David Bommes, Etienne Vouga, and Justin
LLC Gurobi Optimization. 2018. Gurobi Optimizer Reference Manual. http://www. Solomon. 2020. Octahedral Frames for Feature-Aligned Cross Fields. ACM Trans.
gurobi.com Graph. 39, 3 (2020), 25:1–25:13. https://doi.org/10.1145/3374209
Hugues Hoppe, Tony DeRose, Tom Duchamp, John McDonald, and Werner Stuetzle. Qingnan Zhou and Alec Jacobson. 2016. Thingi10K: A Dataset of 10,000 3D-Printing
1993. Mesh Optimization. In Proceedings of the 20th Annual Conference on Computer Models. arXiv:1605.04797 [cs.GR]
Graphics and Interactive Techniques (Anaheim, CA) (SIGGRAPH ’93). Association for
Computing Machinery, New York, NY, USA, 19–26. https://doi.org/10.1145/166117.
166119
Jingwei Huang, Yichao Zhou, Matthias Niessner, Jonathan Richard Shewchuk, and
Leonidas J. Guibas. 2018. QuadriFlow: A Scalable and Robust Method for Quadran-
gulation. Computer Graphics Forum 37, 5 (2018), 147–160. https://doi.org/10.1111/
cgf.13498 arXiv:https://onlinelibrary.wiley.com/doi/pdf/10.1111/cgf.13498
Alec Jacobson, Daniele Panozzo, et al. 2013. libigl: A simple C++ geometry processing
library. http://igl.ethz.ch/projects/libigl/.
Wenzel Jakob, Marco Tarini, Daniele Panozzo, and Olga Sorkine-Hornung. 2015. Instant
field-aligned meshes. ACM Trans. Graph. 34, 6 (2015), 189:1–189:15.
Felix Kälberer, Matthias Nieser, and Konrad Polthier. 2007. QuadCover - Surface
Parameterization using Branched Coverings. Comput. Graph. Forum 26, 3 (2007),
375–384.
Marco Livesu, Nico Pietroni, Enrico Puppo, Alla Sheffer, and Paolo Cignoni. 2020.
LoopyCuts: practical feature-preserving block decomposition for strongly hex-
dominant meshing. ACM Trans. Graph 39, 4 (2020), 121.
Albert Matveev, Alexey Artemov, Ruslan Rakhimov, Gleb Bobrovskikh, Daniele Panozzo,
Denis Zorin, and Evgeny Burnaev. 2020. DEF: Deep Estimation of Sharp Geometric
Features in 3D Shapes. arXiv:2011.15081 [cs.CV]
Alessandro Muntoni and Stefano Nuvoli. 2021. CG3Lib: A C++ geometry processing
library. https://doi.org/10.5281/zenodo.4431777
Ashish Myles, Nico Pietroni, and Denis Zorin. 2014. Robust field-aligned global
parametrization. ACM Trans. Graph. 33, 4 (2014), 135:1–135:14.
Ashish Myles and Denis Zorin. 2013. Controlled-distortion constrained global
parametrization. ACM Trans. Graph. 32, 4, Article 105 (July 2013), 14 pages.
https://doi.org/10.1145/2461912.2461970
ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.