powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / анализ движения мыши
10 сообщений из 10, страница 1 из 1
анализ движения мыши
    #36711373
infund
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую.

Вот какая задачка... Пользователь может в пределах одной формы сделать разные манипуляции мышой - может делать вертикальный драг-дроп, горизонтальный или круговые. То есть, на входе имеем координаты перемещений. Каким образом программно отличить круговое движение от вертикального, скажем?

Спасибо.
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711382
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты не задал ограничений. Вертикальный драг-дроп можно считать круговым движением с бесконечно большим радиусом. Сечёшь? Нужны ограничения, иначе твоя постановка безсмысленна или имеет много противоречивых реализаций.
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711387
infund
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton,

перемещения в пределах формы небольшого размера, скажем, 400x400 px
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711390
infund
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот чего хочется. Скажем, двинул что-то там пользователь, получили массив OnMouseMove. И проанализировать - этот набор векторов на что больше всего похож - на горизонтальное/вертикальное/вращение по/против стрелки
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711547
fleandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если есть массив координат то самое тупое что можно придумать - взять и посчитать какую нить меру отклонения от идеальной траектории - например СКО
с кругом сложность заключается в том что неясен радиус
Если только такие типы движений
можно вообще упростить и детектить все по трем точкам на основании полукруг - "мышка вверх вправо - мышка вниз вправо" не отпуская ЛКМ и движение верх-вправо - вниз должно быть ощутимым, чтобы исключить случайные дерганья мыши.
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711626
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
infundmayton,

перемещения в пределах формы небольшого размера, скажем, 400x400 px
Можно попробовать анализ Фурье для дифференциалов движения.
...
Рейтинг: 0 / 0
анализ движения мыши
    #36711754
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonМожно попробовать анализ Фурье для дифференциалов движения.
+1. Я бы с этого начал бы.
...
Рейтинг: 0 / 0
анализ движения мыши
    #36713744
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergemaytonМожно попробовать анализ Фурье для дифференциалов движения.
+1. Я бы с этого начал бы.

Еще можно в программу добавить процесс обучения - когда рисуешь, а потом связываешь, что будет за действие.
Тогда можно делать по коэффициенту корреляции с выученной фигурой - и маленький кружок отличить от большого даже.

Если не хотите пользователю давать возможность учить вашу программу - можно сделать отдельную - для создания коллекции фигур, которые потом поставлять как дефолтные.

Была такая программа - по заданному движению мышки могла выполнить сворачивание всех окон в винде, например... я пользовался. Название забыл...
...
Рейтинг: 0 / 0
анализ движения мыши
    #36713982
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мужики, а кто такие "дифференциалы движения"?
...
Рейтинг: 0 / 0
анализ движения мыши
    #36714008
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikhail_nМужики, а кто такие "дифференциалы движения"?

Я попробую обьяснить "по-печному" - так как я тоже не математик ни разу.

что у нас есть из двух точек движения мыши -
где было и где стало. если отбросить расстояние, и закодировать
влево -1
вправо 1
вверх -2
вниз 2

То для круга у нас получится некая последовательность групп чисел - типа

-1 -2 раз
-1 2 два
1 2 три
1 -2 четыре и выдохнули - вернулись на начальную точку.

Эти же данные можно собрать из любого движения - и не важно будет, большой круг или маленький - угол наклона движения влево вверх (итп) - тоже можно отбросить, как и расстояние.

И если порядок такого массива не нарушился (пробегаем по всему массиву) - значит это что-то типа круга, так как принцип смены направления - соответствует.

Где-то так...
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / анализ движения мыши
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]