aboutsummaryrefslogtreecommitdiff
path: root/shared/src/commonMain
diff options
context:
space:
mode:
Diffstat (limited to 'shared/src/commonMain')
-rw-r--r--shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/models/MapLayer.kt26
-rw-r--r--shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/utils/MapCalculus.kt2
2 files changed, 27 insertions, 1 deletions
diff --git a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/models/MapLayer.kt b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/models/MapLayer.kt
index 64381d9..ff0489e 100644
--- a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/models/MapLayer.kt
+++ b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/client/models/MapLayer.kt
@@ -5,4 +5,28 @@ data class MapLayer(
val minZoom: Int,
val maxZoom: Int,
val attribution: String
-) \ No newline at end of file
+) {
+ enum class Type {
+ STREETS,
+ SATELLITE
+ }
+
+ companion object {
+ val layers = mapOf(
+ Type.STREETS to MapLayer(
+ url = "https://a.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png",
+ minZoom = 1,
+ maxZoom = 23,
+ attribution = "&#169; OpenStreetMap France | &#169; <a href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> contributors"
+ ),
+ Type.SATELLITE to MapLayer(
+ url = "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",
+ minZoom = 1,
+ maxZoom = 20,
+ attribution = "Tiles &#169; Esri &#8212; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community"
+ )
+ )
+
+ val defaultLayer = layers[Type.STREETS]!!
+ }
+} \ No newline at end of file
diff --git a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/utils/MapCalculus.kt b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/utils/MapCalculus.kt
index b1a6444..d4d69fa 100644
--- a/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/utils/MapCalculus.kt
+++ b/shared/src/commonMain/kotlin/mx/trackermap/TrackerMap/utils/MapCalculus.kt
@@ -32,6 +32,8 @@ class MapCalculus {
20 -> 533.182395965
21 -> 266.5911979825
22 -> 133.29559899125
+ 23 -> 66.647799495625
+ 24 -> 33.3238997478125
else -> null
}
}