Jan Tappenbeck schrieb:
> Hi!
> 
> ich möchte mit Maperitive erzeugte Tiles in eine Openlayers Karte
> einbinden.
> 
> Bisher habe ich einfach nur ein Tile-Verzeichnis angelegt und fertig -
> lief auch teilweise. Nur die Auslieferung der leeren Tiles außerhalb des
> gerechneten Bereiches werden fehlerhaft ausgeliefert.
> 

Das ist eigentlich ein Problem, für das es bei Openlayers eine Lösung
gibt: Wenn die URL nicht abgerufen werden kann, wird ein "Fehler"-Tile
eingeblendet. Bei der OSM-Anwendung kommt dann "More OSM coming soon.."

steht in der Openstreetmap.js:

> /**
>  * Constant: MISSING_TILE_URL
>  * {String} URL of image to display for missing tiles
>  */
> OpenLayers.Util.OSM.MISSING_TILE_URL = 
> "http://www.openstreetmap.org/openlayers/img/404.png";;
> 
> /**
>  * Property: originalOnImageLoadError
>  * {Function} Original onImageLoadError function.
>  */
> OpenLayers.Util.OSM.originalOnImageLoadError = 
> OpenLayers.Util.onImageLoadError;
> 
> /**
>  * Function: onImageLoadError
>  */
> OpenLayers.Util.onImageLoadError = function() {
>     if (this.src.match(/^http:\/\/[abc]\.[a-z]+\.openstreetmap\.org\//)) {
>         this.src = OpenLayers.Util.OSM.MISSING_TILE_URL;
>     } else if (this.src.match(/^http:\/\/[def]\.tah\.openstreetmap\.org\//)) {
>         // do nothing - this layer is transparent
>     } else {
>         OpenLayers.Util.OSM.originalOnImageLoadError;
>     }
> };

Und da kannst du statt dem 404.png von OSM jedes beliebige andere Tile
einbinden, auch ein einfach leeres Tile. Oder du nimmst gleich die
do-nothing-Alternative.

Gruß,
André Joost



-- 
Gruß,
André Joost


_______________________________________________
Talk-de mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-de

Antwort per Email an