diff options
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.kt | 19 |
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 |