linz / gazetteer

New Zealand Gazetteer of official place names
http://www.linz.govt.nz/regulatory/place-names/find-name/new-zealand-gazetteer-official-geographic-names/new-zealand-gazetteer-search-place-names#zoom=0&lat=-41.14127&lon=172.5&layers=BTTT
Other
2 stars 2 forks source link

Spatial search wrapping around planet for searches at 180° #207

Open CMKMS-LINZ opened 4 years ago

CMKMS-LINZ commented 4 years ago

Bug Description

Spatial searches when 180° longitude visible in map window don't work as intended

Steps to Reproduce

If: 1): the 'Limit Search to map area' box is ticked to conduct a spatial search, 2): the user searches without anything in the search box, 3): clicks search while 180° longitude is visible 4): results for everything from 180°E to -180°W eastward (ie, planet wrap around) will be received instead of the area of the map window

Similarly, if 1): the 'Limit Search to map area' box is ticked to conduct a spatial search, 2): the user searches for the name of a feature that would be parallel to the map area east or west 3): clicks search while 180° longitude is visible, zoomed in in the ocean 4): results for the feature will be populated

Searching a spatial window entirely over 180°, such as while zoomed in on the Chatham Islands, behaves as expected, though selecting a feature leads to #206

Desktop

Screenshots

image

SPlanzer commented 4 years ago

Hi @CMKMS-LINZ I am just trying to reproduce this issue whereby everything is returned from 180-180 even when using "Limit search to map area" but am failing to do so. Perhaps I am misinterpreting the steps so I have attached a GIF. This shows

Is this as expected?

Peek 2020-09-08 11-49

CMKMS-LINZ commented 4 years ago

The difference will be that you're in EPSG:4167 (NZGD 2000). Using 2193 (NZTM), 3793 (Chathams TM), (Raoul Island TM) 3031 (Antarctic polar stereographic), 5482 (Ross Sea Region Polar stereographic), 3857 (Psuedo Mercator) as projections we would commonly use all have the issue described.

4326 (WGS 84) behaviour is like the 4167 above.

SPlanzer commented 4 years ago

That makes sense.

Looking at the source code. The '_doSearch' function is explicit in that it only handles NZGD2000 https://github.com/linz/gazetteer/blob/b253e610375abdc880450d4e0d3d08d45de6a677/src/NZGBplugin/LINZ/gazetteer/gui/NameSearchWidget.py#L147-L148

Looking at the source code the plugin is designed to be used with NZGD2000 for example: