SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
mesh::QuadPointOptions Struct Reference

#include <meshquadpoints.h>

Collaboration diagram for mesh::QuadPointOptions:

Public Attributes

double h = 0.0
 Lattice spacing (map units), required > 0.
 
std::function< double(double, double)> hAt
 
double hMin = 0.0
 Lower clamp for hAt; <= 0 = derived by sampling.
 
double hMax = 0.0
 Upper clamp for hAt; <= 0 = derived by sampling.
 
double boundaryClearance = 0.5
 Reject an interior point closer than this·h to the ring.
 
double minSeparation = 0.7
 Reject a point closer than this·h to any existing point.
 
double templateSnap = 0.35
 Nearest-point tolerance (·h) when recognising a square.
 
int maxPoints = 5000000
 Safety cap on generated points.
 

Member Data Documentation

◆ boundaryClearance

double mesh::QuadPointOptions::boundaryClearance = 0.5

Reject an interior point closer than this·h to the ring.

◆ h

double mesh::QuadPointOptions::h = 0.0

Lattice spacing (map units), required > 0.

◆ hAt

std::function<double(double, double)> mesh::QuadPointOptions::hAt

Optional graded spacing (QUAD_EVERYWHERE_PLAN_2026-09-07.md §3.2). When set it supersedes h everywhere: the boundary-layer offset, the front step, the clearance / separation radii and the template snap all use the spacing at the point being tested. h remains the fallback for a non-finite or non-positive sample, and the reference when the callback is null — with a null callback the output is identical to the uniform lattice.

ASSUMPTION (holds for mesh::SizeField, which is Lipschitz by construction: h = nearSize + gradation·d): the spacing varies slowly enough that points within one separation radius of each other differ by less than one octave. The neighbour search relies on it to stay O(1) per query — see the leveled grid in the .cpp. hMin / hMax bound the sampled value regardless.

◆ hMax

double mesh::QuadPointOptions::hMax = 0.0

Upper clamp for hAt; <= 0 = derived by sampling.

◆ hMin

double mesh::QuadPointOptions::hMin = 0.0

Lower clamp for hAt; <= 0 = derived by sampling.

◆ maxPoints

int mesh::QuadPointOptions::maxPoints = 5000000

Safety cap on generated points.

◆ minSeparation

double mesh::QuadPointOptions::minSeparation = 0.7

Reject a point closer than this·h to any existing point.

◆ templateSnap

double mesh::QuadPointOptions::templateSnap = 0.35

Nearest-point tolerance (·h) when recognising a square.


The documentation for this struct was generated from the following file: