19#ifndef OPENSWMMVIS_MESH_MESHQUADMERGE_H
20#define OPENSWMMVIS_MESH_MESHQUADMERGE_H
49inline QPair<int, int>
edgeKey(
int a,
int b)
noexcept
51 return a <
b ? qMakePair(
a,
b) : qMakePair(
b,
a);
77 const QSet<QPair<int, int>> &lockedEdges,
78 QVector<int> *oldToNew =
nullptr);
int b
local residual indices, a < b
Definition meshquadmatch.cpp:46
int a
Definition meshquadmatch.cpp:46
Definition meshcommands.h:302
int mergeTrianglePairs(MeshResult &mesh, const QuadMergeOptions &opts, const QSet< QPair< int, int > > &lockedEdges, QVector< int > *oldToNew=nullptr)
Greedily merge adjacent triangle pairs of mesh into convex quads.
Definition meshquadmerge.cpp:69
QPair< int, int > edgeKey(int a, int b) noexcept
Unordered vertex-pair key used for locked edges: (min, max).
Definition meshquadmerge.h:49
Acceptance thresholds for a merged quad.
Definition meshquadmerge.h:32
double minScaledJacobian
Reject quads whose min corner sine is below this.
Definition meshquadmerge.h:40
double maxAspect
Reject quads longer than this ratio (opposite-side means); <= 0 = off.
Definition meshquadmerge.h:41
double minAngleDeg
Reject quads with any interior angle below this.
Definition meshquadmerge.h:38
double maxBedNonPlanarity
Definition meshquadmerge.h:45
double maxAngleDeg
Reject quads with any interior angle above this.
Definition meshquadmerge.h:39