Support for multiple CRS in reprojection and application schemas

Description

Currently, simple vector data stores handle multiple CRS reasonably well (jdbc and property files) by encoding the different CRS as user data into the JTS geometries.

However, things go wrong when you try to reproject or build application schemas with these features.

Some code assumes that the CRS of the first geometry column is the default CRS of the feature (type). When you make application schemas with multiple CRS you need to be aware of this so that the default geometry in your schema is also the first column in your database table. I do no attempt to change this, since that would be huge and it can easily be respected.

However, if you attempt to reproject, the ReprojectFeatureReader will make a single MathTransform based on your default geometry's CRS, and then attempt to reproject all geometries with this single mathtransform, causing unexpected exceptions or errors if you are using different CRS.

Furthermore, app-schema will erase all CRS and replace it with a single one.

We would like to resolve these issues so that multiple CRS are better supported.

Environment

None

Activity

Fixed

Details

Assignee

Reporter

Components

Fix versions

Priority

Created October 4, 2021 at 8:45 PM
Updated October 18, 2021 at 3:39 PM
Resolved October 18, 2021 at 3:39 PM