[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