-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEQPlay.py
More file actions
67 lines (56 loc) · 1.87 KB
/
Copy pathEQPlay.py
File metadata and controls
67 lines (56 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
from DisplayManager import displayManager
from EQMap import BLACK
from EventDB import eventDB
from time import sleep
EQEventQueue = []
# Initial display
displayManager.displayMap()
displayManager.drawRightJustifiedText(500, "database player")
sleep(2)
def displayDatabase(day):
# Repaint the map from the events in the DB
displayManager.displayMap()
# Load DB event queue for the given day
EQEventQueue, filecount = eventDB.load(day)
eventcount = len(EQEventQueue)
# Print event queue to map
for event in EQEventQueue:
cqLon = event[0]
cqLat = event[1]
cqMag = event[2]
cqTsunami = event[3]
cqAlert = event[4]
color = displayManager.colorFromMag(cqMag)
displayManager.mapEarthquake(cqLon, cqLat, cqMag, color)
return eventcount
def main():
lastevents = 0
updateMap = True
EQEventQueue, filecount = eventDB.load() # grab filecount
try:
for day in range(filecount):
events = displayDatabase(day)
# Determine trend direction
if events > lastevents:
trend = "up"
elif events < lastevents:
trend = "down"
else:
trend = ""
lastevents = events
# Display trending info
displayManager.drawRightJustifiedText(100, f"db: {day} Events: {events} Trending {trend}")
# Show the trend graph using getDayTrend
dayTrend = eventDB.getDayTrend()
displayManager.displayTrendingGraph(dayTrend)
displayManager.handleKeyPress()
sleep(5)
except KeyboardInterrupt:
print("Exiting EQMap")
displayManager.clearDisplay()
displayManager.drawRightJustifiedText(100, "Exiting EQMap")
sleep(2)
displayManager.clearDisplay()
exit()
if __name__ == '__main__':
main()