[geos-devel] Breaking changes to WKT output for GEOS 3.12 dev

Mike Taves mwtoews at gmail.com
Wed May 10 17:09:07 PDT 2023


Hi All,

Since not everyone is subscribed to GitHub changes, this email is to
provide a "heads up" to proposed breaking changes to WKT output for
GEOS 3.12.

The first is to change MultiPoint WKT to use parentheses in
sub-members https://github.com/libgeos/geos/pull/903

E.g. from "MULTIPOINT (2 8, 3 9)" to "MULTIPOINT ((2 8), (3 9))"

While the former is deprecated, it will continue to be supported by WKTReader.


A second suite of changes I've been scheming is to modify the defaults
for WKTWriter:
 - Change trim from 0 for 'off' to 1 for 'on'
 - Change OutputDimension from 2 to 4

This would allow the default WKTWriter to produce familiar output,
whereas the current default only produces 2D WKT usually with many
decimals.

For example, take an XYZ point with x=1.1, y=2.2, z=3.3, these are the
default WKTWriter results:
 - Current: POINT (1.1000000000000001 2.2000000000000002)
 - Proposed: POINT Z (1.1 2.2 3.3)

Additionally WKBWriter's OutputDimension could be changed from 2 to 4
too. E.g. via writeHEX:
 - Current: 01010000009A9999999999F13F9A99999999990140
 - Proposed: 01010000809A9999999999F13F9A999999999901406666666666660A40

Note that OutputDimension for WKT and WKB writers will always write 2D
for XY geometries, regardless of setting.

These changes don't have any pull request yet, as they are subject to
discussion first.

Opinions welcome!

Cheers,
Mike


More information about the geos-devel mailing list