Для очень простых жестов (горизонтальное или вертикальное пролистывание) вычислите разницу в x и y между двумя касаниями.
dy = abs(y2 - y1)
dx = abs(x2 - x1)
f = dy/dx
F, близкий к нулю, является горизонтальным ударом. F, близкий к 1, является диагональным ударом. И очень большое f - вертикальное движение (имейте в виду, что dx может быть нулем, поэтому приведенное выше не даст действительных результатов для всех x и y).
Если вас интересует скорость, Пифагор может помочь. Длина пройденного расстояния между двумя касаниями:
l = sqrt(dx*dx + dy*dy)
Если касания происходили в моменты времени t1 и t2, скорость равна:
tdiff = abs(t2 - t1)
s = l/tdiff
Вам решать, какое значение s вы интерпретируете как быстрое или медленное.
Вы можете расширить этот подход для более сложных фигур, например Ваша квадратная форма может быть горизонтальной / вертикальной / горизонтальной / вертикальной прокруткой с начальной / конечной точками, где предыдущая прокрутка остановилась.
Для более сложных фигур, вероятно, лучше работать с идеализированной формой. Можно считать идеальной форму многоугольника и проверить, есть ли диапазон касаний
- не слишком большое расстояние до их ближайшей точки на контуре Pologyon, и
- все касания следуют в одном направлении вдоль контура многоугольника.
Оттуда можно уточнить вещи.