Buongiorno a tutti!
Devo generare con PostGIS i centroidi di alcuni poligoni, una parte di essi
sono estremamente concavi per cui il centroide ricade all'esterno del
poligono "padre". Con QGIS risolvo la questione con il plugin realcentroids
ma volendo fare questo in PostGIS la sola funzione ST_Centroid non basta.
Mi sapete dire se è possibile forzarla a generare il punto all'interno del
poligono padre?
Se ci sono altre alternative proponete pure 
-----
Ingegnere, consulente GIS e ciclista urbano
--
Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
Massimiliano Moraca wrote
Buongiorno a tutti!
Devo generare con PostGIS i centroidi di alcuni poligoni, una parte di
essi
sono estremamente concavi per cui il centroide ricade all'esterno del
poligono "padre". Con QGIS risolvo la questione con il plugin
realcentroids
ma volendo fare questo in PostGIS la sola funzione ST_Centroid non basta.
Mi sapete dire se è possibile forzarla a generare il punto all'interno del
poligono padre?
Se ci sono altre alternative proponete pure 
Ciao,
PostGIS: ST_PointOnSurface --->
https://postgis.net/docs/ST_PointOnSurface.html
SpatiaLite: ST_PointOnSurface ---->
http://www.gaia-gis.it/gaia-sins/spatialite-sql-4.2.0.html
QGIS: point_on_surface(geom) ----> https://goo.gl/71cRD8
SALUTI
-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
Prova con calcolatore di campi usando la funzione:
point_on_surface( $geometry )
Il giorno ven 2 nov 2018 alle ore 08:55 Massimiliano Moraca <
massimilianomoraca@gmail.com> ha scritto:
Buongiorno a tutti!
Devo generare con PostGIS i centroidi di alcuni poligoni, una parte di essi
sono estremamente concavi per cui il centroide ricade all'esterno del
poligono "padre". Con QGIS risolvo la questione con il plugin realcentroids
ma volendo fare questo in PostGIS la sola funzione ST_Centroid non basta.
Mi sapete dire se è possibile forzarla a generare il punto all'interno del
poligono padre?
Se ci sono altre alternative proponete pure 
-----
Ingegnere, consulente GIS e ciclista urbano
--
Sent from:
http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
796 iscritti al 28/12/2017
Come così?
point_on_surface( ST_Centroid( $geometry ) )
Non torno al pc prima di qualche ora e non posso quindi verificare...
Il giorno ven 2 nov 2018 alle ore 09:18 Marco Spaziani <
spaziani.marco@gmail.com> ha scritto:
Prova con calcolatore di campi usando la funzione:
point_on_surface( $geometry )
Il giorno ven 2 nov 2018 alle ore 08:55 Massimiliano Moraca <
massimilianomoraca@gmail.com> ha scritto:
Buongiorno a tutti!
Devo generare con PostGIS i centroidi di alcuni poligoni, una parte di
essi
sono estremamente concavi per cui il centroide ricade all'esterno del
poligono "padre". Con QGIS risolvo la questione con il plugin
realcentroids
ma volendo fare questo in PostGIS la sola funzione ST_Centroid non basta.
Mi sapete dire se è possibile forzarla a generare il punto all'interno del
poligono padre?
Se ci sono altre alternative proponete pure 
-----
Ingegnere, consulente GIS e ciclista urbano
--
Sent from:
http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
796 iscritti al 28/12/2017
https://gis.stackexchange.com/questions/193027/postgis-get-a-point-inside-a-line-or-polygon
Il giorno ven 2 nov 2018 alle ore 09:20 Massimiliano Moraca <
massimilianomoraca@gmail.com> ha scritto:
Come così?
point_on_surface( ST_Centroid( $geometry ) )
Non torno al pc prima di qualche ora e non posso quindi verificare...
Il giorno ven 2 nov 2018 alle ore 09:18 Marco Spaziani <
spaziani.marco@gmail.com> ha scritto:
Prova con calcolatore di campi usando la funzione:
point_on_surface( $geometry )
Il giorno ven 2 nov 2018 alle ore 08:55 Massimiliano Moraca <
massimilianomoraca@gmail.com> ha scritto:
Buongiorno a tutti!
Devo generare con PostGIS i centroidi di alcuni poligoni, una parte di
essi
sono estremamente concavi per cui il centroide ricade all'esterno del
poligono "padre". Con QGIS risolvo la questione con il plugin
realcentroids
ma volendo fare questo in PostGIS la sola funzione ST_Centroid non basta.
Mi sapete dire se è possibile forzarla a generare il punto all'interno
del
poligono padre?
Se ci sono altre alternative proponete pure 
-----
Ingegnere, consulente GIS e ciclista urbano
--
Sent from:
http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/
_______________________________________________
Gfoss@lists.gfoss.it
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni
dell'Associazione GFOSS.it.
796 iscritti al 28/12/2017
On Fri, 2 Nov 2018 09:20:08 +0100, Massimiliano Moraca wrote:
Come così?
point_on_surface( ST_Centroid( $geometry ) )
no, non cosi' ma cosa':
SELECT ST_PointOnSurface(geometry);
che tu usi PostGIS o SpatiaLite o QGIS ha ben poca importanza,
visto che in tutti i casi il lavoro vero e proprio viene
comunque delegato alla libreria GEOS.
la GEOS da parte sua supporta due diverse API che vengono
poi incapsulate all'interno delle corrispondenti funzioni SQL:
1. GEOSCentroid()
questa ritorna sempre il centroide geometricamente
corretto, che nel caso di poligoni concavi puo'
facilmente cadere all'esterno della figura
2. GEOSPointOnSurface()
invece questa per prima cosa prova a chiamare la
precedente, e poi verifica se il punto ottenuto
cade o meno all'interno della figura.
se il vincolo non e' verificato, allora prova a
generare ciclicamente altri punti fino a quando
non riesce a trovarne uno che effettivamente
cada all'interno della figura.
ovviamente questa seconda funzionalita' e' piu'
lenta della precedente, perche' puo' richiedere
elaborazioni piu' lunghe e complesse, ma in genere
si tratta di differenze abbastanza marginali.
ciao Sandro
Grazie mille a tutti, alla fine ho usato ST_PointOnSurface ed ho notato che
vengono ricentrati anche i centroidi che cadono dentro il poligono e
generati da ST_Centroid.
Nell'immagine che vedete i punti verdi sono quelli posizionati da
ST_PointOnSurface mentre i blu sono quelli di ST_Centroid.
<http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/file/t395848/export.png>
-----
Ingegnere, consulente GIS e ciclista urbano
--
Sent from: http://gfoss-geographic-free-and-open-source-software-italian-mailing.3056002.n2.nabble.com/