Olá, Jorge,<div><br></div><div>muito obrigado pela resposta.</div><div>Consigo obter as coordenadas dos startpoints e dos endpoints sim, todavia, preocupa-me a quantidade de linhas da tabela, pois estamos a falar de mais de 2600 linhas.</div>
<div><br></div><div>Então seria necessário gerar, simultaneamente, 2600 &quot;shortest paths&quot;.</div><div><br></div><div>Pelo momento e pelo retorno que tenho obtido de diferentes pessoas, parece tarefa impossível.</div>
<div>Apontaram-me a possibilidade de integrar QGis e PostGIS a partir de um script.</div><div><br></div><div>Etou tentando.</div><div><br></div><div>Agradeço novamente o retorno,</div><div><br></div><div>Cumprimentos,</div>
<div><br></div><div>Marcos Ummus</div><div><br></div><div><br></div><div>  </div><div><br><div class="gmail_quote">No dia 27 de Março de 2012 18:43, Jorge Gustavo Rocha <span dir="ltr">&lt;<a href="mailto:jgr@di.uminho.pt">jgr@di.uminho.pt</a>&gt;</span> escreveu:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Marcos,<br>
<br>
Não sei se já resolveste este teu problema. Mas, pelos dados que passaste, é mais ou menos impossível fazer o geocode só com o nome da rua e número de polícia. Por exemplo, essa &quot;Rua Cândido dos Reis&quot; existe no Porto, em Aveiro, em Évora... Penso que nenhum geocoder se conseguirá safar só com isso.<br>

<br>
Se conseguires obter as coordenadas, o sapo mapas permite que o percurso comece e acabe em pares de coordenadas. Sugiro que guardes o conjunto de linhas que compõem cada percurso calculado. Ou seja, cada percurso é uma sucessão de linhas com pontos em comum, que podem ser retornadas pelo servidor em JSON. Fiz um teste com o Sapo Mapas, e o percurso retornado é um JSON. Fazes o decode do JSON e guardas em base de dados, por exemplo.<br>

