Die Mathematik von Kartenkacheln interaktiv erklärt

Tele ← 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 → Makro
14 / 8504 / 5473
N 51.165567°
E  6.855469°
← 1 532.11 m → N 51.165567°
E  6.877442°

1 532.29 m

1 532.29 m
N 51.151786°
E  6.855469°
← 1 532.57 m →
2 347 989 m²
N 51.151786°
E  6.877442°

Die Berechnung

  1. Aus der URL werden die geographischen Koordinaten übernommen:
    Name Parameter Wert Wertebereich Erklärung zum Wertebereich
    Länge in Grad lon 6.8655° -180°…+180° Die Merkatortransformation läßt die Länge unverändert, vergrößert aber die Breite. Der Wertebereich der Breite ist so gewählt, dass die Transformation den erlaubten Bereich von Länge und Breite auf eine quadratische Fläche abbildet. Wenn jemand Sie fragen sollte, wie das Limit für die Breite berechnet wird: der ist, Taschenrechner flugs auf Degrees eingestellt, E hoch PI, davon der Arcus Tangens mal zwei, das Ganze minus 90°. Mit PHP: php -r 'echo 2*atan(exp(pi())) * 180/pi() - 90;', mit JavaScript 2*Math.atan(Math.exp(Math.PI)) * 180/Math.PI - 90.
    Breite in Grad lat 51.1578° -85°…+85°
    Vergrößerungsstufe zoom 14 0… Keine obere Grenze. Es sollte aber Kacheln für die gewählte Stufe geben.
  2. Länge und Breite werden in das Bogenmaß umgerechnet (Multiplikation mit π/180°):
    Name Formel Berechnung Ergebnis
    Länge (λ) Länge in Grad × π ÷ 180° 6.8655 × 3.1415926535 ÷ 180 λ = 0.119825579792246
    Breite (φ) Breite in Grad × π ÷ 180° 51.1578 × 3.1415926535 ÷ 180 φ = 0.892872048051235
  3. Länge und Breite werden durch die Mercator-Projektion transformiert:
    Name Formel Berechnung Ergebnis
    Länge (Λ) λ (unverändert) 0.119825579792246} Λ = 0.119825579792246}
    Breite (Φ) log (tan φ + sec φ) =
    log (tan φ + 1/cos φ)
    log (tan 0.892872048051235 + 1/cos 0.892872048051235) =
    log 1.24187500346969 + 1/0.627177646342629) =
    log 1.24187500346969 + 1.59444458174088) =
    log 2.83631958521056
    Φ = 1.04250729104121
  4. Länge und Breite werden in das Karten-Koordinatensystem transformiert.
    Dieses beginnt links oben mit [0,0] und endet rechts unten mit [1,1]:
    Name Formel Berechnung Ergebnis
    X-Position (x) (1 + Λ/π) ÷ 2 (1 + 0.119825579792246/3.1415926535) ÷ 2 x = 0.519070833333333
    Y-Position (y) (1 - Φ/π) ÷ 2 (1 - 1.04250729104121/3.1415926535) ÷ 2 y = 0.334079811416708
  5. Aus der Kartenposition x=0.519070833333333 y=0.334079811416708 und der Vergrößerungsstufe zoom=14 berechnen wir die Kachelnummer:
    Name Formel Berechnung Ergebnis
    Kachel-X (tx) floor (x × 2zoom) floor (0.519070833333333 × 214)
    floor (0.519070833333333 × 16384)
    floor (8504.45653333333)
    tx = 8504
    Kachel-Y (ty) floor (y × 2zoom) floor (0.334079811416708 × 214)
    floor (0.334079811416708 × 16384)
    floor (5473.56363025134)
    ty = 5473
    Kachel-Pfad (ti) "zoom/tx/tz" 14 / 8504 / 5473 ti = "14/8504/5473"
  6. Anzeige der Kachel https://a.tile.openstreetmap.org/14/8504/5473.png und Kaffeepause.
  7. Aus den Nachkommastellen 0.456533333333937 und 0.563630251337599 sowie der Kachelgröße in Pixeln tilesize=256 berechnen wir die Position des Markers:
    Name Formel Berechnung Ergebnis
    Marker-X (px) floor (fract (x × 2zoom) * tilesize) floor (fract (0.519070833333333 × 214) × 256)
    floor (fract (0.519070833333333 × 16384) × 256)
    floor (fract (8504.45653333333) × 256)
    floor (0.456533333333937 × 256)
    floor (116.872533333488)
    px = 116
    Marker-Y (py) floor (fract (y × 2zoom) * tilesize) floor (fract (0.334079811416708 × 214) × 256)
    floor (fract (0.334079811416708 × 16384) × 256)
    floor (fract (5473.56363025134) × 256)
    floor (0.563630251337599 × 256)
    floor (144.289344342425)
    py = 144
  8. Wir berechnen aus der Kachelnummer die Koordinaten der linken oberen Kachelecke.
    Name Formel Berechnung Ergebnis
    X-Position (x) tx ÷ 2tz 8504 ÷ 214
    8504 ÷ 16384
    x = 0.51904296875
    Y-Position (y) ty ÷ 2tz 5473 ÷ 214
    5473 ÷ 16384
    y = 0.33404541015625
    Länge (Λ)
    (Merkator)
    +(x × 2 - 1) × π +(0.51904296875 × 2 - 1) × π
    0.0380859375 × 3.1415926535
    Λ = 0.11965050
    Breite (Φ)
    (Merkator)
    -(y × 2 - 1) × π -(0.33404541015625 × 2 - 1) × π
    0.3319091796875 × 3.1415926535
    Φ = 1.04272344053546
    Länge (λ) Λ (unverändert) 0.11965050} λ = 0.11965050}
    Breite (φ) 2×atan(exp(Φ))-π/2 2×atan(exp(1.04272344053546))-π/2
    2×atan(2.8369327205165)-π/2
    2×1.23190196378303-π/2
    2.46380392756606-1.57079632675
    φ = 0.89300760
    Länge in Grad λ ÷ π × 180° 0.11965050} ÷ 3.1415926535 × 180° lon = 6.855469°
    Breite in Grad φ ÷ π × 180° 0.89300760 ÷ 3.1415926535 × 180° lat = 51.165567°
  9. Die Koordinaten der anderen Ecken werden aus den Kachelnummern der Nachbarkacheln berechnet:
    Ecke tx ty λ φ Länge in Grad Breite in Grad
    Oben links KachelX 8504 KachelY 5473 0.11965050 0.89300760 6.855469 51.165567
    Oben rechts KachelX + 1 8505 KachelY 5473 0.12003400 0.89300760 6.877442 51.165567
    Unten links KachelX 8504 KachelY + 1 5474 0.11965050 0.89276709 6.855469 51.151786
    Unten rechts KachelX + 1 8505 KachelY + 1 5474 0.12003400 0.89276709 6.877442 51.151786
  10. Die Kantenlängen werden aus den Koordinaten der Eckpunkte sowie dem Erdradius R berechnet:
    Name Formel Berechnung Ergebnis
    Linke Seite abs(φOLUL) × R abs(0.89300760-0.89276709) × R
    0.000240510000000027 × 6371000
    dl = 1532.28921000017m
    Rechte Seite abs(φORUR) × R abs(0.89300760-0.89276709) × R
    0.000240510000000027 × 6371000
    dr = 1532.28921000017m
    Obere Seite abs(λOLOR) × cos(φOL) × R abs(0.11965050-0.12003400) × cos(0.89300760) × R
    0.000383499999999995 × 0.627072062388554 × 6371000
    do = 1532.11168798459m
    Untere Seite abs(λULUR) × cos(φUL) × R abs(0.11965050-0.12003400) × cos(0.89276709) × R
    0.000383499999999995 × 0.627259392220409 × 6371000
    du = 1532.56938693517m
  11. Die Fläche wird aus den Koordinaten von linker oberer und rechter unterer Ecke sowie dem Erdradius R berechnet:
    Name Formel Berechnung Ergebnis
    Fläche abs(λ12)×abs(sinφ1-sinφ2)× abs(λ12)×abs(sin(0.89300760)-sin(0.89276709))×
    abs(λ12)×abs(0.627072062388554-0.627259392220409)×
    abs(0.12003400-0.11965050)×0.000187329831854433×
    0.000383499999999995×0.000187329831854433×6371000²
    0.000383499999999995×0.000187329831854433×40589641000000
    ar = 2347988.88291371m²