|
25 | 25 | import folium |
26 | 26 | import ipyleaflet |
27 | 27 | import xyzservices |
28 | | -from .common import check_package, planet_tiles |
| 28 | +from .common import check_package, planet_tiles, GoogleMapsTileProvider |
29 | 29 |
|
30 | | -GOOGLE_MAPS_API_KEY = os.environ.get("GOOGLE_MAPS_API_KEY", "YOUR-API-KEY") |
| 30 | +GOOGLE_MAPS_API_KEY = os.environ.get("GOOGLE_MAPS_API_KEY", None) |
31 | 31 |
|
32 | 32 | XYZ_TILES = { |
33 | 33 | "OpenStreetMap": { |
|
38 | 38 | } |
39 | 39 |
|
40 | 40 | # Add Google basemaps if API key is detected in the environment variables. |
41 | | -if GOOGLE_MAPS_API_KEY != "": |
| 41 | +if GOOGLE_MAPS_API_KEY is not None: |
42 | 42 | XYZ_TILES.update( |
43 | 43 | { |
44 | | - "ROADMAP": { |
45 | | - "url": f"https://mt1.google.com/vt/lyrs=m&x={{x}}&y={{y}}&z={{z}}&key={GOOGLE_MAPS_API_KEY}", |
46 | | - "attribution": "Google", |
47 | | - "name": "Google Maps", |
48 | | - }, |
49 | | - "SATELLITE": { |
50 | | - "url": f"https://mt1.google.com/vt/lyrs=s&x={{x}}&y={{y}}&z={{z}}&key={GOOGLE_MAPS_API_KEY}", |
51 | | - "attribution": "Google", |
52 | | - "name": "Google Satellite", |
53 | | - }, |
54 | | - "TERRAIN": { |
55 | | - "url": f"https://mt1.google.com/vt/lyrs=p&x={{x}}&y={{y}}&z={{z}}&key={GOOGLE_MAPS_API_KEY}", |
56 | | - "attribution": "Google", |
57 | | - "name": "Google Terrain", |
58 | | - }, |
59 | | - "HYBRID": { |
60 | | - "url": f"https://mt1.google.com/vt/lyrs=y&x={{x}}&y={{y}}&z={{z}}&key={GOOGLE_MAPS_API_KEY}", |
61 | | - "attribution": "Google", |
62 | | - "name": "Google Hybrid", |
63 | | - }, |
| 44 | + "ROADMAP": GoogleMapsTileProvider(map_type="roadmap"), |
| 45 | + "SATELLITE": GoogleMapsTileProvider(map_type="satellite"), |
| 46 | + "TERRAIN": GoogleMapsTileProvider(map_type="terrain"), |
| 47 | + "HYBRID": GoogleMapsTileProvider(map_type="hybrid"), |
64 | 48 | } |
65 | 49 | ) |
66 | 50 | else: # If Google Maps API key is not detected, defaulting to Esri basemaps. |
|
0 commit comments