|
#1
|
||||
|
||||
|
Hallo,
ich bin jetzt schon ne ganze weile auf der suche nach ner vernünftigen lösung für mein problem und hoffe, hier kann mir geholfen werden. ich möchte ende juli mit dem motorrad eine etwa dreiwöchige tour rund um skadinavien machen. dabei will ich möglihst täglich die tagesstrecken (als kml oder kmz) auf meinen Webspace hochladen, so dass die "daheimgebliebenen" immer sehen können, wo ich gerade bin und vor allem, welchen streckenbereich ich schon zurückgelegt habe. Da ich nicht sicher bin, ob ich immer ein kostenloses WLAN finde, wollte ich die Tagesetappen möglichst als kmz mit dem handy in nen ordner auf meinem webspace per ftp hochladen so dass die einzelnen tagesetappen dort dann über per php erzeugte links in google-maps angezeigt werden können. das mit den tagesetappen klappt auch schon einwandfrei, allerdings hätte ich gerne noch ne möglichkeit, in googlemaps alle sich in dem ordner befindlichen kmz-dateien auf einer seite/karte darzustellen. Das ganze sollte aber aus den schon online bereitliegenden dateien erfolgen, so dass ich nicht eine komplette kmz-datei hochladen muss, sonder immer nur die tagesetappen. gibt es evtl eine möglichkeit, bei einem link zu googlemaps gleich mehrere dateien mit anzugeben? Ich hoffe, ich konnte mein problem verständlich rüberbringen. Das hauptproblem ist eben, dass ich im ausland möglichst wenig datenvolumen übers GSM-Netz hochladen will. Gruß, Tom. |
|
#2
|
||||
|
||||
|
Etwa so:
Code:
</HEAD>
<!-- ..... --->
<script src="http://maps.google.com/maps?file=api&v=2&key=GoogleMapsAPIKey"
type="text/javascript"></script>
<script type="text/javascript">
function load() {
karte();
}
function karte() {
//<![CDATA[
if (GBrowserIsCompatible()) {
var gmap = new GMap2(document.getElementById("map"), {mapTypes:[G_NORMAL_MAP, G_SATELLITE_MAP, G_HYBRID_MAP, G_PHYSICAL_MAP, G_SATELLITE_3D_MAP]});
gmap.setCenter(new GLatLng(60.8825,19.5771),5);
var gtopLeft1 = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize (16,8));
gmap.addControl(new GSmallZoomControl(), gtopLeft1);
var gtopLeft2 = new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize (45,7));
gmap.addControl(new GMenuMapTypeControl(), gtopLeft2);
gmap.enableDoubleClickZoom();
gmap.enableContinuousZoom();
gmap.setMapType(G_PHYSICAL_MAP);
gmap.addControl(new GScaleControl());
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track01.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track02.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track03.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track04.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track05.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track06.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track07.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track08.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track09.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track10.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track11.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track12.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track13.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track14.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track15.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track16.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track17.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track18.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track19.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track20.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/track21.kmz"));
gmap.addOverlay(new GGeoXml("http://www.domainname.de/gpsdaten/UndSoWeiter.kmz"));
}
//]]>
}
</script>
<!-- ..... --->
</HEAD>
<BODY onload="load()" onunload="GUnload()">
<!-- ..... --->
<div id="map" style="width: 880px; height: 640px"></div>
<!-- ..... --->
</BODY>
Edit Ich habe es gerade einmal ausprobiert: Nicht vorhandene Tracks aus der Liste werden einfach nicht als Overlay angelegt. Insofern können schon vor der Reise alle Tracks als "gmap.addOverlay...." angegeben werden (und php ist darum gar nicht erforderlich, um alles abzuwickeln). /Edit Gruss Bejobe Geändert von Bejobe (20.05.2011 um 12:12 Uhr) |
|
#3
|
||||
|
||||
|
Code
Hallo Bejob
Ich habe genau das gleiche Problem wie thomaseckl und scheinbar ist dein Code die Lösung. Ich baue meine Website für eine längere Reise auf Websitebaker auf, habe aber von Programierung keine Ahnung. Wenn ich es richtig verstehe muss ich deinen Code bei mir in einer Seite als Javascript-Code einfügen, den API-Schlüssel bei Google generieren und einfügen, den Kartenmittelpunkt ändern, meine Track-Dateien im neu angelegten gpsdaten-Ordner speichern und es sollte klappen. Nun, leider klappts noch nicht... Es wird zwar ein Feld so gross wie angegeben dargestellt, jedoch ohne eine Karte. Was muss eigentlich bei diesen "Platzhaltern" rein: <!-- ..... ---> ??? Ich hoffe ich nerve nicht zu sehr und du kannst mir behilflich sein. Wahrscheinlich ja nur noch eine Kleinigkeit... Gruss Martini89 |
![]() |
| Themen-Optionen | |
| Ansicht | |
|
|