Virtual Earth 6 – Controls in deutsch

Noch vor Google Earth hatte Microsoft seinen Kartendienst am Start, nur nicht so eine Riesenwerbung dafür gemacht. Und dabei braucht sich Virtual Earth gar nicht hinter Google zu verstecken. Ganz im Gegenteil, als Entwickler habe ich VE im letzten halben Jahr mehrfach erfolgreich eingesetzt. Nicht zuletzt ein wirklich gutes SDK haben zu dem Erfolg beigetragen.

Eins konnte VE aber bisher noch nicht: deutsch. Mit Verison 6 ist nun nicht nur ein neues Control gekommen sondern auch einige Änderungen. Und so möchte ich kurz zeigen, wie man Virtual Earth auf deutsch übersetzen kann.

ve_control.jpg

Grundsätzliches
Seit kurzem ist es möglich über die sog. Market Selection eine Kartensprache vorzuwählen. Allerdings werden die Karten immer noch in englisch gerendert (ein dynamisches Rendering soll Mitte 2008) kommen. Aber dadurch verbessert sich schon mal die Trefferquote.
Also, die deutsche Market Selection wählt man einfach durch eine geänderte Einbindung der MapControl:

http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6&mkt=de-de

Ändern der Entfernungsangaben in Kilometer
Mittels eines einfachen Befehls ist es nach dem Laden der Karte möglich die Entfernungsangabe umzustellen:

map.SetScaleBarDistanceUnit(VEDistanceUnit.Kilometers);

Control in deutsch übersetzen
Etwas kniffliger wird es beim Übersetzen des Controls. Hier sind grundsätzlich zwei Funktionen notwendig. In Funktion 1 wird das Control in deutsch übersetzt, bis auf den Teil der “Bird’s eye”-Anzeige. In Funktion 2 übersetzen wir die “Bird’s eye”-Anzeige. Am besten man kapselt das in zwei Funktionen so wie hier:

//Sprache auf deutsch ändern
function ChangeLanguage() {
//DOM Aenderungen
try
{
document.getElementById(‘MSVE_navAction_RoadMapStyle’).firstChild.nodeValue = ‘Karte’;
document.getElementById(‘MSVE_navAction_AerialMapStyle’).firstChild.nodeValue = ‘Luftbild’;
document.getElementById(‘MSVE_navAction_HybridMapStyle’).firstChild.nodeValue = ‘Hybrid’;
document.getElementById(‘MSVE_obliqueNotifyText’).firstChild.nodeValue = ‘In Birds Eye Ansicht wechseln’;
document.getElementById(‘MSVE_navAction_View3DMapMode’).title = ‘In 3D-Ansicht wechseln’;
document.getElementById(‘MSVE_navAction_FlatlandMapMode’).title = ‘In 2D-Ansicht wechseln’;
document.getElementById(‘MSVE_navAction_RoadMapStyle’).title = ‘In Strassen-Ansicht wechseln’;
document.getElementById(‘MSVE_navAction_AerialMapStyle’).title = ‘In Luftbild-Ansicht wechseln’;
document.getElementById(‘MSVE_navAction_HybridMapStyle’).title = ‘In Hybrid-Ansicht wechseln’
document.getElementById(‘MSVE_navAction_tinyZoomBar_plus’).title = ‘Hineinzoomen’;
document.getElementById(‘MSVE_navAction_tinyZoomBar_minus’).title = ‘Herauszoomen’;
document.getElementById(‘MSVE_navAction_toggleGlyphInner’).title = ‘Kartensteuerung verbergen’;

}
catch(err)
{
//alert(err.source + ‘: ‘ + err.message);
}
}

//Sonderbehandlung Birds Eye. Birds Eye-Events überschreiben sonst den deutschen Wert mit Englisch!
function overwrite_text()
{
try
{
document.getElementById(‘MSVE_navAction_ObliqueMapView’).title = ‘Birds-Eye Ansicht’;
document.getElementById(‘MSVE_navAction_ObliqueMapView’).firstChild.nodeValue = ‘Birds Eye’;
}
catch(err)
{
//alert(err.source + ‘: ‘ + err.message);
}
}

Die Funktion ChangeLanguage() ruft man einmal nach dem Laden der Karte auf. Die Funktion overwrite_text() muss jedes Mal aufgerufen werden wenn sich die Karte ändert. Da auch die MapControl diese bei jeder Änderung überschreibt. Diese Funktionen solltet ihr nur verwenden wenn ihr 1. mit Version 6 arbeitet (aufgrund des neuen Controls und der damit verbundenen Änderungen) und 2. ihr das “Normal”-COntrol verwendet, sonst hagelts Exceptions.

So sieht dann die deutsche VE-Variante aus.

Weitere Links:
Virtueal Earth
Virtueal Earth Interactive SDK
Johannes Kebeck, VE-Entwickler
viavirtualearth
viawindowslive

2 Kommentare zu “Virtual Earth 6 – Controls in deutsch”


  1. Keine Kommentare
  1. 1 Techy News » Virtual Earth 6 - Controls in deutsch
    Pingback am 20. Nov 2007 um 14:27
  2. 2 BarcampRN Review at trilodge computin blog
    Pingback am 25. Nov 2007 um 17:54

Kommentar schreiben