0% found this document useful (0 votes)
17 views17 pages

Reliable Feature-Line Driven Quad-Remeshing

Uploaded by

Chad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views17 pages

Reliable Feature-Line Driven Quad-Remeshing

Uploaded by

Chad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Reliable Feature-Line Driven Quad-Remeshing

NICO PIETRONI, University of Technology Sydney, Australia


STEFANO NUVOLI, University of Cagliari, Italy
THOMAS ALDERIGHI, University of Pisa and ISTI-CNR, Italy
PAOLO CIGNONI, ISTI-CNR, Italy
MARCO TARINI, University of Milan, Italy

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

1 INTRODUCTION Reliability. Another issue of automatic quadrangulation methods


Automatic quad-remeshing, the task of constructing a good pure- is that they typically lack reliability, both because they necessitate
quad meshing representation of a given surface, is a long-standing several assumptions on the representation of the input shape and
open problem, despite intensive research, a succession of progresses because several shapes are inherently difficult to quadrangulate. Our
and breakthroughs, and an urgent need by the industry (where it is method, based on a principled analysis of minimal requirements,
known as “retopology”). combined with a small number of ad-hoc measures counteracting
The problem is acknowledged as difficult, with a large number commonly encountered problems in the input meshes (such as poor
of conflicting and elusive objectives, such as isometry (use of con- initial tessellation), makes the resulting method able to batch process
trolled element size), well-shaped quadrangular polygons, regularity very large collections of data with almost infallible success rate, with
(the mesh should be mostly like a grid), and compact underlying extremely good results both in terms of feature preservation and
structure (mesh should have only a limited number of well-aligned meshing quality.
irregular vertices). Automatic methods still fall short of the results
that are obtained by skilled human modelers. Pure-quad meshes are 2 RELATED WORK
inherently a very constrained class of digital representation objects, The last two decades have seen drastic progress in the ability to
with local changes having a long-reaching effect, making the prob- automatically generate quad-meshes [Bommes et al. 2013b].
lem impervious to any local approach; this is in stark contrast to Our method falls in the category of coarse layout methods based
triangle and quad-dominant meshes. on a coarse layout construction [Campen 2017]. Compared to litera-
An often neglected objective is the ability to recreate feature-lines ture, it advanced the state-of-the-art in terms of reliability, and in
of the input shape, such as crease-angles (typical, for example, of the ability to preserve feature-lines, without substantially sacrificing
CAD models), which, in the context of quad-models, impose that mesh-quality (in terms of quad shapes, number and distribution of
these lines are recreated by edges in the final meshing. This is dif- irregular vertices, and so on).
ficult to reconcile with all the other objectives. Typical existing
approaches either sacrifice this objective when it contrasts the oth- 2.1 Coarse-Layout based Methods
ers, or even ignore it, focus on the rest of the problem statement, In this class of methods, a layout of patches is first constructed
and then try to recover the lines e.g. by snapping vertices, in the over the surface, either to serve as a domain for a globally smooth
late stages of the process. parametrization, or to tessellate each patch in the final mesh. In
In this work, we devise an approach that, conversely, is designed the former case, the final quad-mesh is then constructed by tracing
around the need to preserve edges. It is a patch-based approach, isolines of the parametrization ([Kälberer et al. 2007; Ray et al. 2006;
where the surface is initially split into a coarse layout of polygonal Schertler et al. 2018]).
patches, that are then individually tessellated in a globally consis-
tent way. Differently from other patch-based approaches, we make Conforming layouts. In most direct applications of this idea, the
all feature-lines by construction part of the patch-boundaries. To layout is conforming (T-junction-free) and each patch is rectangular
be able to do that, we relax considerably the requirements imposed shaped (e.g. [Bommes et al. 2013a, 2011; Campen et al. 2012; Panozzo
on the layout: our layouts can present T-junctions and, most im- et al. 2011; Razafindrazaka and Polthier 2017; Tarini et al. 2011],
portantly, non-rectangular patches. These configurations will be among others), using a variety of approaches. This leads to a direct
dealt with later, in the tessellation phase, leveraging a better under- and easy final quadrangulation, but the constrained nature of the
standing of patch-quadrangulation afforded by recent advancements layout (or “base complex”) makes its construction arduous.
[Takayama et al. 2014; Tarini 2021].
To this end, we identify a minimal set of requirements that the Non-conforming layouts. For this reasons, many methods allow
layout must fulfill in order to admit a valid solution, and a strat- for T-junctions in their definition (e.g. [Myles et al. 2014; Myles and
egy to construct layouts that embeds the feature-lines and meets Zorin 2013; Schertler et al. 2018; Usai et al. 2016], among others).
these minimal conditions. We then identify a set of additional condi- This eases the construction, providing more degrees of freedom,
tions, harder to fulfill, that promote the quality solution. Our layout which can be exploited to optimize the domain in other respects,
construction strategy strives to fulfill this second set of conditions however this requires the solution of a non-trivial problem to pro-
whenever possible. The result is that a final valid quadrangulation is duce a conforming final-mesh and to determine a globally consistent
virtually always produced, presenting very high-quality on average, subdivision of the sides of the layout. To this purpose, similarly to
at par with any state-of-the-art methods in this respect. us, it is common to cast this problem as a separate optimization
While previous layout-based methods may lack the flexibility problem, subject to a number of constraints. Unfortunately, it is
to conform the layout to an arbitrary set of feature-lines, they are known [Myles and Zorin 2013] that this problem is not necessarily
appealing because they naturally produce quadrangulations with an feasible. Ad-hoc strategies have been proposed: for example, [Myles
underlying coarse structure by construction (meaning that the few and Zorin 2013] changes the underling direction field, and [Usai
irregular vertices are aligned). In our case, extra irregular vertices et al. 2016] modifies the layout to avoid the difficult to solve configu-
that are required in the final patch tessellation can partially com- rations. During these necessary fixing operations, the pursue of any
promise this: however, we mitigate this substantially by explicitly other objective is suspended. This is in contrast with our solution,
optimizing for the reciprocal alignment of these vertices. which will be shown in Section 6.1, and which is the same used to
deal with the following point.

ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:3

