CliDyn / climsight

prototype of a system that provide local climate information
BSD 3-Clause "New" or "Revised" License
27 stars 9 forks source link

water body data and osm additional details #32

Closed AntoniaJost closed 5 months ago

AntoniaJost commented 7 months ago

I added additional data sets from natural earth data that check if the location that has been clicked is either in the ocean or in a lake or near a river. If so, the user will get a warning that they should rather select a land area. However, the programme does not abort, only the results may not be as good as normally. Additionally, I extracted more information that are anyway stored in the OpenStreetMap Layer, in particular "extratags" and "namedetails" that provide us more local information.

closes #26 and part of #16

AntoniaJost commented 7 months ago

In the download_data.sh we need to talk about how we want to handle the AWI-CM-1 data download. Currently, the natural earth data (rivers and coastlines) gets downloaded too and I delete it afterwards. This is, clearly, not very efficient. But I don't have access to DKRZ, so you might have to adapt the .tar that gets downloaded and then remove the rm -r ./data/natural_earth (line 4).

AntoniaJost commented 7 months ago

I somehow forgot to pass the water status info. Included that now. Also adjusted the system_role a bit to better handle the water bodies. However, for the first time, I noticed a big difference between using v3.5 and v4. While 3.5 will tell you, for example, several times that you can't build an office in a lake, 4 will understand this much better and even include some information about it. Both are taught to use the surrounding instead, but 4 is able to process this information much more user friendly.

koldunovn commented 5 months ago

I am merging. The code is working, but it is becoming slow, and looks like it slows in the part where get requests are run. We have to look at it later, lets put the code in the state we can work with better (testing, modularisation). Also relying on external API become more and more problematic.