aboutsummaryrefslogtreecommitdiff
path: root/androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt
diff options
context:
space:
mode:
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt')
-rw-r--r--androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt19
1 files changed, 18 insertions, 1 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt
index 4dd1ea7..e99b8e6 100644
--- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt
+++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/shared/MarkerTransformations.kt
@@ -19,6 +19,7 @@ package mx.trackermap.TrackerMap.android.shared
import mx.trackermap.TrackerMap.android.R
import mx.trackermap.TrackerMap.client.models.Marker
+import kotlin.math.PI
object MarkerTransformations {
fun markerTypeToResourceId(markerType: Marker.Type): Int {
@@ -52,7 +53,7 @@ object MarkerTransformations {
}
}
- fun markerTypeToStringId(markerType: Marker.Type): Int {
+ private fun markerTypeToStringId(markerType: Marker.Type): Int {
return when (markerType) {
Marker.Type.ANIMAL -> R.string.unit_category_animal
Marker.Type.BACKHOE -> R.string.unit_category_backhoe
@@ -87,4 +88,20 @@ object MarkerTransformations {
fun categoryToStringId(category: String?): Int {
return markerTypeToStringId(Marker.categoryToMarkerType(category))
}
+
+ private const val STEP = PI / 8
+
+ @OptIn(ExperimentalStdlibApi::class)
+ fun angleToResourceId(rad: Double): Int = when (rad) {
+ in 0.0 ..< STEP -> R.drawable.angle_0
+ in STEP ..< STEP * 3 -> R.drawable.angle_45
+ in STEP * 3 ..< STEP * 5 -> R.drawable.angle_90
+ in STEP * 5 ..< STEP * 7 -> R.drawable.angle_135
+ in STEP * 7 ..< STEP * 9 -> R.drawable.angle_180
+ in STEP * 9 ..< STEP * 11 -> R.drawable.angle_225
+ in STEP * 11 ..< STEP * 13 -> R.drawable.angle_270
+ in STEP * 13 ..< STEP * 15 -> R.drawable.angle_315
+ in STEP * 15 ..< STEP * 16 -> R.drawable.angle_0
+ else -> angleToResourceId(PI * 2 + rad)
+ }
} \ No newline at end of file