Refactoring Route, Speed

This commit is contained in:
Dimitris
2025-12-24 09:55:53 +01:00
parent d0a07e1315
commit 1b8abbd4eb
11 changed files with 55 additions and 67 deletions

View File

@@ -137,7 +137,7 @@ class RouteCarModel() : RouteModel() {
val dismissAction: Action = createToastAction(
carContext,
R.string.speed_camera, R.string.exit_action_title,
R.string.exit_action_title, R.string.exit_action_title,
FLAG_DEFAULT
)

View File

@@ -34,7 +34,9 @@ import com.kouros.navigation.data.Place
import com.kouros.navigation.data.nominatim.SearchResult
import com.kouros.navigation.data.overpass.Elements
import com.kouros.navigation.model.ViewModel
import com.kouros.navigation.utils.bearing
import com.kouros.navigation.utils.location
import kotlin.math.absoluteValue
class NavigationScreen(
carContext: CarContext,
@@ -488,10 +490,15 @@ class NavigationScreen(
it.distance = distance.toDouble()
updatedCameras.add(it)
}
val sortedList = updatedCameras.sortedWith(compareBy { it.distance })
val sortedList = updatedCameras.sortedWith(compareBy { it.distance })
val camera = sortedList.first()
if (camera.distance < 80) {
routeModel.showSpeedCamera(carContext, camera.distance, camera.tags.maxspeed)
val bearingSpeedCamera = location.bearingTo(location(camera.lon!!, camera.lat!!))
val bearingRoute = surfaceRenderer.lastLocation.bearingTo(location)
if (camera.distance < 80
&& (bearingSpeedCamera.absoluteValue - bearingRoute.absoluteValue).absoluteValue < 15.0
) {
routeModel.showSpeedCamera(carContext, camera.distance, camera.tags.maxspeed)
}
}
}