Non-rectangular layouts. We go one step further and also drop


the constraint of requiring the patch layout to be rectangular, en-
dowing us more flexibility, which is necessary in our case to embed
arbitrary features lines as patch boundaries. We are still able to use
the resulting layout, thanks to the recent progresses in defining
the conditions and the space of solutions of the quadrangulation
of non-rectangular shaped regions, and in particular [Takayama MIQ Patch Proposed
et al. 2014; Tarini 2021]. To our knowledge this strategy in the con-
text of quad-meshing has no predecessor. It was used in the similar Fig. 2. A simple strip glued to itself with boundary-conforming cross-field:
problem of fusing together existing quad-meshes, redefining their the mixed-integer parametrization (MIQ) [Bommes et al. 2009] cannot
structure only in the proximity of the connection [Nuvoli et al. 2019]. obtain a valid quadrangulation because of huge distortions and foldovers
However, this approach would be unable to preserve the structure and in the intermediate parametrization (circled in red). In our method,
of the quadrangulation of an entire complex shape. [Takayama et al. instead, irregular vertices are added inside the path, in appropriate position,
2014] employs non-rectangular patches in manually designed lay- resulting in a valid and high-quality semi-regular tessellation (as shown in
the rear view, right-most image).
outs. Neither approaches would be able to automatically construct
an appropriate layout.

2.2 Field-aligned methods


