QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
SurfaceAnalysis Namespace Reference

Classes

struct  BadHeights
 
struct  Hole
 
struct  Report
 
struct  Seam
 
struct  ViewState
 

Enumerations

enum class  SeamCause { PendingFlat , DegradedFlat , LodTJunction , SameZoomMismatch }
 
enum class  HoleCause { NoPatch , SuppressedCovered , ElevatedTerrainCulled }
 

Functions

QString seamCauseDescription (SeamCause cause)
 
QString holeCauseDescription (HoleCause cause)
 
Report analyze (const QList< SurfaceModel::Patch > &patches, int gridSize, const ViewState &view, double minStep)
 

Detailed Description

Diagnostic pass over the rendered patch set: finds anything visibly wrong with the surface and classifies why it exists. Checks:

  • coverage holes: visible screen points with no rendered geometry under them
  • camera below the rendered surface (view clips into the mesh)
  • seams: height discontinuities ("cliffs") along patch boundaries
  • non-finite height data (NaN/inf vertices)

Enumeration Type Documentation

◆ HoleCause

enum class SurfaceAnalysis::HoleCause
strong
Enumerator
NoPatch 

no resident patch covers the visible point at all

SuppressedCovered 

only a covered (render-suppressed) patch spans the point

ElevatedTerrainCulled 

sightline passes below nearby terrain height over unrendered ground

Definition at line 27 of file SurfaceAnalysis.h.

◆ SeamCause

enum class SurfaceAnalysis::SeamCause
strong
Enumerator
PendingFlat 

a patch renders flat because its heights are still loading

DegradedFlat 

a patch renders flat because terrain fetches failed (retries exhausted)

LodTJunction 

fine edge vertices vs the coarse neighbor's interpolated edge

SameZoomMismatch 

same zoom, same scale: unexpected sampling inconsistency

Definition at line 19 of file SurfaceAnalysis.h.

Function Documentation

◆ analyze()

◆ holeCauseDescription()

QString SurfaceAnalysis::holeCauseDescription ( HoleCause  cause)

Definition at line 254 of file SurfaceAnalysis.cc.

References ElevatedTerrainCulled, NoPatch, and SuppressedCovered.

Referenced by SurfaceAnalysis::Report::text().

◆ seamCauseDescription()

QString SurfaceAnalysis::seamCauseDescription ( SeamCause  cause)

Definition at line 238 of file SurfaceAnalysis.cc.

References DegradedFlat, LodTJunction, PendingFlat, and SameZoomMismatch.

Referenced by SurfaceAnalysis::Report::text().