-
Book Overview & Buying
-
Table Of Contents
Kivy Blueprints
By :
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 that were added to it.
Speaking of drawing primitives, many of those can be imported from the kivy.graphics package. Examples of drawing instructions are Color, Line, Rectangle, and Bezier, among others.