<br>
Percurso calculado e retornado pelo SAPO Mapas:<br>
<br>
json732432={&quot;total&quot;:{&quot;s&quot;:297,&quot;<u></u>m&quot;:2739},&quot;middlePoints&quot;:[],&quot;<u></u>segs&quot;:[{&quot;t&quot;:178.97948,&quot;dir&quot;:1,<u></u>&quot;lines&quot;:[{&quot;y&quot;:4956169,&quot;x&quot;:-<u></u>973999},{&quot;y&quot;:4956201,&quot;x&quot;:-<u></u>973992},{&quot;y&quot;:4956255,&quot;x&quot;:-<u></u>973980},{&quot;y&quot;:4956279,&quot;x&quot;:-<u></u>973973},{&quot;y&quot;:4956312,&quot;x&quot;:-<u></u>973966},{&quot;y&quot;:4956337,&quot;x&quot;:-<u></u>973961},{&quot;y&quot;:4956387,&quot;x&quot;:-<u></u>973954},{&quot;y&quot;:4956388,&quot;x&quot;:-<u></u>973954},{&quot;y&quot;:4956424,&quot;x&quot;:-<u></u>973956},{&quot;y&quot;:4956450,&quot;x&quot;:-<u></u>973960},{&quot;y&quot;:4956486,&quot;x&quot;:-<u></u>973964},{&quot;y&quot;:4956498,&quot;x&quot;:-<u></u>973966},{&quot;y&quot;:4956589,&quot;x&quot;:-<u></u>973965},{&quot;y&quot;:4956741,&quot;x&quot;:-<u></u>973956},{&quot;y&quot;:4956823,&quot;x&quot;:-<u></u>973949},{&quot;y&quot;:4956866,&quot;x&quot;:-<u></u>973944},{&quot;y&quot;:4956878,&quot;x&quot;:-<u></u>973942},{&quot;y&quot;:4956897,&quot;x&quot;:-<u></u>973935},{&quot;y&quot;:4957211,&quot;x&quot;:-<u></u>973813},{&quot;y&quot;:4957234,&quot;x&quot;:-<u></u>973801},{&quot;y&quot;:4957259,&quot;x&quot;:-<u></u>973785},{&quot;y&quot;:4957366,&quot;x&quot;:-<u></u>973705},{&quot;y&quot;:4957375,&quot;x&quot;:-<u></u>973701},{&quot;y&quot;:4957384,&quot;x&quot;:-<u></u>973699},{&quot;y&quot;:4957414,&quot;x&quot;:-<u></u>973699},{&quot;y&quot;:4957625,&quot;x&quot;:-<u></u>973701},{&quot;y&quot;:4957906,&quot;x&quot;:-<u></u>973701},{&quot;y&quot;:4957930,&quot;x&quot;:-<u></u>973699},{&quot;y&quot;:4957940,&quot;x&quot;:-<u></u>973698},{&quot;y&quot;:4957955,&quot;x&quot;:-<u></u>973695},{&quot;y&quot;:4958084,&quot;x&quot;:-<u></u>973658},{&quot;y&quot;:4958122,&quot;x&quot;:-<u></u>973621}],&quot;m&quot;:1591,&quot;st&quot;:&quot;<u></u>Avenida Marginal Jos&amp;#233; Est&amp;#234;v&amp;#227;o (EN109-7)&quot;},{&quot;t&quot;:5.336459,&quot;<u></u>dir&quot;:0,&quot;lines&quot;:[{&quot;y&quot;:4958122,&quot;<u></u>x&quot;:-973621},{&quot;y&quot;:4958132,&quot;x&quot;:-<u></u>973602},{&quot;y&quot;:4958140,&quot;x&quot;:-<u></u>973587},{&quot;y&quot;:4958152,&quot;x&quot;:-<u></u>973573},{&quot;y&quot;:4958164,&quot;x&quot;:-<u></u>973564},{&quot;y&quot;:4958175,&quot;x&quot;:-<u></u>973559},{&quot;y&quot;:4958190,&quot;x&quot;:-<u></u>973556},{&quot;y&quot;:4958190,&quot;x&quot;:-<u></u>973556},{&quot;y&quot;:4958202,&quot;x&quot;:-<u></u>973556},{&quot;y&quot;:4958216,&quot;x&quot;:-<u></u>973562},{&quot;y&quot;:4958227,&quot;x&quot;:-<u></u>973569},{&quot;y&quot;:4958229,&quot;x&quot;:-<u></u>973570},{&quot;y&quot;:4958239,&quot;x&quot;:-<u></u>973583},{&quot;y&quot;:4958242,&quot;x&quot;:-<u></u>973592},{&quot;y&quot;:4958246,&quot;x&quot;:-<u></u>973614}],&quot;m&quot;:149,&quot;st&quot;:&quot;A25 Acessos&quot;},{&quot;t&quot;:19.19361,&quot;dir&quot;:<u></u>-1,&quot;lines&quot;:[{&quot;y&quot;:4958246,&quot;x&quot;:-<u></u>973614},{&quot;y&quot;:4958263,&quot;x&quot;:-<u></u>973635},{&quot;y&quot;:4958276,&quot;x&quot;:-<u></u>973647},{&quot;y&quot;:4958297,&quot;x&quot;:-<u></u>973657},{&quot;y&quot;:4958362,&quot;x&quot;:-<u></u>973680},{&quot;y&quot;:4958404,&quot;x&quot;:-<u></u>973687},{&quot;y&quot;:4958414,&quot;x&quot;:-<u></u>973687},{&quot;y&quot;:4958423,&quot;x&quot;:-<u></u>973684},{&quot;y&quot;:4958430,&quot;x&quot;:-<u></u>973680},{&quot;y&quot;:4958434,&quot;x&quot;:-<u></u>973674},{&quot;y&quot;:4958436,&quot;x&quot;:-<u></u>973670}],&quot;m&quot;:171,&quot;st&quot;:&quot;EN109-<u></u>7&quot;},{&quot;t&quot;:7.9557424,&quot;dir&quot;:0,&quot;<u></u>lines&quot;:[{&quot;y&quot;:4958436,&quot;x&quot;:-<u></u>973670},{&quot;y&quot;:4958437,&quot;x&quot;:-<u></u>973632},{&quot;y&quot;:4958440,&quot;x&quot;:-<u></u>973619},{&quot;y&quot;:4958443,&quot;x&quot;:-<u></u>973611},{&quot;y&quot;:4958450,&quot;x&quot;:-<u></u>973602},{&quot;y&quot;:4958461,&quot;x&quot;:-<u></u>973597},{&quot;y&quot;:4958468,&quot;x&quot;:-<u></u>973595}],&quot;m&quot;:71,&quot;st&quot;:&quot;Quinta da Barra (EN109-7)&quot;},{&quot;t&quot;:85.38745,&quot;<u></u>dir&quot;:0,&quot;lines&quot;:[{&quot;y&quot;:4958468,&quot;<u></u>x&quot;:-973595},{&quot;y&quot;:4958714,&quot;x&quot;:-<u></u>973597},{&quot;y&quot;:4958727,&quot;x&quot;:-<u></u>973597},{&quot;y&quot;:4958743,&quot;x&quot;:-<u></u>973592},{&quot;y&quot;:4958756,&quot;x&quot;:-<u></u>973591},{&quot;y&quot;:4958814,&quot;x&quot;:-<u></u>973591},{&quot;y&quot;:4958840,&quot;x&quot;:-<u></u>973591},{&quot;y&quot;:4958960,&quot;x&quot;:-<u></u>973593},{&quot;y&quot;:4958975,&quot;x&quot;:-<u></u>973594},{&quot;y&quot;:4959106,&quot;x&quot;:-<u></u>973598},{&quot;y&quot;:4959248,&quot;x&quot;:-<u></u>973603},{&quot;y&quot;:4959248,&quot;x&quot;:-<u></u>973611},{&quot;y&quot;:4959101,&quot;x&quot;:-<u></u>973607},{&quot;y&quot;:4959064,&quot;x&quot;:-<u></u>973606}],&quot;m&quot;:759,&quot;st&quot;:&quot;Avenida Fernandes Lavrador&quot;}]};<br>

<br>
Bom trabalho,<br>
<br>
Jorge<br>
<br>
<br>
<br>
Em 16-03-2012 18:59, Marcos escreveu:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Eis aqui um fragmento da Tabela:<br>
<br>
P1      C1      P2      C2      P3      C3<br>
Travessa da Paz, 32     Rua das Agras, 97       Rua de Júlio Diniz, 47  Rua<br>
Cândido dos Reis, 55    Avenida da Boa Vista, 1000      Rua do Ribeirinho, 90<br>
Rua de Santa Isabel, 40         Rua Cândido dos Reis,107        Rua de Ricardo<br>
Severo,90       Rua do Regadio, 12      Avenida da Boa Vista, 786       Travessa<br>
França Junior, 33<br>
<br>
<br>
<br>
Cada linha representa percursos (de P1 a C1, de P2 a C2 e de P3 a C3)  e<br>
todas os percursos são realizados pela mesma pessoa.<br>
<br>
Penso que como fluxo de trabalho, eu possa geocodificar cada uma das<br>
colunas a partir de uma ferramenta como o BatchGeocode, depois converter<br>
o resultado em shapefile e extrair-lhe as coordenadas.<br>
<br>
O amigo pode indicar-me como converter as coordenadas LAT/LONG em<br>
múltiplos percursos?<br>
<br>
<br>
<br>
<br>
Sinceros cumprimentos,<br>
<br>
Marcos Ummus<br>
<br>
<br>
No dia 16 de Março de 2012 08:43, Jorge Gustavo Rocha &lt;<a href="mailto:jgr@di.uminho.pt" target="_blank">jgr@di.uminho.pt</a><br></div>
&lt;mailto:<a href="mailto:jgr@di.uminho.pt" target="_blank">jgr@di.uminho.pt</a>&gt;&gt; escreveu:<div class="im"><br>
<br>
    Olá Marcos,<br>
<br>
    Passa-nos uma linha ou duas da tabela, só para ver quão<br>
    fácil/difícil será o geocoding. Se fossem coordenadas, era canja de<br>
    galinha, mas parece-me que tens moradas, certo?<br>
<br>
    De repente, parece-me que podes usar os serviços da SAPO, que te dão<br>
    as duas coisas: geocoding e itenerários.<br>
<br>
    Vê um exemplo em:<br></div>
    <a href="http://api.mapas.sapo.pt/__gallery-itineraries.php" target="_blank">http://api.mapas.sapo.pt/__<u></u>gallery-itineraries.php</a><div><div class="h5"><br>
    &lt;<a href="http://api.mapas.sapo.pt/gallery-itineraries.php" target="_blank">http://api.mapas.sapo.pt/<u></u>gallery-itineraries.php</a>&gt;<br>
<br>
    Inspirado no exemplo, fazes algo um pouco mais elaborado, que será<br>
    um ciclo a percorrer todos os teus pontos. Não é complicado de se<br>
    implementar. Usas a API para os cálculos e guardas os resultados.<br>
<br>
    Abraço,<br>
<br>
    Jorge<br>
<br>
    Em 16-03-2012 05:42, Marcos escreveu:<br>
<br>
        Olá, amigos!<br>
<br>
        Eis o caso:<br>
<br>
        tenho uma tabela (com centenas de linhas) onde existem seis colunas<br>
        diferentes<br>
        (todas as linhas guardam moradas/endereços):<br>
<br>
        P1  /  C1  /  P2  /  C2  /  P3  /  C3<br>
<br>
        P - Ponto de Partida (Startpoint)<br>
        C - Ponto de Chegada (Endpoint)<br>
<br>
        O que eu gostaria de fazer é traçar automaticamente rotas entre<br>
        estes<br>
        pontos: de P1 a C1, de P2 a C2 e de P3 a C3.<br>
<br>
        Pensei em ajuntar em duas colunas gerais &quot;Ponto de Partida&quot; e<br>
        &quot;Ponto de<br>
        Chegada&quot;, mas não posso, pois tratam-se de Percursos concatenados.<br>
<br>
        Ainda assim, não conheço nenhuma ferramenta que me permita<br>
        geocodificar<br>
        automaticamente rotas a patir de uma tabela com múltiplas linhas..<br>
<br>
        Algum dos amigos poderia me ajudar?<br>
<br>
        Sinceros Cumprimentos,<br>
<br>
        Marcos Ummus<br>
<br>
<br></div></div>
        ______________________________<u></u>___________________<br>
        Portugal mailing list<br>
        <a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a> &lt;mailto:<a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.<u></u>org</a>&gt;<br>
        <a href="http://lists.osgeo.org/__mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/__<u></u>mailman/listinfo/portugal</a><div class="im"><br>
        &lt;<a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/portugal</a>&gt;<br>
<br>
<br>
<br>
    --<br>
    Jorge Gustavo Rocha<br>
    Departamento de Informática<br>
    Universidade do Minho<br>
    4710-057 Braga<br></div>
    Tel: <a href="tel:%2B351%20253604480" value="+351253604480" target="_blank">+351 253604480</a> &lt;tel:%2B351%20253604480&gt;<br>
    Fax: <a href="tel:%2B351%20253604471" value="+351253604471" target="_blank">+351 253604471</a> &lt;tel:%2B351%20253604471&gt;<br>
    Móvel: <a href="tel:%2B351%20910333888" value="+351910333888" target="_blank">+351 910333888</a> &lt;tel:%2B351%20910333888&gt;<br>
    skype: nabocudnosor<br>
    ______________________________<u></u>___________________<br>
    Portugal mailing list<br>
    <a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a> &lt;mailto:<a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.<u></u>org</a>&gt;<br>
    <a href="http://lists.osgeo.org/__mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/__<u></u>mailman/listinfo/portugal</a><br>
    &lt;<a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/portugal</a>&gt;<div class="im"><br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
Portugal mailing list<br>
<a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/portugal</a><br>
</div></blockquote><div class="HOEnZb"><div class="h5">
<br>
<br>
-- <br>
Jorge Gustavo Rocha<br>
Departamento de Informática<br>
Universidade do Minho<br>
4710-057 Braga<br>
Tel: <a href="tel:%2B351%20253604480" value="+351253604480" target="_blank">+351 253604480</a><br>
Fax: <a href="tel:%2B351%20253604471" value="+351253604471" target="_blank">+351 253604471</a><br>
Móvel: <a href="tel:%2B351%20910333888" value="+351910333888" target="_blank">+351 910333888</a><br>
skype: nabocudnosor<br>
______________________________<u></u>_________________<br>
Portugal mailing list<br>
<a href="mailto:Portugal@lists.osgeo.org" target="_blank">Portugal@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/portugal" target="_blank">http://lists.osgeo.org/<u></u>mailman/listinfo/portugal</a><br>
</div></div></blockquote></div><br></div>