[geos-devel] Dimension Changes

Frank Warmerdam warmerdam at pobox.com
Mon May 31 10:52:43 EDT 2010


Folks,

I have completed the changes related to dimensions that were previously
discussed (in trunk).  This includes tickets:

  #311 - correcting GEOSGeom_getDimensions()
         adding GEOSGeom_getCoordinateDimension()

  #292 - WKTWriter 3D writing support
         added _setOutputDimension() and _setOld3D() methods (also in C API)

  #346 - Fix WKBWriter corrupt output if 2D geometry written when writer is
         set with outputDimension of 3.

  #347 - fixed WKTReader to support new style Z, M and ZM geometries.

  #345 - Change CoordinateArraySequence to keep track of dimension.

With these changes converting between WKT, WKB and geos::Geometry objects
should preserve the coordinate dimension of geometries.  As mentioned earlier
many actual geometry operations likely do not preserve the dimension in the
result.  For instance the intersection of two 2D geometries may be
unnecessarily marked as 3D.  I have no immediate plans to dig into this
though I might if it impacts Ingres.

The change to the behavior of the C API GEOSGeom_getDimensions() is a
non-backward compatible change but as was the apparent consensus on the
list I am doing it because it is a bug fix.   I don't anticipate many problems
from it.  But it should be mentioned in release notes if we have such things.

Now, at last I can set my editor back to sensible 8-wide tabs again.

Best regards
-- 
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent



More information about the geos-devel mailing list