Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to accommodate distortion in reproject_geom #325

Open
pjhartzell opened this issue Jun 29, 2022 · 0 comments
Open

Option to accommodate distortion in reproject_geom #325

pjhartzell opened this issue Jun 29, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@pjhartzell
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
The current implementation of the reproject_geom function simply maps geometry coordinates from one projection to another. For high distortion projections, this can result in the reprojected geometry not faithfully representing the distortion. For example, compare the reprojected geometry to the reprojected data when mapping from a sinusoidal projection to geographic WGS84 coordinates:

viirs-h11v05

The blue line is the result of simply reprojecting the geometry coordinates. The green line more accurately represents the projection distortion by adding additional vertices to the geometry coordinate list before reprojection.

Describe the solution you'd like
An option to insert additional vertices into the geometry coordinate list in order to more faithfully represent the distortion would be good. Even better would be an option to specify the "maximum error" that is acceptable in the reprojected geometry.

Describe alternatives you've considered
I've put together an example of one approach here that accepts an error "tolerance" (maximum error). One flaw is that it is brute force in the number of vertices added to the geometry prior to reprojection, which results in excess computations. A more elegant solution for densifying the geometry based on projection distortion is desirable, perhaps based on something like Tissot's indicatrix, provided the complexity does not outweigh the current brute force approach.

@pjhartzell pjhartzell added the enhancement New feature or request label Jun 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant