Split out draw_isobar()
This commit is contained in:
parent
eda84fa990
commit
aa12ac2381
1 changed files with 12 additions and 6 deletions
|
@ -49,21 +49,27 @@ class SkewTGraph():
|
|||
|
||||
return factor * self.height
|
||||
|
||||
def draw_isobar(self, cr: cairo.Context,
|
||||
x: float,
|
||||
y: float,
|
||||
pressure: float):
|
||||
sx, sy = self.graph_to_screen(-self.width / 2,
|
||||
self.pressure_to_y(pressure))
|
||||
|
||||
cr.move_to(x + sx, y + sy)
|
||||
cr.rel_line_to(self.width, 0)
|
||||
cr.stroke()
|
||||
|
||||
def draw_isobars(self, cr: cairo.Context, x: float, y: float):
|
||||
cr.save()
|
||||
|
||||
cr.set_source_rgb(0.75, 0.75, 0.75)
|
||||
|
||||
for pressure in range(PRESSURE_MIN, PRESSURE_MAX+1, PRESSURE_STEP):
|
||||
coords = self.graph_to_screen(-self.width / 2,
|
||||
self.pressure_to_y(pressure))
|
||||
|
||||
if pressure % (2*PRESSURE_STEP) != 0:
|
||||
continue
|
||||
|
||||
cr.move_to(x + coords[0], y + coords[1])
|
||||
cr.rel_line_to(self.width, 0)
|
||||
cr.stroke()
|
||||
self.draw_isobar(cr, x, y, pressure)
|
||||
|
||||
cr.restore()
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue