diff --git a/Meshtastic/Extensions/Measurement.swift b/Meshtastic/Extensions/Measurement.swift index 4947c823..ca867c09 100644 --- a/Meshtastic/Extensions/Measurement.swift +++ b/Meshtastic/Extensions/Measurement.swift @@ -8,14 +8,6 @@ import Foundation import Charts -extension Measurement where UnitType == UnitAngle { - func reciprocal() -> Measurement { - var recip = self.converted(to: .degrees) - recip.value = (recip.value + 180).truncatingRemainder(dividingBy: 360) - return recip.converted(to: self.unit) - } -} - struct PlottableMeasurement { var measurement: Measurement } diff --git a/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift b/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift index 8874ba98..fb019e0b 100644 --- a/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift +++ b/Meshtastic/Views/Nodes/Helpers/Map/PositionPopover.swift @@ -143,7 +143,7 @@ struct PositionPopover: View { /// Heading let degrees = Angle.degrees(Double(position.heading)) Label { - let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees).reciprocal() + let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees) Text("Heading: \(heading.formatted(.measurement(width: .narrow, numberFormatStyle: .number.precision(.fractionLength(0)))))") } icon: { Image(systemName: "location.north") diff --git a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift index 8fe387db..788a95bf 100644 --- a/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift +++ b/Meshtastic/Views/Nodes/Helpers/NodeListItem.swift @@ -114,13 +114,13 @@ struct NodeListItem: View { .font(UIDevice.current.userInterfaceIdiom == .phone ? .callout : .caption) .foregroundColor(.gray) let trueBearing = getBearingBetweenTwoPoints(point1: myCoord, point2: nodeCoord) - let headingDegrees = Measurement(value: trueBearing, unit: UnitAngle.degrees).reciprocal() + let headingDegrees = Measurement(value: trueBearing, unit: UnitAngle.degrees) Image(systemName: "location.north") .font(.callout) .symbolRenderingMode(.multicolor) .clipShape(Circle()) .rotationEffect(Angle(degrees: headingDegrees.value)) - let heading = Measurement(value: trueBearing, unit: UnitAngle.degrees).reciprocal() + let heading = Measurement(value: trueBearing, unit: UnitAngle.degrees) Text("\(heading.formatted(.measurement(width: .narrow, numberFormatStyle: .number.precision(.fractionLength(0)))))") .font(UIDevice.current.userInterfaceIdiom == .phone ? .callout : .caption) .foregroundColor(.gray) diff --git a/Meshtastic/Views/Nodes/PositionLog.swift b/Meshtastic/Views/Nodes/PositionLog.swift index ee2709db..3abcb791 100644 --- a/Meshtastic/Views/Nodes/PositionLog.swift +++ b/Meshtastic/Views/Nodes/PositionLog.swift @@ -52,7 +52,7 @@ struct PositionLog: View { } TableColumn("Heading") { position in let degrees = Angle.degrees(Double(position.heading)) - let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees).reciprocal() + let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees) Text(heading.formatted(.measurement(width: .narrow, numberFormatStyle: .number.precision(.fractionLength(0))))) } TableColumn("SNR") { position in diff --git a/Meshtastic/Views/Settings/Config/Module/MQTTConfig.swift b/Meshtastic/Views/Settings/Config/Module/MQTTConfig.swift index f616f8bf..fd64c17d 100644 --- a/Meshtastic/Views/Settings/Config/Module/MQTTConfig.swift +++ b/Meshtastic/Views/Settings/Config/Module/MQTTConfig.swift @@ -64,7 +64,7 @@ struct MQTTConfig: View { } .toggleStyle(SwitchToggleStyle(tint: .accentColor)) - if enabled && proxyToClientEnabled && node!.mqttConfig!.proxyToClientEnabled == true { + if enabled && proxyToClientEnabled && node?.mqttConfig?.proxyToClientEnabled ?? false == true { Toggle(isOn: $mqttConnected) { Label(mqttConnected ? "mqtt.disconnect".localized : "mqtt.connect".localized, systemImage: "server.rack") if bleManager.mqttError.count > 0 { diff --git a/Meshtastic/Views/Settings/GPSStatus.swift b/Meshtastic/Views/Settings/GPSStatus.swift index 7e0a6588..c92a647c 100644 --- a/Meshtastic/Views/Settings/GPSStatus.swift +++ b/Meshtastic/Views/Settings/GPSStatus.swift @@ -22,7 +22,7 @@ struct GPSStatus: View { let altitiude = Measurement(value: newLocation.altitude, unit: UnitLength.meters) let speed = Measurement(value: newLocation.speed, unit: UnitSpeed.kilometersPerHour) let speedAccuracy = Measurement(value: newLocation.speedAccuracy, unit: UnitSpeed.metersPerSecond) - let courseAccuracy = Measurement(value: newLocation.courseAccuracy, unit: UnitAngle.degrees).reciprocal() + let courseAccuracy = Measurement(value: newLocation.courseAccuracy, unit: UnitAngle.degrees) Label("Coordinate \(String(format: "%.5f", newLocation.coordinate.latitude)), \(String(format: "%.5f", newLocation.coordinate.longitude))", systemImage: "mappin") .font(largeFont) @@ -45,7 +45,7 @@ struct GPSStatus: View { HStack { let degrees = Angle.degrees(newLocation.course) Label { - let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees).reciprocal() + let heading = Measurement(value: degrees.degrees, unit: UnitAngle.degrees) Text("Heading: \(heading.formatted(.measurement(width: .narrow, numberFormatStyle: .number.precision(.fractionLength(0)))))") } icon: { Image(systemName: "location.north")