A fruitful trend in quad-remeshing strategies (including ours) is
the process. In a similar spirit, parametrization-based methods force
to rely on an auxiliary tangent space direction field to control the
the parametric position of the feature-edges on the closest integer
orientation of the edges, and, by implication, the location of irregular
parametric line, e.g. [Tarini et al. 2011]. Such approaches can get
vertices (at field singular points). Several methods specialized in the
stuck in local minima or oscillate, as one snap operation can undo
design of cross-field with appropriate characteristics, e.g. curvature
another. In a similar spirit, other remeshing methods foster feature-
alignment (see Course [Vaxman et al. 2017]). In the context of coarse
lines preservation by adding soft forces pushing or keeping vertices
domain layout, this concept translates in the idea of constructing
on feature lines [Bommes et al. 2011, 2013b, 2009; Fang et al. 2018].
the layout tracing lines which are aligned to the field, as we do. The
This is not necessarily effective on all the targeted features. Also, it is
biggest difference with the State of the Art is that we trace lines
difficult to ensure that this does not impact other requirements, such
avoiding field singularities, rather that to connect them [Bommes
as the absence of fold-overs in the parametrization. Methods such
et al. 2011; Campen et al. 2013; Pietroni et al. 2015; Tarini et al.
as [Bommes et al. 2013a; Campen et al. 2015] introduce constraints
2011], because we let the feature line dictate the location of the
to avoid fold-overs, while another class of solutions goes one step
corner of the patches, and we are able to deal with the resulting
back in the pipeline [Diamanti et al. 2015; Myles and Zorin 2013;
non-rectangular patches. This is similar to what it is done in the first
Zhang et al. 2020] and re-optimize the cross-field and provide better
phase of [Campen et al. 2012]. Robustly tracing lines on a discretized
input for the following parameterization step. Instant Meshes [Jakob
surface is an interesting problem that has been solved before, e.g.
et al. 2015] formulates an “extrinsic” parametrization approach that
[Pietroni et al. 2016; Razafindrazaka et al. 2015]. Our solution, shown
“naturally” exhibit a form of sharp-feature alignment. The resulting
in Section 5.3 adapts a similar concept.
method behaves similarly to a feature-preserving force, leading to
The parametrization method of Myles et al. [2014] resembles our
similar problems (although no soft constraint is explicitly added,
method, in that the mesh is split into a set of quadrilateral patches
and feature lines are not even explicitly detected).
that allows for T-junctions, by tracing field-aligned lines, although
A more recent technique proposed by Fang and colleagues [2018]
its objective is to derive a bijective parametrization rather than a
combines global parametrization with a local Morse-based approach
global quadrangulation. Our objective imposes additional consis-
around the singularities. Such a method allows for managing com-
tency constraints, such as to tessellate boundaries shared by two
plex, sharp-features. Unfortunately, it tends to introduce unexpected
patches consistently; this is a central part of our method, and can
irregularities in the final quadrangulation and then break the overall
require the addition of extra irregular vertices even inside quad-
flow.
rangular patches (e.g. see Figure 2). Among other key differences,
A new approach to preserve sharp-features has been recently
in [Myles et al. 2014] the lines are traced from field singularities,
proposed by LoopyCuts [Livesu et al. 2020]. This technique (orig-
disallowing patches to contain them, whereas we allow for irregular
inally designed to create hex-meshes) distributes loops that run
vertices inside (non necessarily quadrilateral) patches and explicitly
nearby sharp features and then snap them at the end of the process.
optimize their placement; also, we allow the traced lines to drift
However, this approach is not guaranteed to handle complex feature
from the direction field in order to optimize the layout structure
configurations, which our method is able to process.
and to avoid “spiralling”.
An orthogonal but closely related problem is how to automatically
detect features to be preserved (see e.g. [Matveev et al. 2020] for a
2.3 Feature-edges preservation recent technique). We do not claim any advancement in this area,
In earlier approaches, feature lines are preserved by snapping [Tarini and methods more sophisticated than the trivial dihedral angle
et al. 2010] vertices of a quad-meshes edges into feature lines during thresholding we employed can improve our results.

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

§4.1 Optimized Cross-field & Patch Edge


Input §4.3 §5 §6.1 §6.2 Output
§4.2 Mesh Singularities Layout Tessellation

Fig. 3. The phases of our remeshing algorithm. Refer to Section 3.2 for an overview, and the referred Sections for the specific phases.

3 OVERVIEW 3.2 Steps breakdown


