Рисовать Linux на экран в панель

Это больше словарный вопрос, чем что-либо еще.

введение

Я использую библиотеку Point Cloud для получения данных отслеживания лица. Используя эти данные, я хочу отслеживать, где пользователь сталкивается на экране. Это не проблема.

чтобы дать обратную связь с пользователем, я хотел бы нарисовать оценку направления лица пользователя как красный круг на экране, в основном, как видно здесь (они просто создают крошечное окно). Я хотел бы, чтобы этот круг мог идти везде на экране, и я хочу, чтобы он всегда был виден. Я не хочу, чтобы оно было закрыто другим активным окном. Если это мешает взаимодействию с окном, я не против.

моя проблема заключается в том, что я не знаю, с чего начать.

Я мог бы просто управлять курсором, но это менее идеально, потому что я хотел бы все еще иметь возможность перемещать курсор во время использования распознавание лиц.

Я думаю, что мне нужно использовать OpenGL, но все примеры, которые я видел, были внутри X windows. Например, код, который я нашел здесь после получения подсказки здесь, дайте мне хорошее постоянное окно, но окно все еще захватывает все мои щелчки мыши. как нарисовать что-то на экране с OpenGL, который не зависит от X-window?

Я приближаюсь к этому с неправильной стороны полностью? Если да, то кем я должен быть? гуглить?

Я приму любой ответ, который дает мне отправную точку.

платформа

Я использую Ubuntu 12.04 с рабочим столом Unity.

1 ответов


создать обычное окно. Скажите WM пропустить украшения ant, чтобы держать окно всегда сверху. Используйте XFixesSetWindowShapeRegion (), чтобы отдельно задать круговую область вывода и пустую область ввода. Вам нужно композитный оконный менеджер XFixes расширения для этой работы.

вы также можете сделать свое окно полупрозрачным (для этого нужен композитный оконный менеджер).

современный инструментарий, такой как gtk, должен иметь простой в использовании API для выполнения всех выше.

OpenGL не требуется на любом этапе.