Olá pessoal, essa é meio off topic, mas exige o tratamento de um array e eu
realmente não estou conseguindo fazer, vejam só... Tenho o array de objetos
abaixo:
Array
(
[0] => stdClass Object
(
[gid] => 178
[comprimento] => 4304.33549546129
[pnt_inicial] => POINT(259885 9193105)
[pnt_final] => POINT(261675 9196115)
)
[1] => stdClass Object
(
[gid] => 124
[comprimento] => 1006.24891681028
[pnt_inicial] => POINT(261675 9196115)
[pnt_final] => POINT(262400 9196695)
)
[2] => stdClass Object
(
[gid] => 243
[comprimento] => 7470.68109219034
[pnt_inicial] => POINT(262855 9190095)
[pnt_final] => POINT(261675 9196115)
)
[3] => stdClass Object
(
[gid] => 244
[comprimento] => 1926.81240867132
[pnt_inicial] => POINT(262855 9190095)
[pnt_final] => POINT(264465 9190755)
)
[4] => stdClass Object
(
[gid] => 254
[comprimento] => 1828.52813742386
[pnt_inicial] => POINT(264215 9189275)
[pnt_final] => POINT(262855 9190095)
)
)
Resultado da seguinte consulta:
SELECT gid, ST_Length(rio_geom) AS comprimento,
ST_AsText(ST_StartPoint(rio_geom)) AS pnt_inicial,
ST_AsText(ST_EndPoint(rio_geom)) AS pnt_final
FROM
(SELECT r.gid, ST_Intersection(r.the_geom, b.the_geom) AS rio_geom
FROM rio r, bacia b
WHERE ST_Intersects(r.the_geom,b.the_geom)
AND b.gid = 280) AS tabela_intersecao
ORDER BY pnt_inicial;
Agora eu quero encontrar o comprimento do rio de maior bacia, que nesse caso
seria a soma do comprimentos dos trechos com gid igual a: 124, 243 e 244
(ver figura em anexo). fica fácil verificar isso, pois os pontos iniciais e
finais desses trechos possuem as mesmas coordenadas.
Imaginei o seguinte... fazendo um loop e armazenando em uma variável do tipo
array os comprimentos, onde se algum trecho tiver ponto inicial igual a um
ponto final de outro trecho (ou vice-versa), os comprimentos devem ser
acumulados, depois é só extrair do array o seu maior valor. Alguém poderia
me ajudar na resolução desse problema? pago uma ceverja, rs.
Um abraço,
--
*Marcello Benigno B. de Barros Filho*
Prof. do Curso Superior de Tecnologia em Geoprocessamento - IFPB
Mestre em Ciências Geodésicas e Tecnologias da Geoinformação - UFPE
http://profmarcello.blogspot.com
http://about.me/marcello.benigno
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------