On Thu, 20 Jan 2011 12:32:46 +0000 (GMT), Francesco Geri wrote 
> Io ero convinto che postgis potesse fare query 
> "on the fly" gestendo srid differenti 
>

Francesco,

certo che puoi (almeno, in linea di massima). 
come dici tu stesso, ST_Transform() serve 
proprio per questo.

Ma quando tu dici "on the fly", cosa intendi 
dire esattamente ?

cerco di farti un esempio "tera tera"; ammesso 
che tbl1.geom abbia SRID=32632 mentre 
tbl2.geom abbia SRID=4326

--------------------------- 
SELECT * 
FROM tbl1, tbl2 
WHERE ST_Intersects(tbl1.geom, tbl2.geom);

questa sicuramente fallisce, perchè SQL non ha la bacchetta 
magica, e non ha nessuna idea che tu intendi applicare 
una riproiezione.

------------------------ 
SELECT * 
FROM tbl1, tbl2, 
WHERE ST_Intersects(tbl1.geom, ST_Transform(tbl2.geom, 32632));

oppure

SELECT * 
 FROM tbl1, tbl2, 
 WHERE ST_Intersects(ST_Transform(tbl1.geom, 4326), tbl2.geom);

invece queste funzioneranno sicuramente,
perchè ora *entrambe* le geometrie appartengono
al medesimo SRID
ma glielo devi spiegare tu a SQL che occorre
applicare una riproiezione :-)

ciao Sandro

_______________________________________________
Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
[email protected]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
Non inviate messaggi commerciali.
I messaggi di questa lista non rispecchiano necessariamente
le posizioni dell'Associazione GFOSS.it.
485 iscritti al 20.11.2010

Rispondere a