Autor Tópico: Trajecto no google Maps  (Lida 1855 vezes)

JMTM

  • Novato
  • *
  • Mensagens: 5
    • Email
Trajecto no google Maps
« Online: Dezembro 03, 2013, 02:54:26 pm »
Olá a todos,

Gostaria de saber se é possível efectuar o seguinte com o scriptcase.

Tenho uma base de dados, que armazena os trajectos de uma viatura (coordenadas latitude e longitude).

Necessito de ler essas coordenadas e fazer o plot de um trajecto no google maps, para o utilizador poder confirmar o trajecto efectuado.

Cada trajecto é composto por umas boas centenas de coordenadas, uma vez que as mesmas são armazenadas em intervalos de 1 minuto.

Nunca trabalhei com o google maps antes. Gostava de uma explicação mais ou menos detalhada de como fazer isto e julgo que será interessanta para outros usuarios também.

Obrigado a quem puder dar uma ajuda.

JM

jpinto

  • Iniciante
  • **
  • Mensagens: 62
    • SCANTEC
    • Email
Re:Trajecto no google Maps
« Responder #1 Online: Dezembro 03, 2013, 06:35:00 pm »
Basta criar uma aplicação Blank   e utilizar as bibliotecas (GoogleMap.php;JSMin.php)





sc_include("GoogleMap.php");
sc_include("JSMin.php");
sc_select(dados,"SELECT * from tablela ");
?>
<?php
//Set defaults

$MAP_OBJECT = new GoogleMapAPI();
$MAP_OBJECT->_minify_js = isset($_REQUEST["min"])?FALSE:TRUE;
$MAP_OBJECT->disableZoomEncompass();
$MAP_OBJECT->width="82%";
$MAP_OBJECT->height="100%";
$MAP_OBJECT->setZoomLevel('7');
$MAP_OBJECT->setCenterCoords('-0.191231','52.568107');


$SIDEBAR_HTML = "";

while(!$dados->EOF){
    //$marker_id = $MAP_OBJECT->addMarkerByAddress($dados->fields[0],$dados->fields[1],$dados->fields[0],$dados->fields[2]);
    //$marker_id = $MAP_OBJECT->addMarkerByCoords($dados->fields[2],$dados->fields[1],$dados->fields[0],$dados->fields[3].$dados->fields[4]);
      $marker_id = $MAP_OBJECT->addMarkerByCoords($dados->fields[2],$dados->fields[1],"","Vendedor ".$dados->fields[6],$dados->fields[4],"");
    //$marker_id = $MAP_OBJECT->addMarkerByCoords($dados->fields[2],$dados->fields[1],"Marker Title", "Marker Description");
     
    $opener_id = "opener_".$marker_id;

   $SIDEBAR_HTML .= "
            <b><a id='$opener_id' href='#'>".$dados->fields[4]."</a></b>
            <li><a id='$opener_id' href='#'>".$dados->fields[3]."</a></li>";

   
        $MAP_OBJECT->addMarkerOpener($marker_id, $opener_id);
       
    $dados->MoveNext();
   
}
$dados->Close();
//$MAP_OBJECT->addMarkerByCoords(-118.243,34.0522,"Marker2 Title", "Marker2 Description");
$MYHEADJSCRIPT = "<script type='text/javascript'>
                   function callClickEvent(element)
               {
                   var evt = document.createEvent('MouseEvents');
            evt.initMouseEvent('click', true, true, window,
            0, 0, 0, 0, 0, false, false, false, false, 0, null);
            element.dispatchEvent(evt);
               }
    </script>";



?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<?=$MAP_OBJECT->getHeaderJS();?>
<?=$MAP_OBJECT->getMapJS();?>
<?=$MYHEADJSCRIPT;?>
<style type="text/css">
    .sidebar, #map{
        float:left;
    }
    .sidebar{
        width:260px;
        //width="100%";
        //height=260px;
        border:1px #000 solid;
        margin-left:5px;       
        font-size:11px;
        top: 185px;
        height:100%;
        overflow:auto;
      font-family: "Arial", Verdana, serif;
      
    }
   
    ul, li{
        list-style:none;
        margin:0px;
        padding:0px;
       
       
    }
    li{
        border-bottom:1px #000 solid;
        display:block;
    }
    li a{
        display:block;
        padding:5px;
    }
    li a:hover{
        background-color:#999;
    }
   
    li p{
        padding:5px;
    }
</style>
</head>
<body>
<?=$MAP_OBJECT->printOnLoad();?>
<?=$MAP_OBJECT->printMap();?>
<?=$MAP_OBJECT->printSidebar();?>

<div class='sidebar'>
    <ul>
        <?=$SIDEBAR_HTML;?>
    </ul>
</div>
</body>
</html>
<?php

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Re:Trajecto no google Maps
« Responder #2 Online: Dezembro 03, 2013, 11:10:17 pm »
Manda estas bibliotecas...(GoogleMap.php;JSMin.php)
Jovito Melo
Maceió - Alagoas

paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Re:Trajecto no google Maps
« Responder #4 Online: Dezembro 04, 2013, 07:39:19 am »
Obrigado,

Eu tenho outra forma de executar o seu exemplo. Vou testar da forma que você apresentou.

[]´s
Jovito Melo
Jovito Melo
Maceió - Alagoas

paulomarcelo

  • Expert
  • *****
  • Mensagens: 638
    • Email
Re:Trajecto no google Maps
« Responder #5 Online: Dezembro 04, 2013, 07:43:18 am »

JMTM

  • Novato
  • *
  • Mensagens: 5
    • Email
Re:Trajecto no google Maps
« Responder #6 Online: Dezembro 07, 2013, 04:45:47 pm »
Gratos pela ajuda. Vou verificar.

Obrigado

JM

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Re:Trajecto no google Maps
« Responder #7 Online: Janeiro 19, 2014, 11:12:45 am »
jpinto,

O que são esses campos marcados em vermelho que você menciona abaixo?


..............
 $SIDEBAR_HTML .= "
            <b><a id='$opener_id' href='#'>".$dados->fields[4]."</a></b>
            <li><a id='$opener_id' href='#'>".$dados->fields[3]."</a></li>";

   
        $MAP_OBJECT->addMarkerOpener($marker_id, $opener_id);
...................

Jovito
Jovito Melo
Maceió - Alagoas