def draw_system(self): self.canvas.clear() with self.canvas: kg.Color(*self.background_color) kg.Rectangle(pos=(0, 0), size=self.size) # context to draw in for bubble in self.system.bubbles: kg.Color(0, 0, 0, 1) kg.Ellipse(pos=(bubble.x, bubble.y), size=(bubble.drawsize, bubble.drawsize)) kg.Color(*self.bubble_color, mode='rgba') kg.Ellipse(pos=(bubble.x + 1, bubble.y + 1), size=(bubble.drawsize - 2, bubble.drawsize - 2))
def init_canvas(self): print("Init canvas") self.canvas.clear() with self.canvas: for i in range(len(self.board)): for j in range(len(self.board[i])): if (self.board[i][j] == 0): G.Color(0, 0, 0) else: G.Color(1, 1, 1) G.Color(1, 0, 0) newCell = Cell() newCell.size = (self.size[0] / len(self.board), self.size[1] / len(self.board[j])) newCell.pos = ((i * newCell.size[0]), (j * newCell.size[1])) self.add_widget(newCell) print( "Rectangle size: ({}, {}), position: ({}, {})".format( self.size[0] / len(self.board), self.size[1] / len(self.board[j]), i, j))
def on_touch_move(self, touch): if self._touched: self._d = touch.pos self._hover_size, self._hover_pos = self._get_hover() if self.root_layout: self._clear_canvas() with self.root_layout.canvas: kg.Color(*self.hover_color, **self._unique_group) kg.Rectangle( size=self._hover_size, \ pos=self._hover_pos, \ **self._unique_group ) return True
def draw(self, *args): self.canvas.clear with self.canvas: G.Color(random(), random(), random()) G.Rectangle(pos=self.pos, size=self.size)
def on_size(self, *args): self.canvas.clear() if self._state: with self.canvas: graphics.Color(0, 1, 1) graphics.Rectangle(pos=self.pos, size=self.size)