I had the same problem,
all function don't react the same way when hitting precision limit.

You may want to translate your data to reduce digits, and/or use
ST_SnapToGrid on everything before using ST_ClosestPoint.

Cheers,
Rémi-C


2013/10/28 Nicolas Ribot <[email protected]>

> Hmm this is strange:
>
> Finding the closest point (st_closestPoint) or using
> st_lineLocatePoint to project point onto the line does not work either
> on the provided dataset.
> Though the st_distance(line, point) returns 0.
>
> Nicolas
>
>
>
> On 28 October 2013 18:42, Rémi Cura <[email protected]> wrote:
> > You may want to split not with point but with the projected point one
> line
> > (use http://postgis.refractions.net/docs/ST_ClosestPoint.html)
> > If it is not enough, you may want to translate all your geometries to
> reduce
> > the number of digits in coordinates.
> > Another possibility is to use ST_Snap to snap line to point (won't work
> the
> > other way)
> >
> > Cheers,
> > Rémi-C
> >
> >
> > 2013/10/28 Nicolas Ribot <[email protected]>
> >>
> >> Hi,
> >>
> >> The points are not on the line, probably due to rounding errors.
> >>
> >> st_contains(line, point) returns false.
> >>
> >> Nicolas
> >>
> >> On 28 October 2013 18:07, franco base <[email protected]> wrote:
> >> > Hi.
> >> > I have a set of linestring and point on linestring.
> >> > I want cut the linestring on the point.
> >> > I can have n points for one linestring,
> >> > so I use ST_Split
> >> > (insted of ST_Line_Interpolate_Point and ST_Line_Substring)
> >> > but it doesn't work.
> >> >
> >> > line;geom_line;point;geom_point
> >> >
> >> >
> 7646;"0102000020BB0B000006000000A4703D0A471F37412D211F04AF335341FAEDEBE0491F3741325530C2AE335341BD5296014F1F37418FC2F578AE3353414694F606521F3741D2DEE07BAE3353412D211F74541F37418FC2F578AE33534123B9FC675020374112143FF6BC335341";11764;"0101000020BB0B00005713362F611F37410D996234AF335341"
> >> >
> >> >
> 7646;"0102000020BB0B000006000000A4703D0A471F37412D211F04AF335341FAEDEBE0491F3741325530C2AE335341BD5296014F1F37418FC2F578AE3353414694F606521F3741D2DEE07BAE3353412D211F74541F37418FC2F578AE33534123B9FC675020374112143FF6BC335341";11769;"0101000020BB0B00005EF0DD584620374139BF2762BC335341"
> >> >
> >> >
> 7646;"0102000020BB0B000006000000A4703D0A471F37412D211F04AF335341FAEDEBE0491F3741325530C2AE335341BD5296014F1F37418FC2F578AE3353414694F606521F3741D2DEE07BAE3353412D211F74541F37418FC2F578AE33534123B9FC675020374112143FF6BC335341";11762;"0101000020BB0B0000A5CBC785841F374156A2A33CB1335341"
> >> >
> >> > ST_GeometryType(St_Split(geom_line, geom_point))
> >> > give "ST_GeometryCollection"
> >> >
> >> > but
> >> >
> >> > (ST_Dump(ST_Split(geom_line, geom_point))).geom
> >> >
> >> > return only 3 linestring (one for record) and the geometry is egual to
> >> > geom_line
> >> >
> >> >
> >> > thanks.
> >> >
> >> > fb
> >> >
> >> > _______________________________________________
> >> > 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
> _______________________________________________
> 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

Reply via email to