Our processing pipeline takes as input a triangle mesh, with a given Figure 3 shows an overview of our pipeline.
set of feature-lines, and produces as output a good-quality quadri-
lateral mesh reproducing all the feature-lines as edges. Our method Input-mesh optimization. As a preliminary step, we perform an
falls in the category of coarse-layout based methods: first, we par- automatic triangle-mesh optimization of the input (Section 4.2, and
tition the mesh into a layout of coarse regions (patches), then we Figure 3.b), by performing a sequence of local operations aimed at
consistently quadrangulate each patch to obtain the final quad-mesh. improving the triangle-shapes and vertex distribution of the input
Although any set of the input mesh-edges can be selected as a mesh. During this process, we simply disallow any operation that
feature-line, in our experimental setup, we automatically identify would disrupt a feature-edge. This step confers to our system the
feature-lines as geometric creases. ability to be used on meshes with very unevenly sized or ill-shaped
The main parameter of the method is the target edge length, which triangles, such as most CAD models.
will be only roughly matched by the final mesh. In our experiment, Cross-field construction. Then, we compute a cross-field, i.e., a
we set it automatically as the side of a square having 1/𝐾 the area smooth, 4-rotational-symmetric tangent-vector field, on the surface
of the mesh, with 𝐾 = 104 (unless otherwise specified). (see Section 4.3, and Figure 3.c). The field is aligned to the feature-
lines by construction and propagated over the rest of the surface. In
3.1 Objectives absence of feature-lines, the cross-field is aligned to main curvature
Our method is designed primarily around the need to accurately directions. The cross-field is sampled at mesh faces and defines a
preserve feature-lines. We achieve this goal by ensuring that feature- set of singularities at mesh vertices.
edges are preserved, or reproduced, by construction during each Layout construction. Next, we trace a number of paths across
phase of the method. The central part is that we tailor the patch- the surface, partitioning the surface into the layout patches to be
layout around the feature-lines, ensuring that they are all repre- quadrangulated (see Section 5, and Figure 3.d). All feature-lines
sented as patch boundaries. are automatically considered part of the paths, and therefore they
Naturally, we also strive to maximize the quality of the output appear as patch boundaries by construction. Additional paths are
meshing, meaning that the resulting quad meshes should have ap- traced along the directions specified by the cross-field. This is the
proximately rectangular and flat-shaped faces, reasonable uniform central step of the pipeline; its objective is to produce patches that
edge-sizes, and, most importantly, only the necessary irregular ver- are easily “quadrangulable”, that is, which have a geometric shape
tices. Specifically, in our method, meshing quality is achieved pri- and a topology that strongly favors the existence of a valid, good-
marily by producing coarse-layouts where most or all patches allow quality semi-regular internal quadrangulation. We define a set of
for predictably good-quality internal quadrangulations. topological and geometric criteria that allow us to quickly estimate
As an additional quality requirement, irregular vertices should whether this is the case for a given patch. Our criteria descend from
also be reciprocally aligned, whenever possible; this is known to the patch-quadrangulation strategy that will be used by the final
be beneficial [Bommes et al. 2011; Tarini et al. 2010] as it leads to step. Armed with this, we adopt a greedy algorithm to identify a
simpler separatrix graphs (e.g. see Figure 25). minimal set of paths such that the criteria are met for all patches.
Finally, we want our method to be reliable and fully automatic,
i.e., to be able to automatically produce good results on the largest Tessellation of paths. In the next step, we tessellate the sides of
possible set of input meshes, with minimal requirements on their each patch in a number of final mesh-edges (see Section 6.1). We
initial meshing quality or consistency. We empirically verify the ful- determine the exact number (for each side) by solving a global
fillment of this objective by successfully batch-processing thousands Integer Linear Program (ILP), driven by an objective function which
of models from the entire database Thingi10k [Zhou and Jacobson balances conflicting objectives such as constant edge length, and
2016]. regularity of the final meshing (see Figure 3.e). Specifically, the main
These objectives make our method ideal for automatic processing component of the objective function favors solutions that allow, in
of CAD models. most or all patches, a regular quadrangulation in the last step.

ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:5

Patch quadrangulation. Once the number of edges around the


