From 03a210e415646ca99f0b8911fca78c11cbf68ffe Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Sat, 23 Mar 2024 18:22:10 -0700 Subject: [PATCH] Get the last 50 nodes seen for the mesh map, zoom much closer by default, only show nodes from the last 48 hours on the mesh map --- Meshtastic/Extensions/CoreData/PositionEntityExtension.swift | 4 ++-- Meshtastic/Views/Nodes/MeshMap.swift | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Meshtastic/Extensions/CoreData/PositionEntityExtension.swift b/Meshtastic/Extensions/CoreData/PositionEntityExtension.swift index 1d1fd991..79d4f581 100644 --- a/Meshtastic/Extensions/CoreData/PositionEntityExtension.swift +++ b/Meshtastic/Extensions/CoreData/PositionEntityExtension.swift @@ -14,13 +14,13 @@ extension PositionEntity { static func allPositionsFetchRequest() -> NSFetchRequest { let request: NSFetchRequest = PositionEntity.fetchRequest() - request.fetchLimit = 75 + request.fetchLimit = 50 //request.fetchBatchSize = 1 //request.returnsObjectsAsFaults = true //request.includesSubentities = false request.returnsDistinctResults = true request.sortDescriptors = [NSSortDescriptor(key: "time", ascending: false)] - request.predicate = NSPredicate(format: "nodePosition != nil && latest == true", Calendar.current.date(byAdding: .day, value: -7, to: Date())! as NSDate) + request.predicate = NSPredicate(format: "nodePosition != nil && latest == true && time >= %@", Calendar.current.date(byAdding: .day, value: -2, to: Date())! as NSDate) return request } diff --git a/Meshtastic/Views/Nodes/MeshMap.swift b/Meshtastic/Views/Nodes/MeshMap.swift index 47d83edb..d17c24cd 100644 --- a/Meshtastic/Views/Nodes/MeshMap.swift +++ b/Meshtastic/Views/Nodes/MeshMap.swift @@ -29,11 +29,11 @@ struct MeshMap: View { @AppStorage("enableMapConvexHull") private var showConvexHull = false @AppStorage("enableMapTraffic") private var showTraffic: Bool = false @AppStorage("enableMapPointsOfInterest") private var showPointsOfInterest: Bool = false - @AppStorage("mapLayer") private var selectedMapLayer: MapLayer = .hybrid + @AppStorage("mapLayer") private var selectedMapLayer: MapLayer = .standard // Map Configuration @Namespace var mapScope @State var mapStyle: MapStyle = MapStyle.standard(elevation: .flat, emphasis: MapStyle.StandardEmphasis.muted ,pointsOfInterest: .all, showsTraffic: true) - @State var position = MapCameraPosition.automatic + @State var position = MapCameraPosition.camera(MapCamera(centerCoordinate: LocationHelper.currentLocation, distance: 2500000, heading: 0, pitch: 0)) @State var isEditingSettings = false @State var selectedPosition: PositionEntity? @State var showWaypoints = false @@ -42,7 +42,6 @@ struct MeshMap: View { @State var newWaypointCoord: CLLocationCoordinate2D? @State var isMeshMap = true - /// && time >= %@ @FetchRequest(fetchRequest: PositionEntity.allPositionsFetchRequest(), animation: .none) var positions: FetchedResults