Programujte - programování,grafika,webdesign - Microsoft Virtual Earth, Mapy, API, Seznam Mapy, Atlas aMapy, 2D, 3D

Aktuální rubrika: Články   |  Diskuzní fórum   |  Kritika webů   |  Podcast   |  Kalendář akcí   |  Články na přání   |  E-shop   |  Login/Nový účet
Schovat menu HomeRSS diskuzePřejít na komentářePřidat oblíbené
X

Microsoft Virtual Earth: Úvod do API Přepnout článek do plného režimu

01. 03. 2008 | 20:20 - Zdeněk Večeřa (Zdeny) - 5585× přečteno

První seznámení s API rozhraním microsoftích map Virtual Earth.

it zprávy

Přestože jsou v tuzemsku nejpoužívanější mapy Seznamu, zajisté není třeba blíže představovat Virtual Earth v podání Microsoftu. API rozhraní použitelné na webových stránkách umožňuje zobrazovat kromě klasického 2D pohledu i 3D mapy. 3D Mapy, nebo-li Virtual Earth 3D, je ale přístupné až po nainstalování stejnojmenné aplikace, na kterou budete upozorněni při požadavku zobrazení 3D mapy.

Klikni pro zvětšení
Klikni pro zvětšení

Dokumentace k API

Oficiální dokumentace nejen v anglickém jazyce (čeština a slovenština chybí) je samozřejmě dostupná na stránkách Microsoftu v části Virtual Earth Interactive SDKCizojazyčná stránka . Popis šesté verze Virtual Earth Map Control SDK můžete nalézt na webu MSDNCizojazyčná stránka , anebo ke stažení v off-line podoběCizojazyčná stránka .

Klikni pro zvětšení
Klikni pro zvětšení

První Virtual Earth mapa

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
   <head>
      <title></title>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6"></script>
      <script type="text/javascript">
      var map = null;
            
      function GetMap()
      {
         map = new VEMap('myMap');
         map.LoadMap();
      }   
      </script>
   </head>
   <body onload="GetMap();">
      <div id='myMap' style="position:relative; width:800px; height:400px;"></div>
   </body>
</html>

Výše uvedený kód nám na stránce vytvoří základní mapu. Prakticky se tedy jedná o kód, který je důležitý pro zobrazení každé mapy. Formát zdrojového kódu je standardní HTML struktura. Nejprve uvádíme DOCTYPE, následuje meta tag udávající kódování v UTF-8 a přidání reference na Map Control.

V hlavičce (head) html souboru ještě definujeme vlastní funkci GetMap, která zajišťuje vykreslování mapy. Vytvoříme v ní instanci třídy VEMap a zavoláme metodu LoadMmap pro samotné vykreslení.

Při načtení těla (body) musíme zmíněnou funkci zavolat. Vykreslení proběhne do elementu div s identifikátorem myMap. Velikost a styl elementu můžeme definovat klasicky pomocí kaskádových stylů.

Klikni pro zvětšení

Po uložení a otevření v prohlížeči se zobrazí mapa jako je vidět na obrázku. Povšimněte si zajímavosti, že pro zobrazení mapy není potřeba žádné registrace nebo vytváření klíčů tak, jako jsme na to zvyklí u map Seznamu nebo aAmap Atlasu.

V následující části se budeme výhradně zabývat úpravou funkce GetMap.

Vykreslení požadované oblasti

Pro určení přesné oblasti, která se má na mapě vykreslit, musíme modifikovat parametry metody LoadMapCizojazyčná stránka , kterou voláme v námi vytvořené funkci GetMap. Metoda LoadMap může obsahovat několik parametrů: LoadMap(VELatLong, zoom, style, fixed, mode);

Následuje popis prvních pěti parametrů:

Parametr Popis
VELatLong Objekt třídy VELatLongCizojazyčná stránka reprezentuje střed mapy.
Zoom Přiblížení mapy v rozsahu 1 až 19. Standardně je nastaveno 4.
Style Specifikuje styl mapyCizojazyčná stránka . Standardně je VEMapStyle.Road.
Fixed Booleova hodnota určuje, jestli je uživateli zamezeno měnit zobrazenou mapu. Standardně je tato možnost vypnuta.
Mode Udává styl zobrazení 2D nebo 3D mapy. Standardně je zobrazena VEMapMode.Mode2D.

Pro nás je momentálně nejzajímavější první parametr, který pracuje s objektem třídy VELatLong. Požadovaná poloha musí být zadána v zeměpisných délkách – severní šířky (latitude) a západní délky (longitude). Například pro město Ivančice nastavíme parametry následovně:

map.LoadMap(new VELatLong(49.11, 16.38), 12 ,'h' , false);

Klikni pro zvětšení

Prvním parametrem jsou souřadnice, následuje hodnota 12 udávající přiblížení mapy. Poté uvádíme h pro zobrazení hybridní mapy. Zvláště ve spojení s hybridní mapou nemůžeme u tuzemských oblastí uvádět bližší přiblížení, protože Microsoftu chybí dostatečné mapové podklady některých oblastí. Posledním parametrem povolujeme uživateli pohybovat s mapou. Kdybychom nastavili true, nebyly by navíc ani zobrazeny ovládací prvky pro přiblížení mapy, změnu polohy a její typ.Konec.



Zdeněk Večeřa
Autor působí jako publicista mimo jiné i zde na Programujte.com a na Živě.cz. Zabývá se vývojem a použitelností internetových aplikací. Píše také vlastní blog na adrese http://ZdenekVecera.cz.
Jaggni to Linkuj Del.icio.us Jaggni to Tisk článku Tisk      Tisk článku Doporučit     Tisk článku RSS     Tisk článku PDF

Anketa:
 Pokud používáte API pro mapy, kterému dáváte přednost?
anketahlasovalo 11 %anketa   11 %
anketahlasovalo 5 %anketa   5 %
anketahlasovalo 71 %anketa   71 %
anketahlasovalo 13 %anketa   13 %

Celkem hlasovalo 55 čtenářů.

Diskuze k článku (2)
Pěknédurmitor02. 03. 2008 | 11:38
Parad....hned to hodim napalo08. 03. 2008 | 21:39

© 2004-2010 Programujte by Lukáš Churý, ISSN 1801-1586
Tento server dodržuje právní předpisy o ochraně osobních údajů. Všechna práva vyhrazena. Bez svolení redakce není možno texty dále rozšiřovat!
Kontakt | Reklama | Redakce | Podmínky užívání obsahu | Podpořte Programujte.com | Ke stažení | O portálu | RSS exporty [38.107.191.89]

back