sides of each patch is determined, the final stage of the pipeline
consists of quadrangulating the interior of each patch (see Section 6,
and Figure 3.f). This task is carried independently for each patch and
results in the final conforming (T-junction free) pure quad-meshing.
In contrast to many previous patch-based methods, the internal
quadrangulation of a patch can feature irregular vertices. In each
patch, this task can be solved using one of two possible strategies.
The “simple strategy”, used whenever applicable, consists of the
insertion of at most a single internal irregular vertex (and none in
rectangular patches), as studied in [Tarini 2021]. Only in the few
patches where this solution is not applicable, we resort, as a fallback, Fig. 4. The effect of adaptive remeshing on one mechanical object from the
to the “general strategy”, i.e. the general patch tessellation algorithm Thingi10k [Zhou and Jacobson 2016] repository.
described in [Takayama et al. 2014]; this always finds a valid solu-
tion, by the use of multiple internal singularities, although at the
price of a diminished local meshing quality, edge alignment, and [Hoppe et al. 1993]. A sequence of local operations like edge-flips,
regularity. The benefit of the simple strategy is not only that it consis- edge-collapses, and edge-splits, are performed in order to make
tently produces good quality, maximally regular meshing, but, more edge lengths close to a given target value. We simply cycle over all
importantly, that the conditions for its applicability are expressed available operations in an arbitrary order and perform any that has
in closed-form, as a function of the number of edges around the a beneficial effect, evaluated on the lengths of all affected edges. In
patches [Tarini 2021], and this can be targeted in the other stages of our case, during the entire process, we preserve feature-lines by
the pipeline; specifically, we use this to derive the characterization simply disallowing any operation that would disrupt them.
of quadrangulable patches (for the layout-construction phase), and Our preliminary remeshing procedure comprehends two passes.
the conditions pursued by the ILP in the path tessellation phase. We perform a first cycle of operations targeting a uniform target
edge-length, set at half the edge-length requested in the final quad
Irregular vertices and their reciprocal alignment. In our method, mesh. Normally, [Hoppe et al. 1993] produces a triangle mesh with
irregular vertices of the final quad-mesh stem from two different fairly regularly-shaped and equally-sized faces; in our case, feature-
sources. They appear at corners of the patches, and internally in lines preservation can result in badly-shaped and smaller triangles
patches. The former ones tend to be reciprocally aligned, by virtue near conglomerations of feature-lines. We detect this occurrence
of the coarse structure of the layout (this is the premise of any and interpret it as an indication of the necessity for a higher local
layout-based approach). To also favor the reciprocal alignment of resolution (because the tangent-field will typically require high-
the latter vertices, we add an apposite term in the energy minimized frequency features around these areas). For this reason, we perform
by the ILP. a second pass of operations where we target an adaptive edge-length,
The following Sections detail each phase of the above pipeline. defined locally as a function of the aspect ratio of the triangles
(measured as the ratio between inner and outer circle) at the end
4 INPUT PREPARATION of the first pass. We clamp the 10% percentile of faces with the
As a preliminary step, we make the input triangle-mesh ready for lower aspect ratio, then linearly interpolate the target edge-length
the subsequent phases. between 0.3 and 3 times the original requested length. This results
in a triangle mesh with a local resolution that is roughly adaptive
4.1 Feature-edge identification to the complexity of the input set of feature-lines (see Figure 4).
First of all, we mark a selection of mesh-edges as feature-edges,
which will be maintained (by construction) throughout all the rest 4.3 Cross-field definition
of the method, and thus will be reproduced in the final quad-mesh. Next, we construct a cross-field (a 4-RoSy tangent-vector field [Vax-
In all our experiments, we automatically select feature-edges as man et al. 2017]) on the input surface, aligned to feature-lines, by
creases, thresholding the dihedral angles, which works well for assigning a tangent direction in each triangle.
CAD models, but other strategies can be devised. Initially, we split any input mesh face adjacent to multiple feature-
When the input-mesh is not closed, we also choose to mark bound- edges until each face is adjacent to at most one (see Figure 5). We
ary edges as feature-edges, so that they will also be preserved. assign to any face adjacent to a feature-edge the field values match-
ing the direction of that edge. Finally, we diffuse the cross-field
4.2 Preliminary input-mesh optimization values to every other triangle. During the propagation, we add soft
Most of the CAD models present an irregular tessellation with a constraints to align the field to the main curvature directions, simi-
big disparity in triangle sizes, in edge lengths, and often extremely larly to [Panozzo et al. 2012]. This lets us define a cross-field even in
long and thin triangles. This hinders subsequent phases, such as absence of any feature-line. We adopt the field propagation method
cross-field definition, or path tracing. described in [Diamanti et al. 2014], but other similar solutions, e.g.
To counter this, we perform a simple preliminary re-meshing [Jakob et al. 2015; Zhang et al. 2020] could be used interchangeably.
step on the input model, following the well-known approach of The per-face cross-field determines irregular points at vertices.

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).

5 PATCH LAYOUT DECOMPOSITION


In this step of the pipeline, we trace a set of field-aligned paths
along the field, which partition the surface into a layout of patches.
Left-Turn U-Turn
Patches need not be rectangular. Paths are allowed to intersect, as
long as they follow orthogonal, rather than parallel, directions of
Fig. 6. The four different classes of boundary-vertices of the bluish patch.
the cross-field at the crossing. Paths can be closed loops, or have
The classification is defined by the orientation of the green boundary-edges
end-points at mesh boundaries, or on other paths, possibly creating (green arrows) propagated across the cross field (black crosses).
T-junctions.
As a starting point, we convert all feature-lines to paths, simply
by marking all feature-edges as path-edges. The rest of the layout
is to be constructed by adding additional paths, striving to obtain
patches with a valid topology and a favorable shape. The new paths
never pass through singular points of the cross-field. New paths are
drawn as chains of input-mesh edges.
First, we cut the mesh open along feature-edges: each original
feature-edge generates two directed boundary-edges, one on each
side. Affected vertices are duplicated as required, and all copies
become boundary-vertices (we keep a list, for each vertex, of its
duplicates). If a duplicated vertex corresponds to a singular value
of the cross-field, it loses that status, and a value for the field is
updated by averaging the connected faces.
Then, each boundary-edge is labeled with an orientation, i.e. an
index specifying one of the four cross-field directions of its (unique) Fig. 7. Examples of duplicating vertices along a path, and the labeling of the
adjacent face (cross-field directions are arbitrary numbered, clock- boundary vertices derived by the field directions (green and orange boxes,
wise, from 0 to 3). Observe that one of these directions is always, by see Fig.6). The blue vertex is a field singularity (observe the field).
construction, perfectly aligned to the considered edge.

Classification of boundary vertices. Boundary-edges are necessar-


