add compass rose
This commit is contained in:
parent
7543e775e5
commit
a47026f5d3
@ -339,6 +339,7 @@ label.readout {
|
|||||||
(string.format "%.1f km/h" (* app-state.speed 3.6)))
|
(string.format "%.1f km/h" (* app-state.speed 3.6)))
|
||||||
:osm (: (widget:get_window) :invalidate_rect nil)
|
:osm (: (widget:get_window) :invalidate_rect nil)
|
||||||
:arrow (: (widget:get_window) :invalidate_rect nil)
|
:arrow (: (widget:get_window) :invalidate_rect nil)
|
||||||
|
:rose (: (widget:get_window) :invalidate_rect nil)
|
||||||
:time (widget:set_label
|
:time (widget:set_label
|
||||||
(hhmmss (+ utc-offset app-state.time-of-day)))
|
(hhmmss (+ utc-offset app-state.time-of-day)))
|
||||||
))))
|
))))
|
||||||
@ -378,6 +379,48 @@ label.readout {
|
|||||||
true)
|
true)
|
||||||
}))))
|
}))))
|
||||||
|
|
||||||
|
(fn deg->rad [degrees]
|
||||||
|
(* math.pi (/ degrees 180)))
|
||||||
|
|
||||||
|
(fn rose []
|
||||||
|
(let [height 60]
|
||||||
|
(register-widget
|
||||||
|
:rose
|
||||||
|
(Gtk.Label {
|
||||||
|
:halign Gtk.Align.START
|
||||||
|
:valign Gtk.Align.START
|
||||||
|
:width height :height height
|
||||||
|
:on_draw
|
||||||
|
(fn [self g]
|
||||||
|
(g:save)
|
||||||
|
(g:set_line_width 1)
|
||||||
|
(g:set_source_rgb 0.4 0.0 0.1)
|
||||||
|
(g:arc (// height 2) (// height 2) 15
|
||||||
|
0 (* 2 math.pi))
|
||||||
|
(g:stroke)
|
||||||
|
|
||||||
|
(g:translate (// height 2) (// height 2))
|
||||||
|
(g:rotate (- (deg->rad app-state.orientation.actual)))
|
||||||
|
(g:translate (// height -2) (// height -2))
|
||||||
|
|
||||||
|
(g:set_line_width 2)
|
||||||
|
(g:move_to (// height 2) height)
|
||||||
|
(g:line_to (// height 2) 0)
|
||||||
|
|
||||||
|
(g:move_to 10 20)
|
||||||
|
(g:line_to (// height 2) 0)
|
||||||
|
(g:line_to (- height 10) 20)
|
||||||
|
(g:stroke)
|
||||||
|
|
||||||
|
(g:set_source_rgb 1 1 0)
|
||||||
|
(g:move_to (// height -2) (// height -2))
|
||||||
|
(g:text_path "N")
|
||||||
|
(g:fill)
|
||||||
|
|
||||||
|
(g:restore)
|
||||||
|
true)
|
||||||
|
}))))
|
||||||
|
|
||||||
|
|
||||||
(local socket-path (or (. arg 1) "/var/run/gnss-share.sock"))
|
(local socket-path (or (. arg 1) "/var/run/gnss-share.sock"))
|
||||||
|
|
||||||
@ -434,6 +477,7 @@ label.readout {
|
|||||||
(: :add (osm-widget))
|
(: :add (osm-widget))
|
||||||
(: :add_overlay (readouts))
|
(: :add_overlay (readouts))
|
||||||
(: :add_overlay (arrow))
|
(: :add_overlay (arrow))
|
||||||
|
(: :add_overlay (rose))
|
||||||
))
|
))
|
||||||
|
|
||||||
(window:show_all)
|
(window:show_all)
|
||||||
|
Loading…
Reference in New Issue
Block a user