Oops my bad :-/ I use http://postgis.refractions.net/docs/ST_StartPoint.html for this kind of stuff,
it is fast but the point may not be "within" enough for you (http://en.wikipedia.org/wiki/DE-9IM) Cheers, Rémi-C 2014-05-05 17:10 GMT+02:00 <[email protected]>: > Having a centroid outside a polygon is a common situation, even with valid > geometries. > > Depending of use case, I use ST_PointOnSurface when > ST_Within(St_Centroid(surface), > surface) returns false > > steve > > > > > *Rémi Cura <[email protected] <[email protected]>>@lists.osgeo.org > <http://lists.osgeo.org>* > Envoyé par : [email protected] > > 2014-05-05 07:09 > Veuillez répondre à > PostGIS Users Discussion <[email protected]> > > A > PostGIS Users Discussion <[email protected]> > cc > Objet > Re: [postgis-users] Point inside a polygon > > > > > > > Hmm your problem is not about a function, is about using invalid > geometries ! > > Why simply don't fix your geometry? > you must do it anyway if you want to use PostGIS > without strange bugs. > > Use > *http://postgis.refractions.net/docs/ST_MakeValid.html*<http://postgis.refractions.net/docs/ST_MakeValid.html> > > Cheers, > Rémi-C > > > 2014-05-03 15:51 GMT+02:00 Larry Reeder > <*[email protected]*<[email protected]> > >: > Another thing to be aware of with ST_PointOnSurface is it can return a > point that's on the boundary of polygon, but *not inside* the polygon, so > that ST_Within(St_PointOnSurface(surface), surface) returns false. That's > bitten me before, but may be OK for your purposes. > > -Larry > > > > > On Fri, May 2, 2014 at 1:38 PM, Åsmund Tokheim > <*[email protected]*<[email protected]>> > wrote: > Hi > > You can use st_closestpoint(geom, st_centroid(geom)) to make sure that the > returned point is in most circumstances at or near the centroid, and always > at least on the boundary of the polygon. While st_pointonsurface certainly > will be faster, it will often choose a more random point on the surface. > > Åsmund > > > On Fri, May 2, 2014 at 12:45 PM, Nicolas Ribot > <*[email protected]*<[email protected]>> > wrote: > Hi, > > Use st_pointOnSurface ( > *http://postgis.net/docs/manual-2.1/ST_PointOnSurface.html*<http://postgis.net/docs/manual-2.1/ST_PointOnSurface.html> > ) > > Nicolas > > > On 2 May 2014 06:32, J.Alejandro Martinez Linares < > *[email protected]* <[email protected]>> wrote: > Hi people, i need your help, i was using st_centroid to get a point that > be inside a polygon butr st_centroid got a property that is a problem to > me, it returns a point that not always is inside the polygon, cause when > the polygon has an irregular form, the point that st_centroid is outside > the polygon, and i need a function that do a similar thing that st_centroid > but i need that the point it returns always be inside the polygon, is there > a function that do that? > > cheers. > > -- > > Este mensaje le ha llegado mediante el servicio de correo electronico que > ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema > Nacional de Salud. La persona que envia este correo asume el compromiso de > usar el servicio a tales fines y cumplir con las regulaciones establecidas > > Infomed: *http://www.sld.cu/* <http://www.sld.cu/> > > _______________________________________________ > postgis-users mailing list > *[email protected]* <[email protected]> > *http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users*<http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users> > > > _______________________________________________ > postgis-users mailing list > *[email protected]* <[email protected]> > *http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users*<http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users> > > > _______________________________________________ > postgis-users mailing list > *[email protected]* <[email protected]> > *http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users*<http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users> > > > _______________________________________________ > postgis-users mailing list > *[email protected]* <[email protected]> > *http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users*<http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users> > _______________________________________________ > postgis-users mailing list > [email protected] > http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users > > > > _______________________________________________ > postgis-users mailing list > [email protected] > http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users >
_______________________________________________ postgis-users mailing list [email protected] http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users
