Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/snake/diff/35a8a48c0959/engine.py
Дата изменения: Unknown
Дата индексирования: Fri Feb 28 17:20:23 2014
Кодировка:
snake: engine.py diff

snake

diff engine.py @ 180:35a8a48c0959

merge
author Alex Martynov
date Sun, 26 Dec 2010 15:47:40 +0300
parents 163fc2378113
children 0cf4e42c75a1
line diff
     1.1 --- a/engine.py	Sun Dec 26 12:12:47 2010 +0300
     1.2 +++ b/engine.py	Sun Dec 26 15:47:40 2010 +0300
     1.3 @@ -224,6 +224,17 @@
     1.4      def redraw(self):
     1.5          """Clear the field Widget and redraw cells images on it"""
     1.6          self.canvas.delete("all")
     1.7 +        offset, c = self.field_geometry_calc()[1:]
     1.8 +        for cell_coord in self.field:
     1.9 +            self.field[cell_coord].redraw(offset, c)
    1.10 +        return
    1.11 +
    1.12 +    def field_geometry_calc (self):
    1.13 +        """Calculate grafical parameters of the field.
    1.14 +        Return:
    1.15 +        field_geometry - (width, hight) of the field
    1.16 +        offset - (x, y) of the left top corner of the field
    1.17 +        c - cell size"""
    1.18          w = self.canvas.winfo_width()
    1.19          h = self.canvas.winfo_height()
    1.20          cw = w/float(self.field.w)
    1.21 @@ -231,9 +242,7 @@
    1.22          c = min(cw, ch)
    1.23          field_geometry = (self.field.w*c,self.field.h*c)
    1.24          offset = ((w - field_geometry[0])/2.0, (h - field_geometry[1])/2.0)
    1.25 -        for cell_coord in self.field:
    1.26 -            self.field[cell_coord].redraw(offset, c)
    1.27 -        return
    1.28 +        return field_geometry, offset, c
    1.29      
    1.30      def legal_moves(self, snake):
    1.31          """Check for snake legal move directions according to the game rules."""