Recording gestures – line, circle, and cross
What about drawing with one finger? Can we recognize gestures? It is possible to do this with Kivy. First, we need to record the gestures that we want to use. A gesture is represented as a long string that contains the points of a stroke over the screen. The following code uses the Kivy Gesture
and GestureDatabase
classes to record gesture strokes. It can be run with Python gesturerecorder.py
:
180. # File Name: gesturerecorder.py 181. from kivy.app import App 182. from kivy.uix.floatlayout import FloatLayout 183. from kivy.graphics import Line, Ellipse 184. from kivy.gesture import Gesture, GestureDatabase 185. 186. class GestureRecorder(FloatLayout): 187. 188. def on_touch_down(self, touch): 189. self.points = [touch.pos] 190. with self.canvas: 191. Ellipse(pos=(touch.x-5,touch.y-5),size=(10,10)) 192. self.Line = Line(points=(touch.x, touch.y)) 193. 194. def on_touch_move(self, touch): 195. ...