mirror of
https://github.com/atsunatsu/Look4Sat.git
synced 2026-10-04 11:37:22 +00:00
Map layers revised
This commit is contained in:
1 parent
b47e94fee7
commit
e141cb141d
1 file changed
+21
-11
@@ -43,7 +43,12 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
private lateinit var mainActivity: MainActivity
|
private lateinit var mainActivity: MainActivity
|
||||||
private lateinit var viewModel: SharedViewModel
|
private lateinit var viewModel: SharedViewModel
|
||||||
private lateinit var binding: FragmentMapOsmBinding
|
private lateinit var binding: FragmentMapOsmBinding
|
||||||
private var satLayer: FolderOverlay = FolderOverlay()
|
|
||||||
|
private var gspOverlay = FolderOverlay()
|
||||||
|
private var satTrackOverlay = FolderOverlay()
|
||||||
|
private var satRangeOverlay = FolderOverlay()
|
||||||
|
private var satNameOverlay = FolderOverlay()
|
||||||
|
|
||||||
private val trackPaint = Paint().apply {
|
private val trackPaint = Paint().apply {
|
||||||
strokeWidth = 2f
|
strokeWidth = 2f
|
||||||
style = Paint.Style.FILL_AND_STROKE
|
style = Paint.Style.FILL_AND_STROKE
|
||||||
@@ -82,6 +87,12 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
setScrollableAreaLimitDouble(BoundingBox(85.0, 180.0, -85.0, -180.0))
|
setScrollableAreaLimitDouble(BoundingBox(85.0, 180.0, -85.0, -180.0))
|
||||||
|
|
||||||
addColorFilter()
|
addColorFilter()
|
||||||
|
|
||||||
|
// fill overlays
|
||||||
|
overlays.add(0, gspOverlay)
|
||||||
|
overlays.add(1, satTrackOverlay)
|
||||||
|
overlays.add(2, satRangeOverlay)
|
||||||
|
overlays.add(3, satNameOverlay)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,17 +126,17 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
setInfoWindow(null)
|
setInfoWindow(null)
|
||||||
setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM)
|
setAnchor(Marker.ANCHOR_CENTER, Marker.ANCHOR_BOTTOM)
|
||||||
}
|
}
|
||||||
binding.mapView.overlays.add(positionMarker)
|
binding.mapView.overlays[0] = positionMarker
|
||||||
|
binding.mapView.invalidate()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setupSatOverlay(passList: List<SatPass>) {
|
private fun setupSatOverlay(passList: List<SatPass>) {
|
||||||
lifecycleScope.launch {
|
lifecycleScope.launch {
|
||||||
while (true) {
|
while (true) {
|
||||||
val satMarkers = getSatMarkers(passList)
|
val satMarkers = getSatMarkers(passList)
|
||||||
binding.mapView.overlays.remove(satLayer)
|
satMarkers.forEach { satNameOverlay.add(it) }
|
||||||
satLayer = FolderOverlay()
|
binding.mapView.overlays[3] = satNameOverlay
|
||||||
satMarkers.forEach { satLayer.add(it) }
|
satNameOverlay = FolderOverlay()
|
||||||
binding.mapView.overlays.add(satLayer)
|
|
||||||
binding.mapView.invalidate()
|
binding.mapView.invalidate()
|
||||||
delay(3000)
|
delay(3000)
|
||||||
}
|
}
|
||||||
@@ -166,7 +177,6 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun showSatGroundTrack(positions: List<SatPos>) {
|
private fun showSatGroundTrack(positions: List<SatPos>) {
|
||||||
val tracksOverlay = FolderOverlay()
|
|
||||||
val trackPoints = mutableListOf<GeoPoint>()
|
val trackPoints = mutableListOf<GeoPoint>()
|
||||||
|
|
||||||
var oldLon = 0.0
|
var oldLon = 0.0
|
||||||
@@ -181,7 +191,7 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
val completeTrack = Polyline()
|
val completeTrack = Polyline()
|
||||||
completeTrack.outlinePaint.set(trackPaint)
|
completeTrack.outlinePaint.set(trackPaint)
|
||||||
completeTrack.setPoints(currentPoints)
|
completeTrack.setPoints(currentPoints)
|
||||||
tracksOverlay.add(completeTrack)
|
satTrackOverlay.add(completeTrack)
|
||||||
trackPoints.clear()
|
trackPoints.clear()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -192,9 +202,9 @@ class MapOsmFragment : Fragment(R.layout.fragment_map_osm) {
|
|||||||
val completeTrack = Polyline()
|
val completeTrack = Polyline()
|
||||||
completeTrack.outlinePaint.set(trackPaint)
|
completeTrack.outlinePaint.set(trackPaint)
|
||||||
completeTrack.setPoints(trackPoints)
|
completeTrack.setPoints(trackPoints)
|
||||||
tracksOverlay.add(completeTrack)
|
satTrackOverlay.add(completeTrack)
|
||||||
|
binding.mapView.overlays[1] = satTrackOverlay
|
||||||
binding.mapView.overlays.add(tracksOverlay)
|
satTrackOverlay = FolderOverlay()
|
||||||
binding.mapView.invalidate()
|
binding.mapView.invalidate()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user