[gdal-dev] Call for discussion about RFC 61: Support for measures in geometries

Ari Jolma ari.jolma at gmail.com
Wed Feb 3 22:54:07 PST 2016


03.02.2016, 16:11, Even Rouault kirjoitti:
> Le mercredi 03 février 2016 14:36:14, Ari Jolma a écrit :
>> I finally have the (existing) autotests passing with the new API -
>> basically just replacing the nCoordDimension property of OGRGeometry
>> with flags (for Z and M) - and a rather large set of tests for
>> import/export WKT and WKB with M passing.
> That's great !

Yes, except that I just found out that despite of the already large set 
of test WKT strings, a simple one like

GEOMETRYCOLLECTION M (POINT (1 2 3))

produces, when read in and printed out as ISO WKT

GEOMETRYCOLLECTION Z (POINT (1 2 3))

The problem is that neither OGR_G_CreateFromWkt() nor 
OGRGeometryFactory::createFromWkt does not have OGRwkbVariant 
eWkbVariant parameter (as OGRGeometryFactory::createFromWkb but not 
OGR_G_CreateFromWkb), which would at least make the case more clear in 
the code.

Reading OGC common architecture (1.2.1) it seems to me that the WKT is 
in fact invalid and it should be

GEOMETRYCOLLECTION M (POINT M (1 2 3))

Also PostGIS returns the error " can not mix dimensionality" with the 
above one.

However, interestingly, PostGIS accepts

MULTICURVE M (CIRCULARSTRING (0 0 2,1 0 2,0 0 2),(0 0 2,1 1 2))

and

MULTICURVE M (CIRCULARSTRING Z (0 0 2,1 0 2,0 0 2),(0 0 2,1 1 2))

although, in the latter one PostGIS converts the Z into M.

I think the path I'll take will be to rather easily spit out "corrupt 
data" (or a new "mixed geometries" error) for cases which involve M.

Ari

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20160204/2fb28c94/attachment-0001.html>


More information about the gdal-dev mailing list