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
GeoPolygonFilter fails on ambiguous polygons #9304
Comments
PR elastic#8672 addresses ambiguous polygons - those that either cross the dateline or span the map - by complying with the OGC standard right-hand rule. Since ```GeoPolygonFilter``` is self contained logic, the fix in elastic#8672 did not address the issue for the ```GeoPolygonFilter```. This was identified in issue elastic#5968 This fixes the ambiguous polygon issue in ```GeoPolygonFilter``` by moving the dateline crossing code from ```ShapeBuilder``` to ```GeoUtils``` and reusing the logic inside the ```pointInPolygon``` method. Unit tests are added to ensure support for coordinates specified in either standard lat/lon or great-circle coordinate systems. closes elastic#5968 closes elastic#9304
PR #8672 addresses ambiguous polygons - those that either cross the dateline or span the map - by complying with the OGC standard right-hand rule. Since ```GeoPolygonFilter``` is self contained logic, the fix in #8672 did not address the issue for the ```GeoPolygonFilter```. This was identified in issue #5968 This fixes the ambiguous polygon issue in ```GeoPolygonFilter``` by moving the dateline crossing code from ```ShapeBuilder``` to ```GeoUtils``` and reusing the logic inside the ```pointInPolygon``` method. Unit tests are added to ensure support for coordinates specified in either standard lat/lon or great-circle coordinate systems. closes #5968 closes #9304
PR #8672 addresses ambiguous polygons - those that either cross the dateline or span the map - by complying with the OGC standard right-hand rule. Since ```GeoPolygonFilter``` is self contained logic, the fix in #8672 did not address the issue for the ```GeoPolygonFilter```. This was identified in issue #5968 This fixes the ambiguous polygon issue in ```GeoPolygonFilter``` by moving the dateline crossing code from ```ShapeBuilder``` to ```GeoUtils``` and reusing the logic inside the ```pointInPolygon``` method. Unit tests are added to ensure support for coordinates specified in either standard lat/lon or great-circle coordinate systems. closes #5968 closes #9304
Reopening due to #9462 |
Bumping the version up to 1.7.1 for the today's release. |
PR elastic#8672 addresses ambiguous polygons - those that either cross the dateline or span the map - by complying with the OGC standard right-hand rule. Since ```GeoPolygonFilter``` is self contained logic, the fix in elastic#8672 did not address the issue for the ```GeoPolygonFilter```. This was identified in issue elastic#5968 This fixes the ambiguous polygon issue in ```GeoPolygonFilter``` by moving the dateline crossing code from ```ShapeBuilder``` to ```GeoUtils``` and reusing the logic inside the ```pointInPolygon``` method. Unit tests are added to ensure support for coordinates specified in either standard lat/lon or great-circle coordinate systems. closes elastic#5968 closes elastic#9304
removing the 1.x version label here, it just keeps getting bumped since ages. Please remember this when closing, that it might need to be backported |
It looks like this was addressed by 1a60e1c#diff-48767b395fcd07ab92b9c05815741b74R221 Can we close this now? |
+1 to close. I knew this one would eventually resolve itself but I forgot the issue was still open. :) |
Polygon ambiguity was addressed in
ShapeBuilder
via #8762.GeoPolygonFilter
, however, doesn't useShapeBuilder
and instead relies on legacypointInPolygon
code that fails on ambiguous polygons. One use-case example is presented in #5968 The suggested fix is to translate all candidate points andGeoPolygonFilter
points to great-circle coordinates. This, however, will cause a failure with anyGeoPolygonFilter
that crosses the prime meridian.The correct approach is to update the
GeoPolygonFilter
to leverage code written in #8762 by refactoring the ambiguous polygon logic to helper methods. This will also remove any legacy code (and rename any parameters) that might cause confusion when using the Java API.The text was updated successfully, but these errors were encountered: