Hi,
Could you please publish that demo where route internal "over" point can be added? I don't know how to do it. Adding waypoints not working.
Thanks, András
Schön, daß es funktioniert!
Die Gesamtlänge eine Strecke bzw. Gesamtreisedauer kann zum Beispiel so ermittelt werden:
Delphi-Quellcode:
TotalDistance:=0;
TotalDuration:=0;
with Result.Routes[0] do //<- erste Route
for Leg:=0 to Legs.Count-1 do //<- alle Abschnitte durchgehen
with Legs[Leg] do
begin
Inc(TotalDistance,Distance.Value); //<- Länge des Abschnitts
Inc(TotalDuration,Duration.Value); //<- Reisedauer für diesen Abschnitt
end;
Google Maps arbeitet mit den Spracheinstellungen des PC's. Auf meinem sendet der IE also ein 'de' - dementsprechend werden alle Menüs und Ausgaben auf Deutsch angezeigt. Es ist aber auch möglich, eine bestimmte Sprache zu erzwingen. Das geht beim Laden des
API's. In der kommenden Version des Frameworks kann sie als Parameter angegeben werden:
Delphi-Quellcode:
procedure TScript.LoadAPIAsync(InitMapProc: TNotifyEvent;
UseSensor: Boolean;
Version: String;
Language: String; //<- 'de'
Libraries: TGoogleLibraries);
In den älteren Versionen (1.1 - 1.3) muß dafür in der
Unit gmAPI die Funktion
HTMLPage angepaßt werden:
Delphi-Quellcode:
[...]
Result:=Result+
'
<script type="text/javascript" src="http://maps.google.com/maps/api/js?&sensor=';
if UseSensor
then Result:=Result+
'
true'
else Result:=Result+
'
false';
//zusätzlich:
Result:=Result+'
&language=de';
[...]
So sieht zum Beispiel die Routenplanung mit 'ru' aus:
Anhang 35161 Anhang 35162 Anhang 35164
Allerdings funktioniert
Unicode nur mit den entsprechenden Compilern und erst ab Version 2.0 des Frameworks.
Die Routeninformationen werden mit
HTML-Tags (zum Beispiel <b></b>) geliefert. Die müßten dann selbst oder durch eine geeignete Komponente geparst und dargestellt werden.