Drawing touches

To illustrate one possible scenario for reacting to the touch input, let's draw a circle every time the user touches (or clicks) the screen.

A Widget has an on_touch_down event that will come in handy for this task. We're interested in just the coordinates of every touch for the time being, and they are accessible as follows:

class CanvasWidget(Widget):
    def on_touch_down(self, touch):
        print(touch.x, touch.y)

This example prints the position of touches as they occur. To draw something on the screen instead, we will use the Widget.canvas property. Kivy's Canvas is a logical drawable surface that abstracts away the underlying OpenGL renderer. Unlike the low-level graphical API, the canvas is stateful and preserves the drawing instructions ...

Get Kivy Blueprints now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.