I'd like to make a CIRCULARSTRING in PostGIS 2.0.0 out of points that are calculated as part of the query (rather than constants). For a LINESTRING I can do this using ST_MakeLine(). Is there an equivalent for CIRCULARSTRING or some other way to do this?
I have 3 points that are calculated in some way (in the example let's just use ST_GeomFromText):
SELECT ST_GeomFromText('POINT(10 10)'), ST_GeomFromText('POINT(15 10)'), ST_GeomFromText('POINT(10 20)') What I want to get is CIRCULARSTRING(10 10, 15 10, 10 20).
If I run:
ST_LineToCurve(ST_MakeLine(ARRAY[ST_GeomFromText('POINT(10 10)'), ST_GeomFromText('POINT(15 10)'), ST_GeomFromText('POINT(10 20)')])) That gives me LINESTRING(10 10,15 10,10 20), not a CIRCULARSTRING.
Same question for CURVEPOLYGON - what can I use instead of ST_MakePolygon (which returns "Shell is not a line" if I pass in a CIRCULARSTRING)?