5.1 Conditions for patches
ily grouped in directed loops (surrounding a patch, or internal to a As mentioned, we seek the patches that allow for a valid and high-
patch). Inside each loop, we classify each traversed vertex according quality internal quadrangulation. At a bare minimum, we need them
to the number 𝑘 of 90° clockwise turns that are required to make to be a valid input for our “general” quadrangulation strategy (which
the orientation of its previous and next edge match in the field. This is the algorithm of [Takayama et al. 2014]).
can be determined by a traversal of the fan of triangles around that This is guaranteed by the following three “validity conditions”:
vertex. When 𝑘 = 0, the boundary-vertex is said to be straight, when Topological constraint The patch must be homeomorphic to
𝑘 = 1, (equivalently, −3) it is a right-turn, when 𝑘 = −1 (equivalently, a disk, meaning that it must be adjacent to a single loop of
+3), a left-turn, and when it is 𝑘 = ±2, it is a U-turn (see Figure 6). border-edges.
Observe that an original mesh-vertex on a feature-line is split Valence constraint The valence of the patch must be between
into boundary vertices receiving in general different labels and that 3 and 6.
this labeling is also applied, unmodified, to copies of vertices that Convexity Only straight vertices and right-turns are allowed
were originally classified as field-singularities (see Figure 7). on the boundary loop.

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

(a) (b) (c) (d)

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).

5.4 Rounds of insertion of paths


In each round of insertions, we identify a set of potential starting
nodes 𝑆, and of ending nodes 𝐸. Then, we attempt to trace a new
path from each node in 𝑆, toward any node in 𝐸. All successfully
traced paths are added to the pool of candidate paths for that round.
The performed rounds are as follow:
Fig. 14. The convexity enforcement round. Left: the starting of nodes added
Convexity enforcement round. We construct candidate paths ex- in 𝑆 for candidate-paths designed to address a left-turn (Top) and a U-
plicitly targeted at fixing left-turn and U-turns. As starting nodes 𝑆 turn (Bottom) boundary vertex. Right two images: alternative examples of
for each left-turn vertex, we add two nodes, one going on straight, candidate-paths that can be inserted to meet convexity constraints.

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

Fig. 16. In a triangular, pentagonal, or hexagonal shaped patch, with a single


internal singularity (red dot), the number of edges on each side (𝑎, 𝑏, 𝑐, 𝑑, 𝑒)
determine the positions 𝑘 (expressed as a number of edges) at which the
separatrix line (red dotted lines) meet the shown side. Formulas for 𝑘 values,
derived from [Tarini 2021], are shown for two of the sides; the others can
be determined by rotating the figure.

Regularity term (rectangular patches). A rectangular (4-sided)


