cca
changeset 26:5b96b63759e0
offset in pix to offset in cells
author | is_rusinov |
---|---|
date | Sun, 05 Dec 2010 01:15:20 +0300 |
parents | c27ba2bc1f80 |
children | dcfffd8bb598 315a5fdf099e |
files | Interface.py |
diffstat | 1 files changed, 14 insertions(+), 14 deletions(-) [+] |
line diff
1.1 --- a/Interface.py Sun Dec 05 00:24:51 2010 +0300 1.2 +++ b/Interface.py Sun Dec 05 01:15:20 2010 +0300 1.3 @@ -86,44 +86,44 @@ 1.4 pass 1.5 1.6 def press1(self, event):# drawer 1.7 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.8 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.9 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.10 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.11 index = (automata.symbols[automata.field[row][column]] + 1) % len(automata.states) 1.12 automata.field[row][column] = automata.states[index].symbol 1.13 self.draw() 1.14 1.15 def motion1(self, event):# drawer 1.16 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.17 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.18 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.19 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.20 index = (automata.symbols[automata.field[row][column]] + 1) % len(automata.states) 1.21 automata.field[row][column] = automata.states[index].symbol 1.22 self.draw() 1.23 1.24 def press3(self, event):# drawer 1.25 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.26 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.27 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.28 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.29 index = (automata.symbols[automata.field[row][column]] + len(automata.states) - 1) % len(automata.states) 1.30 automata.field[row][column] = automata.states[index].symbol 1.31 self.draw() 1.32 1.33 def motion3(self, event):# drawer 1.34 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.35 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.36 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.37 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.38 index = (automata.symbols[automata.field[row][column]] + len(automata.states) - 1) % len(automata.states) 1.39 automata.field[row][column] = automata.states[index].symbol 1.40 self.draw() 1.41 1.42 def press1_key(self, event):# drawer 1.43 if keys.has_key(event.char): 1.44 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.45 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.46 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.47 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.48 automata.field[row][column] = automata.states[keys[event.char]].symbol 1.49 self.draw() 1.50 1.51 def motion1_key(self, event):# drawer 1.52 if keys.has_key(event.char): 1.53 - column = (event.x - self.offset_x) / (self.cell_size + self.line_width) 1.54 - row = (event.y - self.offset_y) / (self.cell_size + self.line_width) 1.55 + column = (event.x - self.offset_x * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.56 + row = (event.y - self.offset_y * (self.cell_size + self.line_width)) / (self.cell_size + self.line_width) 1.57 automata.field[row][column] = automata.states[keys[event.char]].symbol 1.58 self.draw() 1.59 1.60 @@ -132,8 +132,8 @@ 1.61 self.mouse_y = event.y 1.62 1.63 def motion1_ctrl(self, event):# change_scale (B1+ctrl) 1.64 - self.offset_x = event.x - self.mouse_x 1.65 - self.offset_y = event.y - self.mouse_y 1.66 + self.offset_x = (event.x - self.mouse_x) / (self.cell_size + self.line_width) 1.67 + self.offset_y = (event.y - self.mouse_y) / (self.cell_size + self.line_width) 1.68 self.mouse_x = event.x 1.69 self.mouse_y = event.y 1.70 self.draw()