Ich hab aus Interessenfreudigkeit dieses Beispiel auf meinen Computer übernommen: http://wiki.openstreetmap.org/wiki/OpenLayers_Local_Tiles_Example
Habs ausprobiert und, ist logisch, es wird nichts angezeigt.
Wenn ich das Häkchen dann bei “Local Tiles” rausnehme, lädt er die Tiles ja vom Hauptserver.
Nur ist mir aufgefallen dass die Anzeige unglaublich blass ist im Gegensatz zum “normalen” OpenLayers.
Die Tiles vom Hauptserver werden mit 40% Deckkraft dargestellt (wegen “layerMapnik.setOpacity(0.4);”). Das hat der Programmierer so gemacht, damit du einen Unterschied zwischen den runtergeladenen und den lokal gespeicherten Tiles sehen kannst. Nimm die Zeile mit “setOpacity” raus, dann ist die Blässe weg, aber du siehst auch nicht mehr, welche Kacheln dir lokal noch fehlen.
Stimmt, das rausnehmen der Zeile hat geholfen!
Ich versteh nun aber noch nicht ganz den Sinn davon.
Bei mir sind auch die 2 Layer, wenn der Haken drinne’ ist. Sieht man beim Zoomen das Mapnik zuerst lädt und dann die Tiles geladen werden.
Aber wo ein “Offline” Tile fehlt, wird bei mir (in Firefox/Ubuntu) ein rosa farbenes Tile mit dieser kleinen gebrochenen Papierseite angezeigt.
Wozu wird der “hintere Layer” dann abgeschwächt?
Kurz: Wo kein Tile ist wird ein Fehler angezeigt, wozu dann den Mapnik Layer abschwächen?
Ich weiß nicht wo ganz oben?
Ich hab es mal hier eingebaut:
[...]
<script type="text/javascript">
// avoid pink tiles
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3;
OpenLayers.Util.onImageLoadErrorColor = "transparent";
// Start position for the map (hardcoded here for simplicity)
var lat=51.1950;
[...]
Ich hab versucht den Code noch zu verändern, aber bin noch zu keinem Ergebnis gekommen
Hat vielleicht jemand noch eine Idee wie ich diese “404” Tiles transparent machen kann?
Hier hab ich noch was gefunden, anscheinend geht der Trick mit OpenLayers.Util.onImageLoadErrorColor seit Version 2.12 nicht mehr… Kannst ja mal mit dem CSS versuchen.
Das klingt super! Noch besser ist es eigentlich dass man sogar ein eigenes “Missing Tile” Bild nehmen kann!
Ich kenn mich bei css nicht sehr gut aus. Ich habs so verstanden dass ich jetzt folgenden Code in eine CSS Datei einfügen soll:
Aber aus alten VB.NET Zeiten würde das kein Sinn für mich ergeben, denn ich rufe ja nirgendwo die CSS Datei auf.
Würde mich echt freuen wenn ihr mir nochmal bei der CSS Sache helfen könntet!
<html>
<head>
<title>OSM Local Tiles</title>
<link rel="stylesheet" href="style.css" type="text/css" /> <-- steht schon drin
<style type="text/css"> <-- hier kommen 6 Zeilen dazu kommt dazu
.olImageLoadError {
background-image: url('/path/to/theme/img/my-tile-load-error.png');
background-repeat: no-repeat;
}
</style>
<!-- bring in the OpenLayers javascript library <-- das war auch schon vorher da
......................
oder statt dem eigenen Bild eben dieses “display: none !important;”. Aber eigenes Bild malen finde ich schöner, kannst ja auch ein transparentes 2556x256-Bild nehmen, dann ist es auch unsichtbar.
ist sehr unsauber, da genau solche Release-Abhängigkeiten durchschlagen. Ich hole mir immer exakt die Version, die ich kenne und haben will. wenn das z.B. die 2.12 sein muß, mach
<script type="text/javascript" src="http://openlayers.org/api/2.12/OpenLayers.js"></script>
oder
wget http://openlayers.org/api/2.12/OpenLayers.js
Ok, vielen Dank!
Hatte die Datei im Editor geöffnet weil ich dachte in der Datei selber, beim Copyright Hinweis würde die Version stehen, aber da stand nichts ausser halt dem Copyright.
Aber hab nicht daran gedacht dass die Version ja im Link steht!
Ich möchte unten rechts dass “Permalink” umbennen in “Reload”.
ich hab in der HTMl Datei “Permalink” gefunden, aber wenn ich da es umbenne, ändert sich nichts im Browser.
Ich nehme mal an, das ist, damit man den Copyright nicht entfernt, will ich ja auch (auf keinen fall) nicht.
Aber das “Permalink” scheint auch geschützt zu sein?
Mir fällt noch gerade auf, dass OpenLayers im Internet Explorer nicht korrekt angezeigt wird.
Für das “normale” OpenLayers gibt es 2 *.css Dateien. Für meine genutze Variante (mit Offline Nutzung) nur eine.
Ich hab jetzt einfach mal versucht meine *.css Datei durch die von dem normalen zu ersetzen. Das ended dann aber in einer völligen Katastrophe!
Ich finde dass das OpenLayers mit der Offline Nutzung allgemein im Wiki schlecht/umständlich dokumentiert ist im Gegensatz zum normalen OpenLayers.
Könntet ihr vielleicht noch ein letzten Mal helfen bei dem Problem aus dem Zitat und dem aus diesem Postig?
Bin unglaublich froh über so nette, hilfsbereite Leute wie euch!
PS:
Im Grunde möchte ich ja nur dass da nicht “Permalink” steht sondern “Reload”