Incluir um mapa de tipo físico

Fazemos um Google Map físico, com o tipo de mapa G_PHYSICAL_MAP e aprendemos a definir os tipos de mapa que aparecem no controle de seleção de tipos de mapas de Google.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 26/8/08
Valorize este artigo:
Neste artigo vamos mostrar como trabalhar com um tipo de mapa de Google especial, apresentado há pouco tempo no sistema de Google Maps. Trata-se do mapa físico, que mostra a terra com um desenho de sua superfície que representa as montanhas, rios e outros acidentes geográficos.

O mapa físico foi apresentado há relativamente pouco tempo. Pelo menos quando iniciamos este manual do API de Google Maps não existia. Portanto, nos artigos publicados anteriormente não havíamos falado da possibilidade de integrar um mapa físico. Veremos isso agora.

No controle de seleção de tipo de mapa não aparece por padrão o tipo de mapa físico, com o que não se pode selecionar pelo usuário, a não ser que nós façamos algo para habilitá-lo. Os tipos de mapas disponíveis para o usuário por padrão na hora de trabalhar com Google Maps são os que havíamos visto anteriormente:
  • G_NORMAL_MAP: é um mapa político, de países, cidades com suas ruas, etc.
  • G_SATELLITE_MAP: mapa de imagens de satélite.
  • G_HYBRID_MAP: Um mapa que superpõe a vista de ruas em cima da vista satélite.
Por isso, quando colocamos o controle para mudar o tipo de mapa, nos aparecem três botões, para mudar entre qualquer destes tipos de mapas.

Pois bem, nós podemos aumentar a disponibilidade de tipos de mapas de Google, para incluir novos mapas, como o mapa físico (G_PHYSICAL_MAP), outros mapas existentes, qualquer que possam fazer no futuro, ou inclusive mapas criados por nós mesmos.

Para indicar o tipo de mapa que desejamos que se mostre se faz da seguinte maneira:

map.setMapType(G_PHYSICAL_MAP);

Definir os tipos de mapa do controle de seleção de tipos de mapa

Agora, para incluir outros tipos de mapas no controle de seleção de tipo de mapa, devemos utilizar o método addMapType() da classe GMap2, indicando como parâmetro o nome do tipo de mapa que queremos incluir. Por exemplo:

map.addMapType(G_PHYSICAL_MAP);

Isto parece que não é um passo obrigatório para poder mostrar um tipo de mapa, e sim para que apareça no controle e o usuário possa selecioná-lo. Ou seja, para fazer um mapa de Google físico com map.setMapType(G_PHYSICAL_MAP) não é necessário que tê-lo incluído previamente com map.addMapType(G_PHYSICAL_MAP);

Agora, para tirar um tipo de mapa do controle, fazemos através do método removeMapType() da classe GMap2, indicando um parâmetro com o nome do tipo de mapa que queremos desabilitar do controle. Por exemplo:

map.removeMapType(G_HYBRID_MAP);

Exemplo de mapa de Google com desenho tipo físico

Para acabar vou mostrar como criar um mapa de Google físico, que ademais tenha um controle que permita mudar entre os tipos de mapa político, satélite e físico.

function load() {
   if (GBrowserIsCompatible()) {
      var map = new GMap2(document.getElementById("map"));   
      map.setCenter(new GLatLng(40.201022,-3.8736677),6);
      map.addMapType(G_PHYSICAL_MAP);
      map.removeMapType(G_HYBRID_MAP);
      map.addControl(new GMapTypeControl());
      map.setMapType(G_PHYSICAL_MAP);
   }
}


O código que podemos ver inclui chamadas aos métodos: addMapType(G_PHYSICAL_MAP), para indicar que no controle de seleção de tipo de mapa se deve incluir o mapa físico. map.removeMapType(G_HYBRID_MAP), para eliminar do controle de seleção de tipos de mapas o mapa híbrido. O método addControl(new GmapTypeControl()) para incluir na interface o controle de usuário para mudar o tipo de mapa. E por último setMapType(G_PHYSICAL_MAP), para definir que o mapa que se deve mostrar desde o princípio deve ser o mapa físico.

Podemos ver o exemplo em funcionamento em uma página a parte.

Pode-se ver o código fonte da página para ver o código do exemplo completo.





Comentários do artigo
Foram enviados 2 comentários ao artigo
2 comentários não revisados
0 comentários revisados

Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato