Kacheln -> Zoom -> Maßstab

Ich wollte Fragen, welcher Maßstab zu welchem Zoom gehört.

Cu Andy

Wer sucht, findet:
http://wiki.openstreetmap.org/wiki/Zoom_levels

Danke, hätte ich nie gefunden :smiley:

Man kann technisch keinen Maßstab in der Form “Zoomlevel 18 ist 1:2000” angeben. Der ist doch abhängig von der Auflösung des Monitores.

Du kannst nur “m/Pixel” angeben. Dann musst Du ausrechnen, wie groß ein Pixel an dem gerade angeschlossenem Monitor ist und erst dann kannst du weiter Rechnen.

Mein Monitor hat eine Auflösung von 0,294 mm pro Pixel. Zoomlevel 18 hat 596 mm pro Pixel. Somit habe ich ein Verhältnis von 0,294:596 oder 1:2027. Also leicht neben dem 1:2000 die Angegeben sind.

Ein Omnia2 hat eine Auflösung von 0,101 mm pro Pixel. Somit hat das ein Verhältnis von 0,101:596 oder 1:5900. Weit neben den 1:2000.

Mein guter alter Röhren-Fernseher am PAL-Anschuss hat eine Auflösung von 0,820 Millimeter pro Pixel. Macht also 1:726. Also wieder weit neben den 1:2000.

Grüße
Dennis

Hallo

gibts noch einen Link, wie das berechnet wird? Ich meine nicht die Tabellen, sondern wie man die berechnet?

MfG
Achim

Hallo Achim,

hier gibt es die Formeln um die Tiles zu berechnen, inkl. Coding
Beispielen in verschiedenen Programmiersprachen.

http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames

ein Tiles ist immer 256 × 256 pixel gross.

Gruss zapfen

http://wiki.openstreetmap.org/wiki/Height_and_width_of_a_map#Pure_Math_Method

Wenn du eins ausgerechnet hast, sind die anderen einfach, da für z+1 aus einer Kachel 4 werden (m/pix / 2) und z-1 aus 4 Kacheln eine (m/pix * 2).

Hallo

ich habe wohl nicht präzise gefragt. Ich meine nicht wie die Tiles berechnet werden sondern die Meter/per Pixel bzw. der Abstand zwischen 2 Punkten. Ist schon kar wenn man einen Punkt hat stehen die anderen im Verhältnis.
Wie wird in diesem Fall der ERSTE Wert berechnet, wenn man diesen nicht aus der Tabelle holt?

MfG
Achim

Hallo Achim,

ja jetzt ist es mir klar was Du willst. In der Theorie bin ich nicht so gut,
deshalb hier gleiche ein Beispiel aus der Praxis:

http://www.pifpafpuf.de/cycleroute/map

und hier das Coding dazu:

http://www.pifpafpuf.de/cycleroute/static/osmap.js

Siehe die Funktion updateScale da wird das was
du in der Karte oben links siehst berechnet.

Gruss zapfen

S=C*cos(lat)/2^(zoom+8), so steht es jedenfalls in dem oben von mir geposteten Link… :slight_smile:
C= Äquatorialdurchmesser, Einheit entspricht der Output-Einheit
Aus der Tabelle für Z=15 : S=4,773 (lat = 0, da Äquator)
Berechnung bei C=40.000.000 [m] → S=4,768
Aber C könnte man noch wesentlich präziser benutzen, dann wird das Ergebnis ähnlicher dem aus der Tabelle…

Dafür braucht man keine “Formeln”. Zoomlevel 0 ist genau einmal am Äquator um die Erde herum. Die Erde hat am Äquatoer 40.075,017 km Umfang laut Wikipedia. OSM rechnet, (laut der Tabelle) mit 40041,47 Kilometern Umfang. Welche Zahl genau genommen wird, weiß ich nicht.

Somit hast Du in Zoomlevel 0 eine Auflösung von 40041,47 Metern pro 256 Pixel, oder halt die besagten 156,412 Kilometer pro Pixel. Jede weitere Zoomlevel halbiert sich die Kantenlängen (Also aus 1x Kachelzoom 0 werden 4x Kachelzoom 1).

Grüße
Dennis

Aeh, hab ich da was falsch verstanden?? Am Aequator ist das schon richtig, aber der Abstand zwischen Laengengraden in Meter wird doch immer kleiner und geht in Polnaehe gegen null…!? Man sollte also wohl irgendwas wie cos(Breitengrad) oder so noch einbauen muessen.

Ja, je näher man den Polkappen kommt, desto mehr wird verzerrt.

Hallo

vielen Dank an ALLE. Das ist doch schon mal was für den Einstieg in die Thematik…

MfG
Achim