2015-09-11 2 views
0

Я пытаюсь создать приложение, которое будет работать на дисплее меньше raspi. Приложение должно быть запущено через ssh. И он должен захватить движение мыши. (подумайте, что робот, которому требуется указанная мышь для навигации)Движение мыши в приложении консоли и ssh

SDL нуждается в окне, и это не так для опции для ssh и console. gpm только возвращает нажатие клавиши.

Любая идея?

Редактировать: Мышь находится на распи. Приложение будет запущено через ssh, но это только для отладки.

+0

так что вы хотите видеть движение мыши через ssh? или вам интересно, как заставить движение мыши работать над программой raspi? вы можете просто отправить координаты через ssh в интервалы или при перемещении мыши, или вы можете проверить это, чтобы получить движение мыши. http://www.experts-exchange.com/Programming/Game/Q_24118835.html – iedoc

+0

ya мышь на распи. Я бы увидел движение с помощью мыши, на удаленном хосте через ssh. Ну, в конце движение мыши будет использоваться для запуска логики в деамоне, который должен быть запущен через ssh. Так что все на распи. Поскольку у raspi нет дисплея, и мы должны активировать программу через deamon/ssh, поэтому создание окон через sdl не является вариантом. Итак, мы можем сказать, что я хочу, чтобы у демона был доступ к движению мыши. Или передайте движение мыши движению джойстика. SDL может захватить это без окна. –

ответ

2

доступ мышь на нижне- уровень, например через слот HID, обращаясь непосредственно к соответствующему устройству /dev/input/event*, например. используя libhid

1

Вы можете опрашивать положение мыши в промежутки времени, а затем отправить позицию мыши через SSH к raspi, если позиция изменилась (отправить новую позицию минус последнюю позицию)

POINT lastpos; 

void SendMousePos() 
{ 
    POINT currpos; 
    if (GetCursorPos(&currpos)) 
    { 
     if(currpos != lastpos) 
     { 
      SendMovementToRaspi(currpos.x - lastpos.x, currpos.y - lastpos.y); 
      lastpos = currpos; 
     } 
    } 
} 
+0

Извините, если я не понял. Мышь находится на распи, а не на хосте. Ssh только для отладки, остановки и запуска программы. Спасибо –

Смежные вопросы