18 return {
p.
x(),
p.y()};
22 return {
p.x(),
p.y()};
26 return {{
b.left(),
b.top()}, {
b.right(),
b.bottom()}};
30 return QRectF(QPointF(
b.left(),
b.top()), QPointF(
b.right(),
b.bottom()));
34 return s.toStdString();
38 return QString::fromStdString(
s);
44template <
class T> T
qt(T v)
120template <
class T>
auto native(
const QVector<T> &v)
123 out.reserve(v.size());
124 for (
int i = 0;
i < v.size(); ++
i) {
132 QVector<
decltype(
qt(T{}))> out;
133 out.reserve(v.
size());
134 for (
int i = 0;
i < v.
size(); ++
i) {
143 out.reserve(v.size());
170 return static_cast<n::ConstraintSimplificationPolicy::Mode
>(v);
178 return static_cast<n::SimplificationFeature::Role
>(v);
763 out.
vertices.borrow(&
m.vertices,
m.vertices.size(), [](
const void *
p, std::size_t
i) {
764 const auto &v = (*static_cast<const QVector<MeshVertex> *>(p))[i];
765 return n::MeshVertex{native(v.xy), v.z};
767 out.triangles.borrow(&
m.triangles,
m.triangles.size(), [](
const void *
p, std::size_t
i) {
768 const auto &v = (*
static_cast<const QVector<MeshTriangle> *
>(
p))[
i];
776 out.boundaryEdges.borrow(&
m.boundaryEdges,
m.boundaryEdges.size(),
777 [](
const void *
p, std::size_t
i) {
778 const auto &v = (*
static_cast<const QVector<MeshEdge> *
>(
p))[
i];
800 for (
auto r : o.terrainRegions)
801 out.terrainRegions.append({native(r.ring), r.h});
823 QPointF points[3] = {
qt(
p[0]),
qt(
p[1]),
qt(
p[2])};
Definition geometry.hpp:59
Definition geometry.hpp:11
constexpr double x() const noexcept
Definition geometry.hpp:17
Definition storage.hpp:18
void append(const Vector &v)
Definition storage.hpp:37
std::ptrdiff_t size() const noexcept
Definition storage.hpp:49
Definition planmodel.hpp:49
Definition planmodel.hpp:14
size_t i
Definition contourjob.cpp:30
double s
Scene px per model length unit.
Definition inletdrawingview.cpp:95
ArrowPlacement p
Definition linesymbollayer.cpp:29
MaskMode m
Definition maskspec.cpp:21
meshkit::Point2 native(QPointF p)
Definition qtnative.h:16
QPointF qt(meshkit::Point2 p)
Definition qtnative.h:20
QuadRegionMode
Definition meshquadregion.h:37
PatchDisposition
Definition cellplanner.h:9
QuadRegionMode
Definition regions.hpp:31
PatchDisposition
Definition planning.hpp:10
Automatic open-area quad blocks (workplans/MESH_REGIONAL_TRIQUAD_PLAN_2026-10-03.md,...
double value
Definition rasterfluxintegration.cpp:27
Graded element sizing for Delaunay refinement (MESH_MINSIZE_ENFORCEMENT_V2_AND_GRADING_PLAN_2026-09-0...
Two open bank polylines with independently supplied directions. Endpoints are paired by minimum total...
Definition meshpatch.h:64
QVector< QPointF > bankA
Definition meshpatch.h:65
QVector< QPointF > bankB
Definition meshpatch.h:65
int across
Definition meshpatch.h:66
QString tag
Definition meshpatch.h:68
double along
Definition meshpatch.h:67
Definition constraintaudit.h:14
QString featureId
Definition constraintaudit.h:15
int segment
Definition constraintaudit.h:16
QString message
Definition constraintaudit.h:15
Definition constraintaudit.h:7
std::function< bool()> cancelled
Definition constraintaudit.h:9
QVector< QPointF > protectedPoints
Definition constraintaudit.h:8
quint64 workBudget
Definition constraintaudit.h:10
int maximumExamples
Definition constraintaudit.h:12
quint64 maximumWorkspaceBytes
Definition constraintaudit.h:11
Definition constraintaudit.h:18
double coordinateRoundoff
Definition constraintaudit.h:24
quint64 violations
Definition constraintaudit.h:22
quint64 segmentsChecked
Definition constraintaudit.h:21
QString error
Definition constraintaudit.h:20
bool ok
Definition constraintaudit.h:19
quint64 featuresChecked
Definition constraintaudit.h:21
double maximumXYDeviation
Definition constraintaudit.h:23
double maximumZDeviation
Definition constraintaudit.h:23
bool cancelled
Definition constraintaudit.h:19
quint64 workUsed
Definition constraintaudit.h:22
bool complete
Definition constraintaudit.h:19
double maximumAreaChange
Definition constraintaudit.h:23
QVector< ConstraintAuditExample > examples
Definition constraintaudit.h:25
quint64 cellsChecked
Definition constraintaudit.h:21
bool resourceLimited
Definition constraintaudit.h:19
Definition constraintsimplifier.h:24
int mode
Definition constraintsimplifier.h:25
std::optional< double > maxTurnDegrees
Definition constraintsimplifier.h:26
std::optional< double > minimumClearance
Definition constraintsimplifier.h:27
std::optional< double > maxAreaChangeFraction
Definition constraintsimplifier.h:27
std::optional< double > maxZDeviation
Definition constraintsimplifier.h:26
std::optional< double > maxDeviation
Definition constraintsimplifier.h:26
A polyline that must appear as constrained edges in the mesh.
Definition meshgenerator.h:53
double stripWidth
Definition meshgenerator.h:62
int marker
Preserved on output edges.
Definition meshgenerator.h:55
QVector< QPointF > path
>= 2 points; consecutive pairs become constrained edges.
Definition meshgenerator.h:54
QString tag
Resolved later via the marker→tag lookup the caller maintains.
Definition meshgenerator.h:56
Definition constraintsimplifier.h:51
std::function< bool()> cancelled
Definition constraintsimplifier.h:53
quint64 maximumWorkspaceBytes
Definition constraintsimplifier.h:59
QVector< QPointF > protectedPoints
Definition constraintsimplifier.h:52
quint64 workBudget
Definition constraintsimplifier.h:56
bool canonicalizeSharedEdges
Definition constraintsimplifier.h:57
Definition constraintsimplifier.h:11
double maxDeviation
Definition constraintsimplifier.h:14
Mode mode
Definition constraintsimplifier.h:13
double minimumClearance
Definition constraintsimplifier.h:19
double maxTurnDegrees
Definition constraintsimplifier.h:16
double maxAreaChange
Definition constraintsimplifier.h:18
Mode
Definition constraintsimplifier.h:12
double maxAreaChangeFraction
Definition constraintsimplifier.h:17
double maxZDeviation
Definition constraintsimplifier.h:15
Definition constraintsimplifier.h:61
bool ok
Definition constraintsimplifier.h:62
quint64 sharedChains
Definition constraintsimplifier.h:66
quint64 sharedSegments
Definition constraintsimplifier.h:66
bool cancelled
Definition constraintsimplifier.h:62
QVector< SimplificationFeature > features
Definition constraintsimplifier.h:64
QVector< SimplificationChange > changes
Definition constraintsimplifier.h:65
QString error
Definition constraintsimplifier.h:63
quint64 workUsed
Definition constraintsimplifier.h:66
Result of MeshGenerator::generate.
Definition meshresult.h:181
A cell in the mesh — a triangle or (since the engine's mixed tri-quad meshes, workplans/TRI_QUAD_MESH...
Definition meshresult.h:62
int v2
Definition meshresult.h:63
int v1
Definition meshresult.h:63
int v3
Fourth vertex of a quadrilateral; -1 = triangle.
Definition meshresult.h:64
int v0
Definition meshresult.h:63
QString tag
Definition meshresult.h:65
Definition cellplanner.h:28
QString reason
Definition cellplanner.h:30
bool cancelled
Definition cellplanner.h:29
bool ok
Definition cellplanner.h:29
bool repairable
Definition cellplanner.h:29
Definition cellplanner.h:10
QString source
Definition cellplanner.h:11
QString reason
Definition cellplanner.h:11
int repairRounds
Definition cellplanner.h:16
quint64 cells
Definition cellplanner.h:15
PatchDisposition disposition
Definition cellplanner.h:14
int region
Definition cellplanner.h:12
bool required
Definition cellplanner.h:13
Definition cellplanner.h:63
double firstSize
Definition cellplanner.h:65
int second
Definition cellplanner.h:64
int first
Definition cellplanner.h:64
double secondSize
Definition cellplanner.h:65
Definition cellplanner.h:67
QVector< PatchInterfaceConflict > examples
Definition cellplanner.h:72
QString error
Definition cellplanner.h:69
bool cancelled
Definition cellplanner.h:68
quint64 violations
Definition cellplanner.h:70
bool ok
Definition cellplanner.h:68
quint64 sharedFaces
Definition cellplanner.h:70
double largestRatio
Definition cellplanner.h:71
Definition cellplanner.h:18
std::function< double(const QRectF &)> maximumSize
Definition cellplanner.h:23
double minimumAngleDegrees
Definition cellplanner.h:19
std::function< double(double, double)> elevationAt
Definition cellplanner.h:24
double terrainTolerance
Definition cellplanner.h:21
double alongSize
Definition cellplanner.h:20
double maximumAspect
Definition cellplanner.h:19
double minimumEdge
Definition cellplanner.h:19
std::function< double(const QRectF &)> terrainToleranceForFootprint
Definition cellplanner.h:22
double alongAngleDegrees
Definition cellplanner.h:20
double acrossSize
Definition cellplanner.h:20
std::function< bool()> cancelled
Definition cellplanner.h:26
std::function< double(const QPointF *, const double *)> terrainBound
Definition cellplanner.h:25
A polyline through a patch's vertices that must be reported as mesh edges with a marker — a conduit r...
Definition meshpatch.h:73
QVector< int > path
Local vertex indices, consecutive ones joined by quad edges.
Definition meshpatch.h:74
QString tag
Definition meshpatch.h:76
int marker
Definition meshpatch.h:75
A generated patch in local indices. Quads are emitted CCW.
Definition meshpatch.h:80
QVector< MeshTriangle > quads
v3 >= 0, local indices.
Definition meshpatch.h:82
QString tag
Definition meshpatch.h:84
QVector< PatchLine > lines
Definition meshpatch.h:87
QVector< QPair< int, int > > boundarySegments
Local index pairs around the patch.
Definition meshpatch.h:83
QVector< QPointF > xy
Definition meshpatch.h:81
Local cell size on a regular grid; NaN marks unusable cells.
Definition quadblocks.h:34
int cols
Definition quadblocks.h:37
QPointF origin
Lower-left corner of cell (0, 0).
Definition quadblocks.h:35
int rows
Definition quadblocks.h:37
QVector< float > h
Row-major, cols x rows.
Definition quadblocks.h:38
double pitch
Definition quadblocks.h:36
Definition quadblocks.h:53
int maxBlocks
Definition quadblocks.h:57
double minSpacing
Blocks finer than this are not worth a patch.
Definition quadblocks.h:54
int minQuadsPerSide
Definition quadblocks.h:56
double bandRatio
Size bands are powers of this.
Definition quadblocks.h:55
Definition cellplanner.h:49
QVector< int > patchRegions
Definition cellplanner.h:53
bool resourceLimited
Definition cellplanner.h:50
QVector< PatchDecision > decisions
Definition cellplanner.h:54
quint64 workUsed
Definition cellplanner.h:55
bool ok
Definition cellplanner.h:50
QVector< PatchMesh > patches
Definition cellplanner.h:52
bool cancelled
Definition cellplanner.h:50
quint64 plannedCells
Definition cellplanner.h:55
quint64 sharedSides
Definition cellplanner.h:55
QString error
Definition cellplanner.h:51
Definition cellplanner.h:43
QVector< QVector< QPointF > > lines
Definition cellplanner.h:45
QVector< PatchMesh > fixedPatches
Definition cellplanner.h:47
QVector< QPolygonF > domains
Definition cellplanner.h:44
QVector< QPolygonF > holes
Definition cellplanner.h:44
QVector< QPointF > pins
Definition cellplanner.h:46
Definition cellplanner.h:33
quint64 maximumWorkspaceBytes
Definition cellplanner.h:39
quint64 maximumPatchCells
Definition cellplanner.h:38
double defaultSize
Definition cellplanner.h:35
std::function< bool(const QPolygonF &)> excluded
Definition cellplanner.h:41
bool allowQuads
Definition cellplanner.h:34
quint64 workBudget
Definition cellplanner.h:39
int maximumRepairRounds
Definition cellplanner.h:37
quint64 maximumCells
Definition cellplanner.h:38
PatchLimits limits
Definition cellplanner.h:36
Definition meshquadregion.h:45
bool automaticCandidate
Derived candidate; no outline constraint on fallback.
Definition meshquadregion.h:61
QPolygonF ring
Closed (last == first optional), simple, any orientation.
Definition meshquadregion.h:46
double mappedAlongAngleDeg
Physical undirected along-axis, degrees from +x CCW; independent of ring start.
Definition meshquadregion.h:68
QVector< int > corners
Mapped: 4 ring vertex indices in ring order; empty = auto-pick.
Definition meshquadregion.h:76
QString tag
MeshTriangle::tag for every cell inside; empty = inherit region marker's.
Definition meshquadregion.h:77
double aspectMax
Free: opposite-side mean ratio cap; < 0 inherits global, 0 unbounded, >= 1 explicit.
Definition meshquadregion.h:70
double hAlong
Definition meshquadregion.h:65
bool directionalSpacing
Explicit Mapped spacing; failure must not fall back to isotropic cells.
Definition meshquadregion.h:63
QVector< QPointF > alignGuide
Free: optional polyline the field aligns to (streets, channels).
Definition meshquadregion.h:75
double alignAngleDeg
Definition meshquadregion.h:73
bool hasAlignAngle
Free: constant cross field at alignAngleDeg (from +x, CCW).
Definition meshquadregion.h:72
QVector< QPolygonF > holes
Definition meshquadregion.h:51
double hAcross
Positive spacings in mesh CRS units, used only when directionalSpacing.
Definition meshquadregion.h:66
QuadRegionMode mode
Definition meshquadregion.h:59
bool isBackground
Definition meshquadregion.h:58
double spacing
Target quad edge length h; 0 = derive from the size field / max area.
Definition meshquadregion.h:62
bool requireMapped
Explicit hard requirement, used by unified planning.
Definition meshquadregion.h:60
Definition constraintsimplifier.h:43
bool rolledBack
Definition constraintsimplifier.h:47
qsizetype rejectedShortcuts
Definition constraintsimplifier.h:45
double areaChange
Definition constraintsimplifier.h:46
QVector< int > sourceVertices
Definition constraintsimplifier.h:49
double maxZDeviation
Definition constraintsimplifier.h:46
QString id
Definition constraintsimplifier.h:44
double maxDeviation
Definition constraintsimplifier.h:46
bool budgetRetained
Definition constraintsimplifier.h:47
qsizetype removed
Definition constraintsimplifier.h:45
Definition constraintsimplifier.h:31
QString label
Definition constraintsimplifier.h:41
QVector< double > z
Definition constraintsimplifier.h:34
ConstraintSimplificationPolicy policy
Definition constraintsimplifier.h:37
bool closed
Definition constraintsimplifier.h:36
Role
Definition constraintsimplifier.h:38
QVector< QPointF > xy
Definition constraintsimplifier.h:33
bool requiredInMesh
Definition constraintsimplifier.h:40
QString id
Definition constraintsimplifier.h:32
enum mesh::SimplificationFeature::Role role
QVector< bool > fixed
Definition constraintsimplifier.h:35
int marker
Definition constraintsimplifier.h:39
Definition sizefield.h:59
std::function< double(double, double)> terrainSizeAt
Definition sizefield.h:91
QVector< QVector< QPointF > > steps
Definition sizefield.h:108
qint64 maxGridCells
Definition sizefield.h:81
double maxSize
Definition sizefield.h:86
double nearSize
Definition sizefield.h:64
double gradation
Definition sizefield.h:71
double areaFloor
Definition sizefield.h:76
QVector< Region > regions
Definition sizefield.h:97
bool footprintBounds
Build a compact min pyramid for verified sizing.
Definition sizefield.h:60
A point that must appear as a vertex in the output mesh.
Definition meshgenerator.h:66
bool hasZ
If true, z is exact — skip DTM re-sampling in post-mesh step.
Definition meshgenerator.h:71
QString tag
Convenience copy (caller can resolve via marker, but stash here too).
Definition meshgenerator.h:69
int marker
Carries a tag id; resolved via marker→tag map.
Definition meshgenerator.h:68
QPointF xy
Definition meshgenerator.h:67
double z
Pre-sampled elevation when hasZ is true (e.g. from DTM thinner).
Definition meshgenerator.h:70
Four-sided patch: corners in cyclic order (either orientation); n subdivisions along corner0→corner1 ...
Definition meshpatch.h:41
QString tag
Definition meshpatch.h:44
int n
Definition meshpatch.h:43
QVector< QPointF > corners
Exactly 4, cyclic.
Definition meshpatch.h:42
int m
Definition meshpatch.h:43
Swept patch: the centreline is offset ±width/2 (mitred at interior vertices) and cut into across quad...
Definition meshpatch.h:51
double along
Definition meshpatch.h:55
QString tag
Definition meshpatch.h:56
double width
Definition meshpatch.h:53
int across
Definition meshpatch.h:54
QVector< QPointF > centreline
>= 2 points.
Definition meshpatch.h:52
Two open bank polylines with independently supplied directions. Endpoints are paired by minimum total...
Definition patch.hpp:58
int across
Definition patch.hpp:60
double along
Definition patch.hpp:61
Vector< Point2 > bankA
Definition patch.hpp:59
Vector< Point2 > bankB
Definition patch.hpp:59
Text tag
Definition patch.hpp:62
Definition constraintaudit.hpp:16
int segment
Definition constraintaudit.hpp:18
Text message
Definition constraintaudit.hpp:17
Text featureId
Definition constraintaudit.hpp:17
Definition constraintaudit.hpp:9
std::uint64_t maximumWorkspaceBytes
Definition constraintaudit.hpp:13
std::uint64_t workBudget
Definition constraintaudit.hpp:12
Vector< Point2 > protectedPoints
Definition constraintaudit.hpp:10
std::function< bool()> cancelled
Definition constraintaudit.hpp:11
int maximumExamples
Definition constraintaudit.hpp:14
Definition constraintaudit.hpp:20
bool complete
Definition constraintaudit.hpp:21
std::uint64_t featuresChecked
Definition constraintaudit.hpp:23
double coordinateRoundoff
Definition constraintaudit.hpp:26
double maximumAreaChange
Definition constraintaudit.hpp:25
double maximumXYDeviation
Definition constraintaudit.hpp:25
std::uint64_t cellsChecked
Definition constraintaudit.hpp:23
bool resourceLimited
Definition constraintaudit.hpp:21
bool ok
Definition constraintaudit.hpp:21
std::uint64_t violations
Definition constraintaudit.hpp:23
Text error
Definition constraintaudit.hpp:22
Vector< ConstraintAuditExample > examples
Definition constraintaudit.hpp:27
bool cancelled
Definition constraintaudit.hpp:21
std::uint64_t workUsed
Definition constraintaudit.hpp:24
double maximumZDeviation
Definition constraintaudit.hpp:25
std::uint64_t segmentsChecked
Definition constraintaudit.hpp:23
Definition constraints.hpp:22
std::optional< double > minimumClearance
Definition constraints.hpp:25
std::optional< double > maxTurnDegrees
Definition constraints.hpp:24
std::optional< double > maxDeviation
Definition constraints.hpp:24
std::optional< double > maxAreaChangeFraction
Definition constraints.hpp:24
int mode
Definition constraints.hpp:23
std::optional< double > maxZDeviation
Definition constraints.hpp:24
Definition planmodel.hpp:141
Vector< Point2 > path
Definition planmodel.hpp:142
double stripWidth
Definition planmodel.hpp:145
int marker
Definition planmodel.hpp:143
Text tag
Definition planmodel.hpp:144
Definition constraints.hpp:49
std::uint64_t maximumWorkspaceBytes
Definition constraints.hpp:57
Vector< Point2 > protectedPoints
Definition constraints.hpp:50
std::function< bool()> cancelled
Definition constraints.hpp:51
bool canonicalizeSharedEdges
Definition constraints.hpp:55
std::uint64_t workBudget
Definition constraints.hpp:54
Definition constraints.hpp:9
double minimumClearance
Definition constraints.hpp:17
Mode mode
Definition constraints.hpp:11
double maxAreaChange
Definition constraints.hpp:16
double maxDeviation
Definition constraints.hpp:12
double maxZDeviation
Definition constraints.hpp:13
double maxTurnDegrees
Definition constraints.hpp:14
double maxAreaChangeFraction
Definition constraints.hpp:15
Definition constraints.hpp:59
bool cancelled
Definition constraints.hpp:60
Vector< SimplificationFeature > features
Definition constraints.hpp:62
bool ok
Definition constraints.hpp:60
Text error
Definition constraints.hpp:61
std::uint64_t workUsed
Definition constraints.hpp:64
Vector< SimplificationChange > changes
Definition constraints.hpp:63
std::uint64_t sharedSegments
Definition constraints.hpp:64
std::uint64_t sharedChains
Definition constraints.hpp:64
Definition planmodel.hpp:96
int v0
Definition planmodel.hpp:97
int v1
Definition planmodel.hpp:97
int marker
Definition planmodel.hpp:97
Definition planmodel.hpp:134
bool ok
Definition planmodel.hpp:138
ReadArray< MeshVertex > vertices
Definition planmodel.hpp:135
Text errorMsg
Definition planmodel.hpp:139
Definition planmodel.hpp:78
Text tag
Definition planmodel.hpp:80
int v1
Definition planmodel.hpp:79
int v2
Definition planmodel.hpp:79
int v3
Definition planmodel.hpp:79
int v0
Definition planmodel.hpp:79
Definition planning.hpp:29
bool ok
Definition planning.hpp:30
bool cancelled
Definition planning.hpp:30
bool repairable
Definition planning.hpp:30
Text reason
Definition planning.hpp:31
Definition planning.hpp:11
std::uint64_t cells
Definition planning.hpp:16
Text source
Definition planning.hpp:12
int region
Definition planning.hpp:13
int repairRounds
Definition planning.hpp:17
PatchDisposition disposition
Definition planning.hpp:15
bool required
Definition planning.hpp:14
Text reason
Definition planning.hpp:12
Definition planning.hpp:64
int second
Definition planning.hpp:65
int first
Definition planning.hpp:65
double firstSize
Definition planning.hpp:66
double secondSize
Definition planning.hpp:66
Definition planning.hpp:68
std::uint64_t sharedFaces
Definition planning.hpp:71
bool ok
Definition planning.hpp:69
Vector< PatchInterfaceConflict > examples
Definition planning.hpp:73
bool cancelled
Definition planning.hpp:69
Text error
Definition planning.hpp:70
double largestRatio
Definition planning.hpp:72
std::uint64_t violations
Definition planning.hpp:71
Definition planning.hpp:19
double minimumEdge
Definition planning.hpp:20
std::function< double(double, double)> elevationAt
Definition planning.hpp:25
double alongSize
Definition planning.hpp:21
double alongAngleDegrees
Definition planning.hpp:21
std::function< double(const Box2 &)> terrainToleranceForFootprint
Definition planning.hpp:23
std::function< bool()> cancelled
Definition planning.hpp:27
std::function< double(const Box2 &)> maximumSize
Definition planning.hpp:24
double acrossSize
Definition planning.hpp:21
std::function< double(const Point2 *, const double *)> terrainBound
Definition planning.hpp:26
double minimumAngleDegrees
Definition planning.hpp:20
double terrainTolerance
Definition planning.hpp:22
double maximumAspect
Definition planning.hpp:20
A polyline through a patch's vertices that must be reported as mesh edges with a marker — a conduit r...
Definition patch.hpp:67
int marker
Definition patch.hpp:69
Vector< int > path
Local vertex indices, consecutive ones joined by quad edges.
Definition patch.hpp:68
Text tag
Definition patch.hpp:70
A generated patch in local indices. Quads are emitted CCW.
Definition patch.hpp:74
Vector< PatchLine > lines
Definition patch.hpp:81
Vector< Point2 > xy
Definition patch.hpp:75
Text tag
Definition patch.hpp:78
Vector< std::pair< int, int > > boundarySegments
Local index pairs around the patch.
Definition patch.hpp:77
Vector< MeshTriangle > quads
v3 >= 0, local indices.
Definition patch.hpp:76
Local cell size on a regular grid; NaN marks unusable cells.
Definition blocks.hpp:30
int rows
Definition blocks.hpp:33
Point2 origin
Lower-left corner of cell (0, 0).
Definition blocks.hpp:31
int cols
Definition blocks.hpp:33
Vector< float > h
Row-major, cols x rows.
Definition blocks.hpp:34
double pitch
Definition blocks.hpp:32
int minQuadsPerSide
Definition blocks.hpp:52
double minSpacing
Blocks finer than this are not worth a patch.
Definition blocks.hpp:50
double bandRatio
Size bands are powers of this.
Definition blocks.hpp:51
int maxBlocks
Definition blocks.hpp:53
Definition planning.hpp:50
std::uint64_t plannedCells
Definition planning.hpp:56
Text error
Definition planning.hpp:52
std::uint64_t sharedSides
Definition planning.hpp:56
bool ok
Definition planning.hpp:51
Vector< PatchDecision > decisions
Definition planning.hpp:55
bool cancelled
Definition planning.hpp:51
Vector< int > patchRegions
Definition planning.hpp:54
std::uint64_t workUsed
Definition planning.hpp:56
bool resourceLimited
Definition planning.hpp:51
Vector< PatchMesh > patches
Definition planning.hpp:53
Definition planning.hpp:44
Vector< Polygon > domains
Definition planning.hpp:45
Vector< Vector< Point2 > > lines
Definition planning.hpp:46
Vector< PatchMesh > fixedPatches
Definition planning.hpp:48
Vector< Point2 > pins
Definition planning.hpp:47
Vector< Polygon > holes
Definition planning.hpp:45
Definition planning.hpp:34
std::uint64_t maximumWorkspaceBytes
Definition planning.hpp:40
bool allowQuads
Definition planning.hpp:35
int maximumRepairRounds
Definition planning.hpp:38
PatchLimits limits
Definition planning.hpp:37
std::uint64_t maximumCells
Definition planning.hpp:39
std::uint64_t maximumPatchCells
Definition planning.hpp:39
std::uint64_t workBudget
Definition planning.hpp:40
double defaultSize
Definition planning.hpp:36
std::function< bool(const Polygon &)> excluded
Definition planning.hpp:42
Definition regions.hpp:39
bool hasAlignAngle
Free: constant cross field at alignAngleDeg (from +x, CCW).
Definition regions.hpp:67
Text tag
MeshTriangle::tag for every cell inside; empty = inherit region marker's.
Definition regions.hpp:71
double hAcross
Positive spacings in mesh CRS units, used only when directionalSpacing.
Definition regions.hpp:61
double alignAngleDeg
Definition regions.hpp:68
double mappedAlongAngleDeg
Physical undirected along-axis, degrees from +x CCW; independent of ring start.
Definition regions.hpp:63
double aspectMax
Free: opposite-side mean ratio cap; < 0 inherits global, 0 unbounded, >= 1 explicit.
Definition regions.hpp:65
QuadRegionMode mode
Definition regions.hpp:54
bool automaticCandidate
Derived candidate; no outline constraint on fallback.
Definition regions.hpp:56
Vector< int > corners
Mapped: 4 ring vertex indices in ring order; empty = auto-pick.
Definition regions.hpp:70
bool isBackground
Definition regions.hpp:53
bool requireMapped
Explicit hard requirement, used by unified planning.
Definition regions.hpp:55
Vector< Polygon > holes
Definition regions.hpp:46
Polygon ring
Closed (last == first optional), simple, any orientation.
Definition regions.hpp:41
double spacing
Target quad edge length h; 0 = derive from the size field / max area.
Definition regions.hpp:57
bool directionalSpacing
Explicit Mapped spacing; failure must not fall back to isotropic cells.
Definition regions.hpp:58
Vector< Point2 > alignGuide
Free: optional polyline the field aligns to (streets, channels).
Definition regions.hpp:69
double hAlong
Definition regions.hpp:60
Definition constraints.hpp:41
std::ptrdiff_t rejectedShortcuts
Definition constraints.hpp:43
Text id
Definition constraints.hpp:42
double areaChange
Definition constraints.hpp:44
double maxZDeviation
Definition constraints.hpp:44
double maxDeviation
Definition constraints.hpp:44
Vector< int > sourceVertices
Definition constraints.hpp:47
bool budgetRetained
Definition constraints.hpp:45
std::ptrdiff_t removed
Definition constraints.hpp:43
bool rolledBack
Definition constraints.hpp:45
Definition constraints.hpp:29
Vector< double > z
Definition constraints.hpp:32
int marker
Definition constraints.hpp:37
bool closed
Definition constraints.hpp:34
Vector< Point2 > xy
Definition constraints.hpp:31
Text label
Definition constraints.hpp:39
ConstraintSimplificationPolicy policy
Definition constraints.hpp:35
bool requiredInMesh
Definition constraints.hpp:38
Vector< bool > fixed
Definition constraints.hpp:33
Text id
Definition constraints.hpp:30
enum meshkit::plan::SimplificationFeature::Role role
Definition sizefield.hpp:55
double areaFloor
Definition sizefield.hpp:72
bool footprintBounds
Build a compact min pyramid for verified sizing.
Definition sizefield.hpp:56
double maxSize
Definition sizefield.hpp:82
Vector< Vector< Point2 > > steps
Definition sizefield.hpp:105
double nearSize
Definition sizefield.hpp:60
Vector< Region > regions
Definition sizefield.hpp:93
std::function< double(double, double)> terrainSizeAt
Definition sizefield.hpp:87
std::int64_t maxGridCells
Definition sizefield.hpp:77
double gradation
Definition sizefield.hpp:67
Definition planmodel.hpp:147
Point2 xy
Definition planmodel.hpp:148
bool hasZ
Definition planmodel.hpp:152
double z
Definition planmodel.hpp:151
int marker
Definition planmodel.hpp:149
Text tag
Definition planmodel.hpp:150
Four-sided patch: corners in cyclic order (either orientation); n subdivisions along corner0→corner1 ...
Definition patch.hpp:35
int n
Definition patch.hpp:37
int m
Definition patch.hpp:37
Vector< Point2 > corners
Exactly 4, cyclic.
Definition patch.hpp:36
Text tag
Definition patch.hpp:38
Swept patch: the centreline is offset ±width/2 (mitred at interior vertices) and cut into across quad...
Definition patch.hpp:45
Vector< Point2 > centreline
>= 2 points.
Definition patch.hpp:46
Text tag
Definition patch.hpp:50
double width
Definition patch.hpp:47
int across
Definition patch.hpp:48
double along
Definition patch.hpp:49
double b
Definition terrainerrorfield.cpp:42
double c
Definition terrainerrorfield.cpp:42