f275190538
fetch correct tile from overpass not diagonally adjacent one
2025-06-06 21:39:31 +01:00
0b22a7e538
pass lat/lon/zoom to draw-onto-map-surface
...
this removes dependency on global state
and will make it simpler to generate map for arbitrary co-ordinates
2025-06-06 21:33:19 +01:00
beca254bf6
rename cairo-the-map -> draw-onto-map-surface
...
and make it take a surface directly, not a window
2025-06-06 21:31:31 +01:00
4c2bed5ef0
rewrite map-bounds to fetch fewer off-screen tiles
2025-06-06 21:14:19 +01:00
fef52f812a
add on-completion callback to tile fetcher, invalidate map-surface
2025-06-05 23:11:37 +01:00
cdd7ea3a94
add fennel-ls to shell derivation
...
I'm unsure whether it's actually useful or not, haven't tried it yet
2025-06-05 23:03:08 +01:00
63e592d33d
first go at varying the line width based on highway classification
2025-06-05 23:02:44 +01:00
e5e1060c3f
add colour/translucency to road name background
...
this is an experiment in making them look less like road when the
placement causes them to run off the end of the actual way
2025-06-04 00:16:58 +01:00
c53120ab2a
print fewer upside down road labels
2025-06-04 00:14:43 +01:00
e728052bb6
print each road name once only
2025-06-03 22:18:05 +01:00
7195dbb2d5
make road names bigger and print white behind them
2025-06-03 22:18:05 +01:00
84a80d7c79
upgrade lgi
2025-06-03 22:18:05 +01:00
7934d5ba13
off-white background colour
2025-06-03 22:18:05 +01:00
ccb47e3a3d
improve text placement
2025-06-03 22:18:05 +01:00
37767e007a
render road names (badly)
2025-06-03 22:18:05 +01:00
76228bc045
parse way name as well as points
2025-06-03 22:18:05 +01:00
39f687d6f5
pass zoom level to canvas
2025-06-03 22:18:05 +01:00
f8a4788ed6
draw roads fatter and with edging
2025-06-03 22:18:05 +01:00
7c18f4442b
async tile fetcher
...
we use cqueues, which is the async framework that lua-http is built
on. we integrate it into the glib event loop rather hackily by calling
the cqueues event stepper ever 20ms from a glib timeout function
overpass has very low rate limits so we handle a 429 response by
sleeping for a random length of time and retrying. This is, also,
a bit of a hack
2025-06-03 22:18:05 +01:00
dfbf6ac919
clobber map-surface when bounds change
2025-06-03 22:18:05 +01:00
1c065d77e4
draw map once only and copy it to screen in on_draw
...
This massively reduces cpu usage, however it doesn't yet work
if we've moved far enough that we'd need to fetch new tiles.
2025-06-03 22:18:05 +01:00
455c3f50c6
use register-widget more, fewer arrow widget repaints
2025-06-03 22:18:05 +01:00
0d60cc11cc
invalidate map only when app-state changes
2025-06-03 22:18:05 +01:00
8357aab222
invalidate the map display each time we repaint it
...
really we should only need to do this when the app-state changes
2025-06-03 22:18:05 +01:00
d5e82d3427
replace in-memory cache with a persistent json cache
...
we just store the raw response from overpass
2025-06-03 22:18:05 +01:00
ab4e4857f3
fetch enough tiles to cover the display
2025-06-03 22:18:01 +01:00
398693bc07
hook the ui up to the overpass data
2025-05-28 18:50:12 +01:00
dc95c2252e
convert lat/lon to tile x/y and back
2025-05-27 23:48:32 +01:00
1deaea2948
whitespace
2025-05-27 17:33:58 +01:00
239f897396
Merge remote-tracking branch 'origin/tninkpad'
2025-05-27 17:32:12 +01:00
ab8ca0d032
update with TODO list
2025-05-27 17:31:35 +01:00
184ba482f9
and decode
2025-05-27 13:34:09 +01:00
26ebbe21b5
hack in rxi-json
2025-05-27 13:31:54 +01:00
a2906f5150
http request to overpass
2025-05-27 13:12:12 +01:00
71fa63eaa7
stolen from liminix
2025-05-27 13:11:48 +01:00
21471654cb
add aroow to show direction of travel
2025-05-18 23:18:15 +00:00
e49173cfdd
hook nmea messages up to widgets
2025-05-18 18:23:27 +00:00
36b1284996
nmea: parse degrees and minutes in lat/long
2025-05-18 18:01:56 +00:00
015caf45c6
write an nmea trace to a unix socket for indoor maps testing
...
while : ; do fennel fake-nmea.fnl foo.nmea ./fake-nmea.sock ; done
2025-05-18 18:00:49 +00:00
97440603f3
maps: accept socket path as command line arg
2025-05-18 18:00:06 +00:00
bf7eac5fac
parse nmea from socket
2025-05-17 23:23:32 +00:00
59c7b53022
nmea: add GGA, RMC
2025-05-17 23:22:37 +00:00
a687c946d2
nmea: convert empty fields to nil
2025-05-17 23:20:55 +00:00
4835b24e03
maps: read from gnss unix socket
2025-05-16 21:19:09 +00:00
ae9c4b0b3c
fix perms on gnss socket
2025-05-15 18:59:17 +01:00
c6cac8bc4b
disable opengl to avoid Satellite app crashes with kernel oops
2025-05-15 18:42:11 +01:00
4deecaa600
disable adbd until we find out why it's broken in nuxos-unstable
2025-05-15 18:38:04 +01:00
58fd046f6c
connect qmi-nmea to /var/run/gnss-share.sock
...
:-) this works with satellite
:-( it doesn't start on boot
it needs to be run after the /dev/wwan0qmi0 is created
2025-05-14 23:00:45 +01:00
3aa64e8fac
add beginnings of an nmea parser
2025-05-14 18:30:14 +01:00
71012d5038
delete unused function and debugging prints
2025-05-12 00:51:04 +01:00