Much better!
This commit is contained in:
parent
d2f973bb3b
commit
ec0baaef3e
1 changed files with 5 additions and 13 deletions
|
@ -60,26 +60,18 @@ class Dial(Gauge):
|
||||||
def draw_needle(self, cr: cairo.Context, min_radius: float, max_radius: float, value: float):
|
def draw_needle(self, cr: cairo.Context, min_radius: float, max_radius: float, value: float):
|
||||||
angle = self.min_angle + \
|
angle = self.min_angle + \
|
||||||
((self.max_angle - self.min_angle) * (value / self.max_value)) \
|
((self.max_angle - self.min_angle) * (value / self.max_value)) \
|
||||||
- self.ANGLE_OFFSET - 2.2 * (math.pi / 180.0)
|
- self.ANGLE_OFFSET
|
||||||
|
|
||||||
angle_start = angle - 3 * (math.pi / 180.0)
|
|
||||||
angle_end = angle + 3 * (math.pi / 180.0)
|
|
||||||
|
|
||||||
cr.set_source_rgba(1, 0.4, 1, 0.75)
|
cr.set_source_rgba(1, 0.4, 1, 0.75)
|
||||||
|
cr.set_line_width(8)
|
||||||
|
|
||||||
cr.move_to(self.x + (min_radius * self.radius) * math.cos(angle_start),
|
cr.move_to(self.x + (min_radius * self.radius) * math.cos(angle),
|
||||||
self.y + (min_radius * self.radius) * math.sin(angle_start))
|
self.y + (min_radius * self.radius) * math.sin(angle))
|
||||||
|
|
||||||
cr.line_to(self.x + (max_radius * self.radius) * math.cos(angle),
|
cr.line_to(self.x + (max_radius * self.radius) * math.cos(angle),
|
||||||
self.y + (max_radius * self.radius) * math.sin(angle))
|
self.y + (max_radius * self.radius) * math.sin(angle))
|
||||||
|
|
||||||
cr.line_to(self.x + (max_radius * self.radius) * math.cos(angle_end),
|
cr.stroke()
|
||||||
self.y + (max_radius * self.radius) * math.sin(angle_end))
|
|
||||||
|
|
||||||
cr.line_to(self.x + (min_radius * self.radius) * math.cos(angle_end),
|
|
||||||
self.y + (min_radius * self.radius) * math.sin(angle_end))
|
|
||||||
|
|
||||||
cr.fill()
|
|
||||||
|
|
||||||
def draw_bg(self, cr: cairo.Context):
|
def draw_bg(self, cr: cairo.Context):
|
||||||
arc = (self.x,
|
arc = (self.x,
|
||||||
|
|
Loading…
Add table
Reference in a new issue