Necesito obtener el punto central de una línea o polígono para crear marker
mi aplicación. De modo que cuando hace clic en un marcador aparece la geometría (línea o polígono). Solía ST_Centroid
hacerlo funcionar.
El resultado es lo que esperaba que desatara algunos polígonos o líneas cuyos centroides están fuera de la geometría. Lo que me gustaría para esas líneas o polígonos es obtener el "punto más central" pero dentro de la geometría.
¿Cómo puedo hacer esto? ¿Hay alguna solución?
postgis
polygon
linestring
centroids
Jose Hermosilla Rodrigo
fuente
fuente
En mi caso, tengo cada geometría en tablas de disctint. Lo que hice fue:
ST_LineInterpolatePoint()
con factor 0.5.ST_Centroid()
está dentro de su geometría. Si es así,ST_Centroid()
es la mejor opción, si no elijoPointOnSurface()
.Aquí está la consulta:
fuente