patch, with 𝑒 0, 𝑒 1, 𝑒 2, 𝑒 3 edges on each side, can be tessellated regu-
only rectangular patches all patches larly whenever opposite side match, i.e. when 𝑒 0 = 𝑒 2 and 𝑒 1 = 𝑒 3
(which are two linear constraints, because each 𝑒𝑖 is by the sum of
Fig. 15. The improvements induced by the regularity term for non- a small subset of the variable 𝑠𝑖 ). It is known that this condition
rectangular patches. cannot always be globally enforced. A simple counterexample is
depicted in Figure 2. In other patch-based approaches (e.g. [Usai
et al. 2016]), this problem is addressed by detecting when the system
is unfeasible, and changing the layout accordingly, or modifying
6 FINAL QUADRANGULATION
the underlying guiding field [Myles and Zorin 2013]. In our system,
After the layout is constructed, we need to quadrangulate each patch. we only strongly favor, rather than impose, the equalities. The occa-
The quadrangulation must match at patch boundary, to ensure that sional patches where the value mismatch be addressed, in the next
the final quadrangulation is conforming. We address this problem phase, by the “fallback” quadrangulation strategy.
by, first, determining the number of edges along each side.
Regularity term (non-rectangular patches). In our approach, patches
6.1 Patch-side tessellation can also have 𝑛 = 3, 5, or 6 sides. For these patches, the most regu-
lar internal quadrangulation possible is the one featuring a single
We cast this problem a global Integer Linear Program. We split the
irregular vertex of valency 𝑛, which is our simple quadrangulation
paths of the layout at every turn vertex and intersection, obtaining
strategy. After [Tarini 2021], a necessary condition for this strategy
a set of arches. For each arch, we represent the number of edges
to be viable is that the inequalities (Equation 1) hold for each side
contained an integer variable 𝑠𝑖 ≥ 1. The number of edges found
of the patch 𝑖 ∈ [0, 𝑛) (note that the inequalities are not strict, the
along each side of a patch is given by the sum of a given set of 𝑠𝑖
equality case just resulting in the irregular vertex to be located along
(see the two rightmost images in Figure 3).
the boundary of the patch). Similarly to the case for rectangular
The ILP minimizes an objective function defined over the 𝑠𝑖 . This
patches, we include these conditions as hard-constraints could make
is given by the sum of several weighted terms, subject to the follow-
the system unfeasible; instead, we discourage their infringement
ing constraint.
by penalizing them with a term in the objective function (see Fig-
Parity constraints. It is well known that a patch can be quadran- ure 15). Specifically, whenever we need that 𝑎 ≤ 𝑏, with 𝑎 and 𝑏
gulated only if it is bounded by an even number of edges. Hence, two quantities linear with the variables, we include a new auxiliary
for each set of arches 𝑃 surrounding a patch, we add a separated variable in the system 𝐾, and we impose the hard linear constraints
auxiliary linear variable 𝑛 and include a linear constraint: 𝑎 ≤ 𝑏 + 𝐾 and 𝐾 ≥ 0. Then, 𝐾 is added to the objective function.
Considering that different patches will have a different number of
Õ inequalities, we normalize these energy terms for each patch.
𝑠𝑖 = 2𝑛, ∀𝑖 ∈ 𝑃 (2) For 𝑛 = 3, 4, 5, the conditions above are sufficient to ensure the
viability of the simple strategy. For hexagonal patches, an additional
Isometry term. We define an isometry term of the objective func- condition is required [Tarini 2021]: the three even and the three odd
tion that penalizes the (squared) discrepancy of every 𝑠𝑖 from its sides of the patch sum up to an even number of edges. To enforce
ideal value 𝑠ˆ𝑖 , given by the length of the arch (computed as seen in this in a soft sense, we add two auxiliary integer variable 𝑘 and ℎ,
Section 5.3) divided by the targeted quad-mesh edge: and we constrain both 𝑘 ≥ 0 and 𝑎 = 2ℎ + 𝑘, with 𝑎 being the sum
Õ of all arches found on any even sides of the patch (and likewise, for
(𝑠𝑖 − 𝑠ˆ𝑖 ) 2 the odd sides).

ACM Trans. Graph., Vol. 40, No. 4, Article 155. Publication date: August 2021.
Reliable Feature-Line Driven Quad-Remeshing • 155:11

(a) (b) (c) (d) (e)

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

Table 1. Measurements on the result meshes shown in various Figures. We


