Limitations

edit

Coordinates

  • Few projections, no grids. The coordinate reference systems are those of the transverse Mercator, Lambert conformal conic and Mercator projections, such as UTM, Lambert 93 and Web Mercator. Other projections, such as the oblique Mercator of Switzerland, the Albers or the Lambert azimuthal equal-area projections of statistical maps, and the state plane systems that use them, need a CoordinateReferenceSystem of your own. The datums are shifted with Helmert transformations, not with grids, so a conversion between datums is accurate to a few meters, and the WKT 2 definitions are only read by their EPSG code. The writers do not write the SRID of EWKT and EWKB, and write a .prj file of WGS 84.
  • Straight edges for the geometry operations. The geometry operations and LabelPosition treat the edges as straight lines on an equirectangular map. Only GeoPolygon.Contains and GetBounds offer great-circle edges, computed on a sphere, not on the ellipsoid. Split the shapes that cross the 180th meridian with SplitAtAntimeridian before the operations.

Data that the model does not keep

  • No sensor data. A GeoPosition keeps a time and a measure, but not the other data of each point of a GPX track or of a gx:Track, such as the heart rate or the cadence of their extensions.
  • No styles. The styles of KML and the icons of KMZ files are not read.
  • No folders. The folders of a KML document become a folder property, and are not written back.

Formats

The library does not read GeoParquet, GeoPackage, MapInfo, GML or CSV files. A CSV file whose column holds WKT can be read with Meziantou.Framework.Csv and WellKnownText.

The readers load the whole document in memory: they do not stream the features of large files. The FlatGeobuf reader only decodes the features of a region when the file has a spatial index, but reads the whole file.