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

Bounding boxes don't work at antimeridian (180 E long) #113

Open
smrgeoinfo opened this issue Dec 5, 2017 · 1 comment
Open

Bounding boxes don't work at antimeridian (180 E long) #113

smrgeoinfo opened this issue Dec 5, 2017 · 1 comment

Comments

@smrgeoinfo
Copy link

smrgeoinfo commented Dec 5, 2017

The map search can not handle bounding boxes that cross 180 E.
if they are encoded with the west boundary as a positive number <180 and East boundary > -180, the box gets indexed with the numerically lower value as the west boundary, so it wraps around the world.

if the are encoded using both west and east >0 or <0, but with ||abs value|| >180 on one side, the box is truncated at 180.

The only solution I've been able to find it putting in two bboxes, one east and one west of the 180 meridian. After applying the fix from issue #104 here, intersect searches function as expected. Unfortunately, the bb extents do not display when you mouse over the result in the results list if there's more that one geographicElement in the ISO metadata that is harvested. Centroids for boxes on both sides do show up in the SearchPanel map, but nothing shows up in the MapPanel using the GeoPortal search widget.

@smrgeoinfo
Copy link
Author

Investigating some more, it looks like the problem is in the EvaluatorBase.makeEnvelope function.
Why do the longitudes have to be -180<=long<=180?
Looks like its an ElasticSearch problem, but when I decompose a bbox across the antimeridian into two bboxes, one to east and one to west, 'within' queries still don't work AFAICT.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants