MapterhornEndpoints

Mapterhorn's two-tier PMTiles layout, ported from the sibling iOS app's mapterhorn-data-contract.md: a single global archive always available at low zoom, plus per-region high-res archives keyed by their own z6 tile coordinate, present only where source data coverage allows.

No API key, no documented rate limit (Cloudflare R2-backed, per docs.mapterhorn.com/data-access) — same no-auth, range-requestable shape as the base layer's Protomaps source.

Properties

Link copied to clipboard
const val ATTRIBUTION: String

What to show on screen whenever terrain (hillshade or contours) is actively rendering.

Link copied to clipboard
Link copied to clipboard
const val GLOBAL_MAX_ZOOM: Int = 12

Global coverage tops out at this zoom; deeper detail (if any) only exists in a regional archive.

Link copied to clipboard
Link copied to clipboard
const val REGIONAL_MAX_ZOOM: Int = 18

Regional archives never go deeper than this, even where source data would allow it.

Link copied to clipboard
const val REGIONAL_MIN_ZOOM: Int = 13

Regional archives start where global coverage ends.

Functions

Link copied to clipboard

The regional archive URL for bounds, or null if bounds doesn't fit inside one z6 tile — matching iOS's "global-only terrain is normal, never an error" rule: a region spanning more than one z6 tile just gets no regional detail, rather than trying to stitch multiple regional archives together.