[postgis-users] ST_LineToCurve for less than 4 points

Paul Ramsey pramsey at opengeo.org
Tue Feb 28 07:32:27 PST 2012


No. This is a misunderstanding of purposes.

ST_LineToCurve is the inverse of ST_CurveToLine. CurveToLine takes in
a circular object and linearizes it, turning curves into regular small
sections of linear arcs to approximate the input shape.
LineToCurve analyzes an input linestring, looking for the tell-tale
regularity of linearized arcs and converts them back to real arcs. The
process can only work with linestrings that have for or more vertices
to analyze.

What Denis is looking for is probably something more like
http://trac.osgeo.org/postgis/ticket/1291

P.

On Tue, Feb 28, 2012 at 12:38 AM, Sandro Santilli <strk at keybit.net> wrote:
> On Tue, Feb 28, 2012 at 09:36:34AM +0100, Denis Rouzaud wrote:
>> Hi,
>>
>> Can someone tells me why ST_LineToCurve needs at least a linestring
>> of 4 points to be run?
>> If I have three points, I should be able to create a circularstring, right?
>>
>> Here the error I have:
>> SELECT ST_LineToCurve(ST_GeomFromText('LINESTRING(554803.177682475
>> 145390.853708235,554796.469135702 145401.404724093,554769.634948609
>> 145404.042478058)'));
>> ERROR:  pta_desegmentize needs implementation for npoints < 4
>
> If I read the message correctly it answers exactly your questions.
> It "needs implementation". A patch is welcome.
>
> --strk;
>
>  ,------o-.
>  |   __/  |    Delivering high quality PostGIS 2.0 !
>  |  / 2.0 |    http://strk.keybit.net - http://vizzuality.com
>  `-o------'
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users



More information about the postgis-users mailing list