Opened 14 years ago

Closed 13 years ago

#525 closed defect (fixed)

Contrary to doc, Multicurves do not allow the inclusion of Compound Curves

Reported by: ravenAtSafe Owned by: pramsey
Priority: medium Milestone: PostGIS 2.0.0
Component: postgis Version: 1.5.X
Keywords: Cc:

Description

Per http://postgis.refractions.net/docs/ch04.html#SQL_MM_Part3, Multicurves should be able to contain Compound Curves.

The MULTICURVE is a collection of curves, which can include linear
strings, circular strings or compound strings.

However, executing the following SQL:

select ST_GeometryFromText('MULTICURVE(COMPOUNDCURVE(CIRCULARSTRING(0
0, 1 1, 1 0),(1 0, 0 1)))', 4236);

results in this error:

ERROR: parse error - invalid geometry
SQL state: XX000
Hint: "MULTICURVE(COMPOUNDCURVE" <-- parse error at position 24 within geometry

Change History (1)

comment:1 by pramsey, 13 years ago

Milestone: PostGIS 1.5.3PostGIS 2.0.0
Resolution: fixed
Status: newclosed

Obviously this is an easy case to forget, as I forgot it in reworking the parser for 2.0 as well. It is now handled in 2.0 at r6364.

postgis20=# select ST_AsText(ST_GeometryFromText(
'MULTICURVE(COMPOUNDCURVE(
 CIRCULARSTRING(0 0, 1 1, 1 0),
 (1 0, 0 1)))', 4236));

                              astext                              
------------------------------------------------------------------
 MULTICURVE(COMPOUNDCURVE(CIRCULARSTRING(0 0,1 1,1 0),(1 0,0 1)))
(1 row)
Note: See TracTickets for help on using tickets.