     var maptypeMapnik;
     var map;
     var ge;

     function GetTileUrl_Mapnik(a, z) {
        return "http://tile.openstreetmap.org/" + z + "/" + a.x + "/" + a.y + ".png";
     }

     function swMaptype(mt){
      if(mt=="maptypeNormal"){
       map.setMapType(G_NORMAL_MAP);
      }
      if(mt=="maptypeHybrid"){
       map.setMapType(G_HYBRID_MAP);
      }
      if(mt=="maptypeOSM"){
       map.setMapType(maptypeMapnik);
      }
      if(mt=="maptypeEarth"){
       map.setMapType(G_SATELLITE_3D_MAP);
      }
     }


     function load()
      {
      if (GBrowserIsCompatible())
       {
        map = new GMap2(document.getElementById("map"));
        var point = new GLatLng(52.366174202752156,9.758573770523071);
        var icon = new GIcon();
        icon.image = "http://www.raumbezug.eu/grafik/icon.gif";
        icon.iconSize = new GSize(25, 25);
        icon.iconAnchor = new GPoint(12, 13);
        icon.infoWindowAnchor = new GPoint(12, 12);
        map.enableContinuousZoom();
        map.enableScrollWheelZoom();
        map.addControl(new GHierarchicalMapTypeControl());
        map.addControl(new GLargeMapControl());

        map.setCenter(point, 14);


        var copyright = new GCopyright(1,new GLatLngBounds(new GLatLng(-90,-180), new GLatLng(90,180)), 0,
        '(<a rel="license" href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>)');
        var copyrightCollection = new GCopyrightCollection('Kartendaten &copy; 2007 <a href="http://www.openstreetmap.org/">OpenStreetMap</a> Contributors');
        copyrightCollection.addCopyright(copyright);

        var tilelayers_mapnik = new Array();
        tilelayers_mapnik[0] = new GTileLayer(copyrightCollection, 0, 18);
        tilelayers_mapnik[0].getTileUrl = GetTileUrl_Mapnik;
        tilelayers_mapnik[0].isPng = function () { return true; };
        tilelayers_mapnik[0].getOpacity = function () { return 1.0; };
        var mapnik_map = new GMapType(tilelayers_mapnik,
        new GMercatorProjection(19), "OSM",
        { urlArg: 'mapnik', linkColor: '#000000',alt:'OpenStreetMap anzeigen' });
        maptypeMapnik = mapnik_map;

        map.addMapType(G_NORMAL_MAP);
        map.addMapType(G_HYBRID_MAP);
        map.addMapType(maptypeMapnik);
        //map.addMapType(G_SATELLITE_3D_MAP);



        //map.addControl(new GMapTypeControl());

        swMaptype('maptypeOSM');

        ewindow = new EWindow(map, E_STYLE_1);
        map.addOverlay(ewindow);

        function createMarker(point,html){
        var marker = new GMarker(point, icon);
        // ========== Open the EWindow instead of a Google Info Window ==========
        GEvent.addListener(marker, "mouseover", function(){
             ewindow.openOnMarker(marker,html);
           });
        return marker;
        }

        // This function just makes a pretty table for the EWindow contents
        // With a close icon
        function pretty(a,b) {
          return '<table border="0" cellpadding="0" cellspacing="0"><tr><td class="EWTitle" nowrap><p style="color:#FFFFFF;">' + a + '</p>'+
                 '<a href="javascript:ewindow.hide()"><img width="14" height="13" title="Fenster schließen" src="/js/googlemaps/eclose.png" border=0 style="position:absolute;right:4px;top:4px"></a>' +
                 '</td></tr>' +
                 '<tr>'+
                 ' <td class="EWText" nowrap><p>' + b + '</p></td>'+
                 '</tr>'+
                 '</table>';
        }


        //GEvent.addListener(marker,"onclick", function() {marker.openInfoWindowHtml(html);});

        // ========== Close the EWindow if theres a map click ==========
        GEvent.addListener(map, "click", function(marker,point) {
         if (point) {
           ewindow.hide();
         }
        });

        var html = pretty('<b>raumbezug</b>','Stolzestraße 38<br>30171 Hannover<br>fon: (0511) 260 918-70');
        var marker = createMarker(point,html);
        map.addOverlay(marker);

        GEvent.addListener(map,"maptypechanged",function(){
         if(map.getCurrentMapType().getName()=="Earth"){
          window.setTimeout('lookAT()', 1000);
         }
        });

       map.getEarthInstance(getEarthInstanceCB);
      }
    }



       function getEarthInstanceCB(object) {
        ge = object;
        ge.getLayerRoot().enableLayerById(ge.LAYER_BUILDINGS, true);
        ge.getLayerRoot().enableLayerById(ge.LAYER_BORDERS, true);
        ge.getLayerRoot().enableLayerById(ge.LAYER_TERRAIN, true);
        ge.getLayerRoot().enableLayerById(ge.LAYER_ROADS, true);

        var options = ge.getOptions();
        options.setStatusBarVisibility(true);
        options.setFlyToSpeed(ge.SPEED_TELEPORT);

      }



           function lookAT(){
               var la = ge.createLookAt('');
               la.set(52.37716290582686,9.74886417388916,150,ge.ALTITUDE_ABSOLUTE,-60,75,0);
               ge.getView().setAbstractView(la);
     }
