... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Höhenangaben werden nicht geladen
#41
Hallo Christian,

ich hab den Code auch mit negativen Werten getestet, also neben
unseren (deutschen Koordinaten) auch mit z.B. Westfrankreich (negative
Lon) und auch mit Indonesien (kurz unterhalb des Äquators, negative Lat).

Deine Testdaten beziehen sich u.a. ja auf Feuerland, da muss ich mal
schauen, ob da zufälligerweise Lücken sind.

Hab gerade mal auf die schnelle mit openstreetmap und Radlkarte geschaut,
aber für diese Gegend zeigt er mir bei tieferen Zooms keine Karte an.

Die Daten die du mitgeschickt hast, muss ich mir zuhause mal anschauen.

Servus
Robert
Reply
#42
Hallo Christian,

Fehler erkannt Rolleyes.

Deine Testpunkte liegen genau am Rand einer Höhenkachel.
Damit ist ein Index für die Subkacheln errechnet worden (1200!),
der dazu geführt hat, dass die Berechnung der Dateioffsets negativ
geworden ist. Und das hat zu der Exception geführt.
Man muss die Indices auf 1199 beschränken, dann geht es richtig.

Also in der Methode getElevationFor (in ElevationTile) noch die entsprechenden if... einfügen.
Das schaut an der entsprechenden Stelle dann so aus:

Code:
        int    nLonIndex = (int) ((dLon - (double) nLon) * 1200.0); // Calculate the interval index for longitude
        int    nLatIndex = (int) ((dLat - (double) nLat) * 1200.0); // Calculate the interval index for latitude
        
        if (nLonIndex >= 1200) {
            nLonIndex = 1200 - 1;
        }
        
        if (nLatIndex >= 1200) {
            nLatIndex = 1200 - 1;
        }

Desweiteren hab ich noch eine klitzekleine Änderung in ElevationHelper,
dort wo der @todo steht.
Code:
        Integer nKey  = (nLat + 180) * 100000 + (nLon + 90);    // @todo nLat +180 nLon +90


Ich hab auch noch einen Testtrack (für Feuerland) eingefügt.
Anhand dessen sieht man, dass die Höhen keine Sprünge aufweisen, und
plausibel sind (siehe Meereshöhe und die Höhengleichheit beim See).

Die Daten die du mir für den Gardaseetrack zusammengestellt hast, hab ich
mir auch nochmal angeschaut.
Dort wo bei den hgt Dateien die Lücken sind, sind auch meistens die
Lücken in Geonames zu finden. Ganz selten kommt mal eine Höhe von
Geonames. Ich denke mal das würde bestätigen, dass die bei der
Interpolation irgendwas anders machen (d.h. die kommen bei Randlagen
auf eine Position die aber eigentlich falsch ist).

Was genau Earthtools macht, kann man auch nur vermuten.
Die haben zwar keine Lücken, liegen aber bei den Höhen die von Geonames
oder hgt kommen manchmal erheblich weg.
Also Geonames und hgt sind zum Teil nah zusammen und Earthtools ist
ziemlich weg.
Vielleicht haben die als Datenbasis die gröberen Höhendateien ohne Lücken.
Ich meine da gibt's irgendsowas (bin mir aber nicht so sicher).

Im nächsten Schritt (nach meiner Radtour nächste Woche, und ein paar anderen Sachen),
kann man sich ja mal daran machen die Lücken zu füllen Smile.

Servus
Robert
Hab ich doch glatt den Feuerlandtrack vergessen.

Übrigens ich meinte nicht unbedingt die alten Motorradfahrer (50+) mit Harley.
Da wo ich langfahre trauen sich die nicht hin Big Grin.
Die alten Männer dort (Stilfserjoch und andere, noch schönere Pässe,
aber das ist für dich zu weit weg, oder?) fahren
von BMW bis Rennteil eigentlich alles, nur keine Motorräder,
die man um die Ecke tragen muss Tongue.

Servus
Robert


Attached Files
.zip   FeuerlandTest.zip (Size: 1.31 KB / Downloads: 658)
Reply
#43
(25.05.2010, 20:00)robekras Wrote: Also in der Methode getElevationFor (in ElevationTile) noch die entsprechenden if... einfügen.

Hallo Robert,

danke für den Hinweis. Übrigens habe ich Deinen Code nun durch die Mangel gedreht, entzerrt und mit RouteConverter besser integriert. Die aktuelle Vorabversion schaut erst nach HGT-Dateien, dann bei Geonames und schließlich bei EarthTools nach. Scheint mir derzeit der beste Kompromiß zu sein.

(25.05.2010, 20:00)robekras Wrote: Die alten Männer dort (Stilfserjoch und andere, noch schönere Pässe,
aber das ist für dich zu weit weg, oder?) fahren
von BMW bis Rennteil eigentlich alles, nur keine Motorräder,
die man um die Ecke tragen muss Tongue.

Am Stilfserjoch und in den Dolomiten war ich auch bereits... traumhaft!
--
Christian
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)