[Gfoss] PointOnSurface SU UNO SHP CON GEOMETRIA DI TIPO "Multipolygon"

Paolo Corti pcorti a gmail.com
Mer 6 Feb 2013 17:45:48 CET


ciao

2013/2/6 Umberto Filippo Minora <umberto.minora a unimi.it>:
> Salve a Tutti,
> sto provando per la prima volta a usare una funzione scritta in SQL su DB
> Manager (plugin di QGIS 1.8).
> Ho importato il database interessato, contenente lo shp
> (denominato'glcrs_2001') su cui voglio applicare la funzione PointOnSurface.
> Quando vado nella finestra SQL scrivo questo:
>
> select pointonsurface ('glcrs_2001')

come scritto anche da Giuseppe:
supponendo che il tuo layer si chiami miolayer, e che la geometria sia
contenuta sul campo geometry e che abbia una chiave primaria id,
l'istruzione SQL da usare e' la seguente:

SELECT id, ST_PointOnSurface(geometry) AS geometry FROM miolayer

>
> . Domanda: PointOnSurface mi dà sempre gli
> stessi punti o ogni volta che lo applico agli stessi poligoni, i punti
> vengono generati in posizioni casuali? Spero la prima, altrimenti è come
> Random Point e non è quello che mi serve.
> Grazie in anticipo per l'eventuale aiuto!

Qui dipende dall'algoritmo che viene utilizzato,  non ci metterei le
mani sul fuoco.
E anche se l'algoritmo non usa funzioni randomiche, le coordinate non
coincideranno mai perfettamente (stiamo parlando comunque di
discrepanze millesimali) da un output all'altro per problemi di
approssimazione numerica.

Curiosita': quale e' la finalita' della tua operazione?
ciao
p

-- 
Paolo Corti
Geospatial software developer
web: http://www.paolocorti.net
twitter: @capooti
skype: capooti


Maggiori informazioni sulla lista Gfoss