[Gfoss] difference in postgis
Andrea Peri
peri.rtoscana a gmail.com
Ven 18 Gen 2008 12:48:39 CET
Leggo che anche postgis usa il modello DE-9IM.
http://postgis.refractions.net/docs/ch06.html#id303440
--> ST_Relate(geometry, geometry)
Per cui potresti provare aimpostare una matrice e a farti ritornare il
risultato che chiedi.
Tieni presente che quando si confronta spazialmente i bordo e
l'interno di un elemento vanno trattati come se fossero entita'
distinte.
per cui vanno gestite opportunamente.
A questi links,
trovi alcune spiegazioni su come impostare la matrice e cosa
significano righe e colonne.
http://edndoc.esri.com/arcsde/9.1/general_topics/understand_spatial_relations.htm
http://docs.codehaus.org/display/GEOTDOC/Point+Set+Theory+and+the+DE-9IM+Matrix
Fai attenzione che nel caso dell'arco il boundary e' rappresentato dai
due vertici estremi e solo da quei due.
tutto il resto della linea va considerato come interno (interior).
Andrea.
2008/1/15, Luca Delucchi <lucadeluge at gmail.com>:
>
> Il 15/01/08, Andrea Antonello<andrea.antonello at gmail.com> ha scritto:
> > > Ciao a tutti sto cercando di fare un differenza tra due layer di
> > > postgis, in uno ho le strade provinciali e nell'altro ho le strade
> > > provinciali all'interno dei centri urbani; ora vorrei riuscire ad
> > > avere le strade provinciali all'esterno dei centri urbani. Sto
> > > provando con il comando difference(geomA,geomB)[1] ma come risultato
> > > ho sempre le strade provinciali complete, qualcuno ha qualche idea su
> > > come fare?
> >
> > Non credo che la funzione difference vada tanto bene per il tipo
> > linea. Il modello di precisione credo non permetta una cosa del
> > genere, anche se non sono sicuro di come venga gestito in postgis.
> > Visto che geos e' l'implementazione in C della JTS, credo che il
> > comportamento sia lo stesso e credo che la JTS non veda il bordo come
> > parte della quale tenere conto (non per niente esiste covers oltre a
> > contains). Tanti forse di fretta e tante cosa da controllare :)
> >
>
> Ho provato a fare anche la differenza tra le strade totali e quelle
> appartenenti all'area edificata ma il risultato è lo stesso
>
> > Comunque quello che farei nel tuo caso e' di creare un buffer attorno
> > al layer interno, anche minimo, e poi riprovare a sottrarre al totale
> > il layer risultante dal buffer.
> >
>
> Domani ci provo...
>
> > Fammi sapere,
> > Andrea
> >
>
> certo..intanto grazie
>
> Luca
>
> _______________________________________________
> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
> Gfoss at faunalia.com
> http://www.faunalia.com/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non rispecchiano necessariamente
> le posizioni dell'Associazione GFOSS.it.
>
--
~~~~~~~~~~~~~~~~~
§ Andrea §
§ Peri §
~~~~~~~~~~~~~~~~~
Maggiori informazioni sulla lista
Gfoss