Better landmark finding #27
 Submodule backend/deployment updated: 8927f278f3...bb27ca2c86
									
								
							| @@ -16,7 +16,7 @@ OSM_CACHE_DIR = Path(cache_dir_string) | |||||||
|  |  | ||||||
| import logging | import logging | ||||||
| # if we are in a debug session, set verbose and rich logging | # if we are in a debug session, set verbose and rich logging | ||||||
| if os.getenv('DEBUG', False): | if os.getenv('DEBUG', "false") == "true": | ||||||
|     from rich.logging import RichHandler |     from rich.logging import RichHandler | ||||||
|     logging.basicConfig( |     logging.basicConfig( | ||||||
|         level=logging.DEBUG, |         level=logging.DEBUG, | ||||||
|   | |||||||
| @@ -1,3 +1,6 @@ | |||||||
|  | # Tags were picked mostly arbitrarily, based on the OSM wiki and the OSM tags page. | ||||||
|  | # See https://taginfo.openstreetmap.org for more inspiration. | ||||||
|  |  | ||||||
| nature: | nature: | ||||||
|   leisure: park |   leisure: park | ||||||
|   geological: '' |   geological: '' | ||||||
| @@ -11,7 +14,24 @@ nature: | |||||||
|     - alpine_hut |     - alpine_hut | ||||||
|     - viewpoint |     - viewpoint | ||||||
|     - zoo |     - zoo | ||||||
|   waterway: waterfall |     - resort | ||||||
|  |     - picnic_site | ||||||
|  |   water: | ||||||
|  |     - pond | ||||||
|  |     - lake | ||||||
|  |     - river | ||||||
|  |     - basin | ||||||
|  |     - stream | ||||||
|  |     - lagoon | ||||||
|  |     - rapids | ||||||
|  |   waterway: | ||||||
|  |     - waterfall | ||||||
|  |     - river | ||||||
|  |     - canal | ||||||
|  |     - dam | ||||||
|  |     - dock | ||||||
|  |     - boatyard | ||||||
|  |  | ||||||
|  |  | ||||||
| shopping: | shopping: | ||||||
|   shop: |   shop: | ||||||
| @@ -23,10 +43,50 @@ sightseeing: | |||||||
|     - museum |     - museum | ||||||
|     - attraction |     - attraction | ||||||
|     - gallery |     - gallery | ||||||
|  |     - artwork | ||||||
|  |     - aquarium | ||||||
|  |  | ||||||
|   historic: '' |   historic: '' | ||||||
|   amenity: |   amenity: | ||||||
|     - planetarium |     - planetarium | ||||||
|     - place_of_worship |     - place_of_worship | ||||||
|     - fountain |     - fountain | ||||||
|  |     - townhall | ||||||
|   water: |   water: | ||||||
|     - reflecting_pool |     - reflecting_pool | ||||||
|  |   bridge: | ||||||
|  |     # needs to be in quotes because it gets interpreted as True otherwise | ||||||
|  |     - 'yes' | ||||||
|  |     - aqueduct | ||||||
|  |     - viaduct | ||||||
|  |     - boardwalk | ||||||
|  |     - cantilever | ||||||
|  |     - abandoned | ||||||
|  |   building: | ||||||
|  |     - church | ||||||
|  |     - chapel | ||||||
|  |     - mosque | ||||||
|  |     - synagogue | ||||||
|  |     - ruins | ||||||
|  |     - temple | ||||||
|  |     - government | ||||||
|  |     - cathedral | ||||||
|  |     - castle | ||||||
|  |     - museum | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | # to be used later on | ||||||
|  | restauration: | ||||||
|  |   shop: | ||||||
|  |     - coffee | ||||||
|  |     - bakery | ||||||
|  |     - restaurant | ||||||
|  |     - pastry | ||||||
|  |   amenity: | ||||||
|  |     - restaurant | ||||||
|  |     - cafe | ||||||
|  |     - ice_cream | ||||||
|  |     - food_court | ||||||
|  |     - biergarten | ||||||
|   | |||||||
| @@ -10,7 +10,8 @@ from structs.landmark import Landmark | |||||||
| from .take_most_important import take_most_important | from .take_most_important import take_most_important | ||||||
| import constants | import constants | ||||||
|  |  | ||||||
|  | # silence the overpass logger | ||||||
|  | logging.getLogger('OSMPythonTools').setLevel(level=logging.CRITICAL) | ||||||
|  |  | ||||||
|  |  | ||||||
| class LandmarkManager: | class LandmarkManager: | ||||||
| @@ -206,11 +207,15 @@ class LandmarkManager: | |||||||
|             query = overpassQueryBuilder( |             query = overpassQueryBuilder( | ||||||
|                 bbox = bbox, |                 bbox = bbox, | ||||||
|                 elementType = ['way', 'relation'], |                 elementType = ['way', 'relation'], | ||||||
|  |                 # selector can in principle be a list already, | ||||||
|  |                 # but it generates the intersection of the queries | ||||||
|  |                 # we want the union | ||||||
|                 selector = sel, |                 selector = sel, | ||||||
|                 # conditions = [], |                 conditions = ['count_tags()>5'], | ||||||
|                 includeCenter = True, |                 includeCenter = True, | ||||||
|                 out = 'body' |                 out = 'body' | ||||||
|                 ) |                 ) | ||||||
|  |             self.logger.debug(f"Query: {query}") | ||||||
|  |  | ||||||
|             try: |             try: | ||||||
|                 result = self.overpass.query(query) |                 result = self.overpass.query(query) | ||||||
| @@ -336,7 +341,7 @@ def dict_to_selector_list(d: dict) -> list: | |||||||
|     for key, value in d.items(): |     for key, value in d.items(): | ||||||
|         if type(value) == list: |         if type(value) == list: | ||||||
|             val = '|'.join(value) |             val = '|'.join(value) | ||||||
|             return_list.append(f'{key}~"{val}"') |             return_list.append(f'{key}~"^({val})$"') | ||||||
|         elif type(value) == str and len(value) == 0: |         elif type(value) == str and len(value) == 0: | ||||||
|             return_list.append(f'{key}') |             return_list.append(f'{key}') | ||||||
|         else: |         else: | ||||||
|   | |||||||
| @@ -42,7 +42,7 @@ jobs: | |||||||
|       - name: Load secrets from github |       - name: Load secrets from github | ||||||
|         run: | |         run: | | ||||||
|           echo "${{ secrets.ANDROID_SECRET_PROPERTIES_BASE64 }}" | base64 -d > secrets.properties |           echo "${{ secrets.ANDROID_SECRET_PROPERTIES_BASE64 }}" | base64 -d > secrets.properties | ||||||
|           echo "${{ secrets.ANDROID_GOOGLE_PLAY_JSON_BASE64 }}" | base64 -d > fastlane/google-key.json |           echo "${{ secrets.ANDROID_GOOGLE_PLAY_JSON_BASE64 }}" | base64 -d > google-key.json | ||||||
|           echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | base64 -d > release.keystore |           echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | base64 -d > release.keystore | ||||||
|         working-directory: android |         working-directory: android | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user