You are not logged in.
- Topics: Active | Unanswered
Announcement
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***
Pages: 1
#1 2017-08-02 13:18:09
- klemens_tirol
- Member
- Registered: 2017-08-02
- Posts: 5
opentopomap
Hallo!
Für den Alarm-Monitor einer Blaulichorganisation möchte ich untenstehenden PHP-Quelltext von der Openstreetmap-Karte auf die Opentopomap-Karte umbauen. Die Struktur sollte gleich bleiben, da noch einige PHP-Abfragen notwendig sind (habe ich rausgeschnitten).
Kann mir bitte jemand helfen?
Habe bereits versucht die Zeile
map.addLayer(new OpenLayers.Layer.OSM());
durch
map.addLayer(new OpenLayers.Layer.OSM("OpenTopoMap", ["http://a.tile.opentopomap.org/${z}/${x}/${y}.png", "http://b.tile.opentopomap.org/${z}/${x}/${y}.png", "http://c.tile.opentopomap.org/${z}/${x}/${y}.png"]));
zu ersetzen, Karte wird aber nicht angezeigt...
Danke für eure Hilfe!
LG
Quelltext:
<!DOCTYPE html>
<html>
<head>
<title>Karte</title>
<link rel="stylesheet" href="http://openlayers.org/en/v3.17.1/css/ol.css" type="text/css">
<script src="http://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList"></script>
<script src="http://openlayers.org/en/v3.17.1/build/ol.js"></script>
</head>
<body>
<div id="mapdiv" style="height:950px; width:700px" valign="top"></div>
<script src="http://www.openlayers.org/api/OpenLayers.js"></script>
<script>
map = new OpenLayers.Map("mapdiv");
map.addLayer(new OpenLayers.Layer.OSM());
var lonLat = new OpenLayers.LonLat(11.9055, 47.457833)
.transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject() );
var zoom=15;
var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);
markers.addMarker(new OpenLayers.Marker(lonLat));Q
map.setCenter (lonLat, zoom);
</script>
</body>
</html>
Last edited by klemens_tirol (2017-08-02 13:32:15)
Offline
#2 2017-08-02 22:16:23
- tquadrat
- Member
- Registered: 2015-03-03
- Posts: 113
Re: opentopomap
markers.addMarker(new OpenLayers.Marker(lonLat));Q
Hi,
Bist du dir sicher das die Zeile nicht einen JS Fehler wirft? (Q am Ende)
Schaus dir mal mit den Entwicklertools an.
LG Tom
Offline
#3 2017-08-03 18:48:15
- klemens_tirol
- Member
- Registered: 2017-08-02
- Posts: 5
Re: opentopomap
Hallo Tom,
danke für den Hinweis, hab das Q entfernt. Macht leider aber keinen Unterschied...
Gitternetz und Zoom wird angezeigt, die Karte im Hintergrund fehlt (violetter Hintergrund).
Quelltext Opentopomap:
<!DOCTYPE html>
<html>
<head>
<title>Karte</title>
<link rel="stylesheet" href="http://openlayers.org/en/v3.17.1/css/ol.css" type="text/css">
<script src="http://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList"></script>
<script src="http://openlayers.org/en/v3.17.1/build/ol.js"></script>
</head>
<body>
<div id="mapdiv" style="height:950px; width:700px" valign="top"></div>
<script src="http://www.openlayers.org/api/OpenLayers.js"></script>
<script>
map = new OpenLayers.Map("mapdiv");
map.addLayer(new OpenLayers.Layer.OSM("OpenTopoMap", ["http://a.tile.opentopomap.org/${z}/${x}/${y}.png", "http://b.tile.opentopomap.org/${z}/${x}/${y}.png", "http://c.tile.opentopomap.org/${z}/${x}/${y}.png"]));
var lonLat = new OpenLayers.LonLat(11.9055, 47.457833)
.transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject() );
var zoom=15;
var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);
markers.addMarker(new OpenLayers.Marker(lonLat));
map.setCenter (lonLat, zoom);
</script>
</body>
</html>
Offline
#4 2017-08-03 19:22:01
- klemens_tirol
- Member
- Registered: 2017-08-02
- Posts: 5
Re: opentopomap
...
Last edited by klemens_tirol (2017-08-03 21:33:36)
Offline
#5 2017-08-04 11:59:21
- maxbe
- Member
- Registered: 2010-01-19
- Posts: 3,255
- Website
Re: opentopomap
Probiers mal mit "OpenLayers.Layer.XYZ()" statt "OpenLayers.Layer.OSM()", woran es bei ...OSM() liegt, weiss ich aber nicht:
map.addLayer(new OpenLayers.Layer.XYZ("OpenTopoMap",
["https://a.tile.opentopomap.org/${z}/${x}/${y}.png",
"https://b.tile.opentopomap.org/${z}/${x}/${y}.png",
"https://c.tile.opentopomap.org/${z}/${x}/${y}.png"],
{sphericalMercator: true,
attribution: 'Kartendaten: <a href=//openstreetmap.org/copyright>OpenStreetMap</a>-Mitwirkende, SRTM | Kartendarstellung: <a href=//opentopomap.org>OpenTopoMap (CC-BY-SA)</a>',
numZoomLevels:18
}));(hier zum ansehen und abschreiben)
Das https hab ich auch noch eingebaut. Ginge auch mit https aber die OTM macht sowieso eine Umleitung nach https.
Grüße
Max
PS: Wegen "Alarm-Monitor einer Blaulichtorganisation": Du hast gelesen "Außerdem kann keinerlei Ausfallsicherheit garantiert werden.". Das ist nicht nur eine Klausel im Kleingedruckten, Ausfälle sind harte Realität ![]()
Last edited by maxbe (2017-08-04 12:20:25)
Offline
#6 2017-08-05 02:19:29
- klemens_tirol
- Member
- Registered: 2017-08-02
- Posts: 5
Re: opentopomap
Danke Max, funktioniert!
Ja die fehlende Ausfallsicherheit kann sicherlich zum Problem werden, mal überlegen...
LG
Offline
#7 2017-08-05 03:13:22
- klemens_tirol
- Member
- Registered: 2017-08-02
- Posts: 5
Re: opentopomap
basemap.at wäre eine gute Alternative...
Hat damit jemand Erfahrung? Weiß jemand wie ich das in meinen Quelltext einbaue?
Finde nur JS-Anleitungen...
Offline
Pages: 1