def METHOD_NAME(self, e):
    w = float(self.w)
    h = float(self.h)
    if w/h > (WIDTH / (WIDTH+BARH)):
        w = (WIDTH / (WIDTH+BARH)) * h
    else:
        h = ((WIDTH+BARH) / (WIDTH)) * w
    bar = BARH / WIDTH * w
    tdx = -5.0 / WIDTH * w
    tdy = -7.0 / WIDTH * w
    th = 15.0 / WIDTH * w
    dc = wx.PaintDC(self)
    brush = wx.Brush("white")
    dc.SetBackground(brush)
    dc.Clear()
    self.mid = w/2
    diameter = w/2
    # Background
    dc.SetBrush(wx.Brush(wx.Colour(0, 0, 0), wx.TRANSPARENT))
    # Speed circles
    for v in range(0,40,5):
        dc.DrawCircle(self.mid, self.mid, diameter * v / MAX_AIRSPEED )
    font = wx.Font(11, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD)
    dc.SetFont(font)
    dc.DrawText("N", self.mid + tdx, 2)
    dc.DrawText("S", self.mid + tdx, w - 17)
    dc.DrawText("E", w - 15, w / 2 + tdy)
    dc.DrawText("W", 2, w / 2 + tdy)
    # Ground Speed
    dc.SetBrush(wx.Brush(wx.Colour(0, 0, 255), wx.SOLID))
    for i in range(0,MSG_BUFFER_SIZE):
        gx = self.ground_gs_x[i]
        gy = self.ground_gs_y[i]
        dc.DrawCircle(int(gx * diameter / MAX_AIRSPEED + self.mid + self.click_x), int(gy * diameter / MAX_AIRSPEED + self.mid + self.click_y), 2)
    # Airspeed in function of heading
    dc.SetBrush(wx.Brush(wx.Colour(255, 0, 0), wx.SOLID))
    for i in range(0,MSG_BUFFER_SIZE):
        gx = self.airspeed[i] * math.cos(self.heading[i])
        gy = self.airspeed[i] * math.sin(self.heading[i])
        dc.DrawCircle(int(gx * diameter / MAX_AIRSPEED + self.mid), int(gy * diameter / MAX_AIRSPEED + self.mid), 2)
    # Result
    font = wx.Font(8, wx.ROMAN, wx.NORMAL, wx.NORMAL)
    dc.SetFont(font)
    dc.DrawText("#" + str(self.count_gs) + ", " + str(self.count_as) + " | " + str(self.click_x) + "-" + str(self.click_y), 0, h - 14)
    windspeed = math.sqrt(self.click_x * +self.click_x + +self.click_y * +self.click_y) / diameter * MAX_AIRSPEED
    windheading = math.atan2(self.click_x,-self.click_y) * 180 / math.pi
    fontsize = int(16.0 / WIDTH * w)
    font = wx.Font(fontsize, wx.ROMAN, wx.NORMAL, wx.NORMAL)
    dc.SetFont(font)
    dc.DrawText("Wind = " + str(round(windspeed,1)) + " m/s from " + str(round(windheading, 0)), 0, w )