This commit is contained in:
richonguzman 2024-07-01 23:43:59 -04:00
parent c506560a48
commit ebc5fc580b
2 changed files with 37 additions and 0 deletions

View File

@ -104,4 +104,40 @@ namespace GPS_Utils {
} }
} }
String getCurrentHeadingHuman(float bearing) {
if (bearing >= 354.375 || bearing < 5.625) return ">.NW.....(N).....NE.<"; // N
if (bearing >= 5.675 && bearing < 16.875) return ">.......N.|.....NE..<";
if (bearing >= 16.875 && bearing < 28.125) return ">.....N...|...NE....<"; // NEN
if (bearing >= 28.125 && bearing < 39.375) return ">...N.....|.NE......<";
if (bearing >= 39.375 && bearing < 50.625) return ">.N......(NE).....E.<"; // NE
if (bearing >= 50.625 && bearing < 61.875) return ">.......NE|.....E...<";
if (bearing >= 61.875 && bearing < 73.125) return ">.....NE..|...E.....<"; // ENE
if (bearing >= 73.125 && bearing < 84.375) return ">...NE....|.E.......<";
if (bearing >= 84.375 && bearing < 95.625) return ">.NE.....(E).....SE.<"; // E
if (bearing >= 95.625 && bearing < 106.875) return ">.......E.|.....SE..<";
if (bearing >= 106.875 && bearing < 118.125) return ">.....E...|...SE....<"; // ESE
if (bearing >= 118.125 && bearing < 129.375) return ">...E.....|.SE......<";
if (bearing >= 129.375 && bearing < 140.625) return ">.E......(SE).....S.<"; // SE
if (bearing >= 140.625 && bearing < 151.875) return ">.......SE|.....S...<";
if (bearing >= 151.875 && bearing < 163.125) return ">.....SE..|...S.....<"; // SES
if (bearing >= 163.125 && bearing < 174.375) return ">...SE....|.S.......<";
if (bearing >= 174.375 && bearing < 185.625) return ">.SE.....(S).....SW.<"; // S
if (bearing >= 185.625 && bearing < 196.875) return ">.......S.|.....SW..<";
if (bearing >= 196.875 && bearing < 208.125) return ">.....S...|...SW....<"; // SWS
if (bearing >= 208.125 && bearing < 219.375) return ">...S.....|.SW......<";
if (bearing >= 219.375 && bearing < 230.625) return ">.S......(SW).....W.<"; // SW
if (bearing >= 230.625 && bearing < 241.875) return ">.......SW|.....W...<";
if (bearing >= 241.875 && bearing < 253.125) return ">.....SW..|...W.....<"; // WSW
if (bearing >= 253.125 && bearing < 264.375) return ">...SW....|.W.......<";
if (bearing >= 264.375 && bearing < 275.625) return ">.SW.....(W).....NW.<"; // W
if (bearing >= 275.625 && bearing < 286.875) return ">.......W.|.....NW..<";
if (bearing >= 286.875 && bearing < 298.125) return ">.....W...|...NW....<"; // WNW
if (bearing >= 298.125 && bearing < 309.375) return ">...W.....|.NW......<";
if (bearing >= 309.375 && bearing < 320.625) return ">.W......(NW).....N.<"; // NW
if (bearing >= 320.625 && bearing < 331.875) return ">.......NW|.....N...<";
if (bearing >= 331.875 && bearing < 343.125) return ">.....NW..|...N.....<"; // NWN
if (bearing >= 343.125 && bearing < 354.375) return ">...NW....|.N.......<";
return "?";
}
} }

View File

@ -12,6 +12,7 @@ namespace GPS_Utils {
void calculateDistanceTraveled(); void calculateDistanceTraveled();
void calculateHeadingDelta(int speed); void calculateHeadingDelta(int speed);
void checkStartUpFrames(); void checkStartUpFrames();
String getCurrentHeadingHuman(float bearing);
} }