report: the number of vertices (#V), faces (#F), and irregular vertices (#I),
the average angle deviation from 90° (AD), the edge-length deviation from
the average edge-size (ED), and the average Scaled Jacobian (SJ) [Stimpson
et al. 2007]. For Fig 26, we compare with the meshes obtained with Instant
Meshing (IM) [Jakob et al. 2015] and Quadriflow (QF) [Huang et al. 2018].

Fig Model #V #F #I AD (°) ED (%) SJ


Spiral 2389 2387 28 19.76 17.40 0.92
Fig. 19. Feature lines are correctly preserved even when this necessarily Nasty cheese 15311 15574 2116 24.11 22.31 0.88
implies the creation of poorly shaped quads, with extremely acute angles. Sydney 3298 3188 247 17.47 15.66 0.93
Metatron 4647 4667 106 22.46 14.68 0.90
Transmission 13231 13247 169 7.83 11.06 0.97
27
Mazewheel 17682 17712 577 22.33 15.78 0.88
Libigl [Jacobson et al. 2013], and Gurobi [Gurobi Optimization 2018] Twirl 3708 3701 61 22.72 16.31 0.92
to solve the ILP problem of Section 6.1. Fusee Lp 14788 14822 275 19.89 13.07 0.90
Figure 24 shows a subset of the dataset; Figure 27 shows a chal- Gearbox 67680 67834 3314 22.77 20.08 0.87
lenging mechanical examples in this dataset. Our method success- Plate Lp 13114 13130 238 13.25 11.75 0.95
fully preserves all the sharp features specified in the original mesh Guy 4125 4123 163 16.38 16.92 0.94
and performs well even with smoother organic meshes with no or Chinese lion 20919 20915 303 14.53 12.29 0.95
reduced sharp features, like the ones shown in Figure 28. Table 1 Octopus 4339 4337 68 12.86 21.16 0.95
reports statistics of the processed dataset. Camel 4479 4479 143 18.67 29.30 0.92
We performed a larger scale test on the Thingi10k dataset [Zhou David 8111 8109 381 16.26 16.93 0.93
and Jacobson 2016], comprising ten thousand meshes. Our method 28
Gargoyle2 31071 31069 480 15.14 15.77 0.94
successfully quadrangulated 9877 models, after only very basic au- Pegaso 18453 18457 336 14.23 15.33 0.95
tomatic clean-up. Another 3 input models are point clouds or empty Vase lion 25127 25125 357 15.46 15.10 0.94
meshes; 66 could not be open by the OpenSource software Meshlab Thai statue 28117 28121 538 14.79 13.66 0.94
[Cignoni et al. 2013]. To perform this test, we automatically split Filigree 26067 26171 844 16.31 16.04 0.93
each any existing non-manifold edge, and we remove any result- N.44503 18937 19130 829 0.28 13.11 0.95
ing non-orientable connected-component (this occurred 36 times). N.128001 56309 56162 3917 14.44 19.14 0.93
Some of the results are shown in Figure 1 and Figure 29; 90% of the N.58012 113799 113879 7977 15.49 12.28 0.93
meshes required less than 2.5 minutes, and the 99% of them within N.61394 38038 37730 1685 20.82 19.22 0.87
12 minutes. N.67792 16615 16735 490 14.55 13.78 0.95
The entire set of results of both tests can be inspected at N.69975 22629 22563 938 16.44 15.99 0.92
www.quadmesh.cloud. 29
N.81877 35185 35305 1835 19.62 15.99 0.92
Figure 19 shows some challenging examples of sharp feature N.94884 47116 47466 3479 21.85 20.07 0.89
preservation that would be hard to handle with quadrangulation N.230923 45410 45398 2108 22.66 30.57 0.87
methods based on global parametrization. Our method can be used N.364256 70060 68905 6654 18.04 16.14 0.91
to construct mesh at any prescribed, as exemplified in Figure 20; the N.423069 60804 60624 4123 23.79 41.29 0.85
lower limit of the resolution is tied to the shortest side in the patch N.498974 376509 380068 32241 19.86 16.02 0.89
layout, which is linked to the size of details with sharp features. Ujoint (ours) 2674 2676 8 4.11 11.97 0.99
Our approach is resilient with a number of inconsistencies of the ↩→ with QF 2847 2849 32 7.45 7.89 0.97
input mesh, graceful degrading the result and delivering an output ↩→ with IM 2764 2766 84 5.77 4.65 0.98
reflecting the input problems, but usable in other areas (Figure 23). Sculpt (ours) 2148 2150 16 15.76 16.92 0.95
↩→ with QF 1848 1850 52 17.52 15.42 0.92
Comparisons. We performed a direct comparisons against compet-
↩→ with IM 2214 2216 149 10.32 9.79 0.96
ing quad-remeshng methods. Figure 21 reports a visual comparison
Bolt (ours) 2045 2045 24 7.78 5.23 0.98
with the quadrangulation technique of Fang et al. [2018]. Figure
26 ↩→ with QF 1914 1914 22 10.32 8.42 0.97
26 shows a qualitative and quantitative comparison with Instant-
↩→ with IM 2104 2104 88 7.60 7.24 0.97
Meshes [Jakob et al. 2015] and Quadriflow [Huang et al. 2018];
Gear (ours) 2752 2750 88 5.27 7.25 0.99
faces are color-coded according to a measure of shape quality for
↩→ with QF 2639 2637 86 8.69 7.46 0.97
quad faces, the Scaled Jacobian [Stimpson et al. 2007], and their
↩→ with IM 2742 2740 129 5.98 7.38 0.98
distributions are shown by means of histograms. In addition to the
Sharp S. (ours) 3484 3482 34 24.28 18.47 0.87
aforementioned better preservation of feature lines, the comparison
↩→ with QF 3539 3537 98 13.22 9.63 0.95
is favourable to our method, both in terms of required number of
↩→ with IM 3268 3260 267 12.25 12.94 0.95
irregular vertices and shape quality, especially in proximity of the
feature lines.

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. 20. Examples of quadrangulations created at different resolution.

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.

as we observe that it closely reflects the practice of hand-designed


quadrangulation by human modelers (which is still able to produce
results of unparalleled quality). The first class of irregular vertices is
directly dictated by the shape features, such as the corners of a cubic
shape; the second class of irregular vertices is indirectly imposed
by the constraints of quad meshing, such as a valency 5 vertex in
the center of a pentagonal panel, or the irregular vertices needed to
adjust the local tessellation density.

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.

[Jakob et al. 2015] [Bommes et al. 2009] [Fang et al. 2018]

proposed proposed proposed

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

84 149 88 129 267

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

364256 58012 94884 498974

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.

You might also like

pFad - Phonifier reborn

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

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


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy