Capturar pontos no mapa com C# e Google Maps

19/07/2010 in Hacks, Tips and Tricks

Vocês devem ter reparado que a muito tempo não ando escrevendo nada técnico. Andei pensando em fazer uma reformulação no blog, e dedicar uma sessão exclusiva a pequenos trechos de códigos. Mas acabei não dando prioridade a essa mudança, então aqui estou eu novamente.

Durante os últimos meses recebi alguns e-mails falando do artigo sobre como construir mapas com .NET e Google Maps. Alguns eram pedindo dicas, outros pediam ajuda com implementação mais complexas. Então recentemente recebi um comentário sobre uma funcionalidade que já havia implementado a muito tempo. Então estou aqui para compartilhar o trecho de código.

A duvida em questão é, como capturar pontos clicados no google maps. Na verdade, é bem simples, mas antes você precisa entender como funciona a construir mapas utilizando google maps e a biblioteca Artem, para .NET e C#. Para saber o básico, clique aqui.

O funcionamento é simples e será explicado em alguns passos.

  1. Crie um textbox chamado txtLatitude e outro chamado txtLongitude
  2. Adicione o controle do Google Maps a pagina, com a propriedade de OnClientClick, apontando para a função javascript

    <artem:GoogleMap ID=”GMaps” runat=”server” OnClientClick=”__showInfo” ></artem:GoogleMap>

  3. Adicione a função javascript que irá capturar os valores do ponto clicado e preencher os textboxes
    <script type=”text/javascript”>
    function __showInfo(overlay, point) {
    if (point) {
    var infoLatitude = document.getElementById(‘<%= txtLatitude.ClientID %>’);
    infoLatitude.value = point.lat();
    var infoLongitude = document.getElementById(‘<%= txtLongitude.ClientID %>’);
    infoLongitude.value = point.lng();
    }
    }
    </script>

Pronto! Agora com esse código você já pode clicar no mapa e observar os valores sendo refletidos nas suas caixas de texto. O código javascript é bem simples e auto explicativo, então acho que não tem segredo. Qualquer dúvida, basta deixar um comentário.

Leave a reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 

You need to log in to vote

The blog owner requires users to be logged in to be able to vote for this post.

Alternatively, if you do not have an account yet you can create one here.

Powered by Vote It Up