For instance, the expression grid is grid will evaluate to True. With this code, each row is a reference to the same array. This will not work as expected in Python. After the entire "new state" grid is calculated, you can copy to "new state" grid to the "old state" grid.Īnother fatal flaw in your algorithm is grid = * 32] * 18. Loop through each position in the "new state" grid and calculate its number of live neighbors using the "previous state" grid. This is usually done by using two separate grids, an "previous state" grid and a "new state grid". I agree with commenter Rabbid76, in that you need to update the entire grid at once, not cell by cell. # print(round(1 / (end_time - start_time)), "fps") (wn, GRID_COLOUR, (x, 0), (x, HEIGHT))Ĭells.append(Cell(x_pos, y_pos, False, indexX, indexY)) If i.x = self.x - 30 and i.y = self.y and i.alive:Įlif i.x = self.x + 30 and i.y = self.y and i.alive:Įlif i.x = self.x and i.y = self.y - 30 and i.alive:Įlif i.x = self.x and i.y = self.y + 30 and i.alive:Įlif i.x = self.x - 30 and i.y = self.y - 30 and i.alive:Įlif i.x = self.x - 30 and i.y = self.y + 30 and i.alive:Įlif i.x = self.x + 30 and i.y = self.y - 30 and i.alive:Įlif i.x = self.x + 30 and i.y = self.y + 30 and i.alive: Grid_temp.insert(self.indexY, self.alive) Wn = _mode((WIDTH, HEIGHT), vsync=1)ĭef _init_(self, x, y, alive, index_x, index_y): Similarly, all other dead cells stay dead. All other live cells die in the next generation. Any dead cell with three live neighbours becomes a live cell.ģ. Any live cell with two or three live neighbours survives.Ģ. Anyone know what the problem is? I know the code is a bit messy, but I'm quite new to python so it is expected. The first and second generations work as intended, but on the third it dies out. So there must be something wrong with the code which detects wether it should be alive or not in Cell.update(), but the glider i hardcoded in is not working as intended.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |