
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.graphics import Line
class DrawInput(Widget):
def on_touch_down(self, touch):
print(touch)
with self.canvas:
touch.ud["line"] = Line(points=(touch.x, touch.y))
def on_touch_move(self, touch):
print(touch)
touch.ud["line"].points += (touch.x, touch.y)
def on_touch_up(self, touch):
print("RELEASED!",touch)
class SimpleKivy4(App):
def build(self):
return DrawInput()
if __name__ == "__main__":
SimpleKivy4().run()
Here, we're first importing a new aspect from Kivy, Line. This is so we can draw a line.
Now, we modify our on_touch_down to, using the canvas, which is part of our inherited Widget, we're going to start defining our line as a Line element, where the points are just one point for now, which is the x,y coordinates of our touch_down.
Next, we modify our on_touch_move method to modify our touch.ud["line"] by appending the new touch.x and touch.y coordinates, so now we have more coordinates, drawing a line using them.
Finally, we modify the SimpleKivy4 root app to return our new DrawInput class, which will now give us an app that allows us to draw!
