Class FinerCoverage
The data coverage of a finer chart cell that hides an overlapping coarser cell where both draw: the coarser cell's layers are clipped to exclude it, so the two don't double-draw (cross-cell scale-band overlap suppression, as the viewer applies it).
public sealed class FinerCoverage
- Inheritance
-
FinerCoverage
- Inherited Members
Remarks
The coverage only hides while the finer cell is itself drawing, so a viewport zoomed out past MaximumScaleDenominator shows the coarser cell in full instead of a blank hole. Rings are filled with the even-odd rule, so a no-coverage hole in the finer cell lets the coarser cell show through.
Constructors
FinerCoverage(IReadOnlyList<IReadOnlyList<(double X, double Y)>>, double?)
Creates a finer coverage.
public FinerCoverage(IReadOnlyList<IReadOnlyList<(double X, double Y)>> worldRings, double? maximumScaleDenominator)
Parameters
worldRingsIReadOnlyList<IReadOnlyList<(double X, double Y)>>The coverage rings in EPSG:3857 metres, exterior rings and holes alike.
maximumScaleDenominatordouble?The coarsest scale denominator at which the finer cell still draws, such as its minimum display scale, or null when it draws at every scale.
Properties
Bounds
The EPSG:3857 bounds of WorldRings.
public (double MinX, double MinY, double MaxX, double MaxY) Bounds { get; }
Property Value
IsEmpty
Whether the coverage has at least one ring of three or more points.
public bool IsEmpty { get; }
Property Value
MaximumScaleDenominator
The coarsest scale denominator at which the finer cell draws, or null for every scale.
public double? MaximumScaleDenominator { get; }
Property Value
WorldRings
The coverage rings in EPSG:3857 metres.
public IReadOnlyList<IReadOnlyList<(double X, double Y)>> WorldRings { get; }
Property Value
- IReadOnlyList<IReadOnlyList<(double X, double Y)>>
Methods
IsActiveAt(double, bool)
Whether the finer cell draws at scaleDenominator, and
so hides the coarser cell there.
public bool IsActiveAt(double scaleDenominator, bool honorScaleVisibility)
Parameters
scaleDenominatordoubleThe viewport's scale denominator.
honorScaleVisibilityboolWhether scale visibility is applied at all; without it the finer cell draws at every scale.