Esse artigo faz parte da revista WebMobile edição 16. Clique aqui para ler todos os artigos desta edição

imagem.JPG

tulo style="MARGIN: 18pt 0cm 0pt; PAGE-BREAK-AFTER: auto; LINE-HEIGHT: normal; TEXT-ALIGN: left; mso-pagination: widow-orphan; mso-hyphenate: auto" align=left>Construindo mapas para o seu aplicativo Swing com o JXMapViewer

 

Desde os primórdios da navegação, os mapas desempenharam uma função vital para o comércio. Um marinheiro sem um mapa estava completamente perdido. Sem um mapa, um proprietário de terra não saberia o que ele possuía. Thomas Jefferson até mesmo enviou Lewis e Clark em uma viagem de dois anos através de todo o continente norte-americano para poder atualizar os mapas.

As coisas estão mudando rapidamente. Graças às recentes inovações em dispositivos, redes e satélites, a tecnologia em torno do uso de mapas está ajustada para tornar possível a criação de idéias e aplicativos. O Google realmente deu pontapé inicial nesta tendência com o lançamento do Google Maps e a aquisição da companhia de 3D Keyhole (agora chamada Google Earth). Alguns programadores empreendedores rapidamente começaram a hackear os mapas de Google, criando um novo tipo de aplicativo, o mashup (para maiores informações, consultar http://en.wikipedia.org/wiki/Mashup_(web_application_hybrid)). Entretanto, os mashups dos Google Maps estavam apenas começando.

Muitos sites de rede agora fornecem todos os tipos de dados interessantes que podem ser procurados, relacionados e visualizados de maneira geográfica. Flickr, Craigslist e Wikipedia são apenas alguns dos muitos provedores de geodata. Contudo, apesar de todas as muitas maneiras através das quais as pessoas geram e utilizam dados geográficos, existe um componente em comum: o visualizador do mapa. Apesar de muita ênfase ter sido dada em mapas utilizando a tecnologia Ajax (ex: nos mapas do Yahoo e Google), o Swing tem seu próprio componente de mapas, o open-source JXMapViewer. Criado originalmente para um programa demonstrativo do JavaOne, JXMapViewer lhe permite embutir potencialidades de mapeamento no seu próprio aplicativo Java (ou applet). Ao fim deste artigo, você saberá construir e executar um aplicativo simples de Swing utilizando JXMapViewer combinado com as novas funcionalidades contidas no NetBeans 6 que pode aumentar em muito a sua produtividade.

Construindo um aplicativo básico

O JXMapViewer é um componente Swing open-source (LGPL) criado pelos programadores no SwingLabs. No seu núcleo, o JXMapViewer é um JPanel especial que sabe como carregar mapas de um servidor de imagens. Todos os detalhes sobre como converter coordenadas em pixels, ocultar trechos de mapas e “costurá-los” na tela estão agradavelmente ocultadas dentro da API do JXMapViewer. Tudo o que você precisa fazer é adicioná-lo ao seu aplicativo da mesma maneira que você faria com qualquer outro JPanel.

Neste artigo, construiremos um programa simples que exibe um mapa e permite que você dê closes e panorâmicas ao redor de um dado ponto no mapa. Também iremos adicionar alguns controles para exibir localizações no mapa com códigos feitos sob medida. Você pode ver qual é a aparência do aplicativo que desenvolveremos na Figura 1.

 


Figura 1. ...

Quer ler esse conteúdo completo? Tenha acesso completo