Python是否有一个全面的多点触控库?
问题描述:
我试图将多点触控事件嵌入到我的wxPython GUI中,但是我对最佳方法有点遗憾。Python是否有一个全面的多点触控库?
目前,我有一个TUIO服务器,它传输要捕获的多点触控事件。然后,我使用pytuio库在我的GUI的单独线程中接收多点触控事件。我的GUI由一个带有多个matplotlib面板和一个OpenGL面板的wxFrame组成。
问题是我不得不手动编写代码来确定有多少手指正在使用,位置和触摸类型。然后我发送一个可以通过我的GUI接收的自定义事件。
这对matplotlib面板工作正常(尽管我必须提供一个非常小的不断偏移到手指的报告位置),但对于OpenGL面板手指位置似乎不正确。这是一个问题,因为OpenGL面板中的触摸位置的偏移量甚至不是一个常数,它看起来会随着面板上触摸事件发生的位置而变化。所以我无法弥补它。
我觉得必须有一个更全面的多点触摸库,它可以确定手指和触摸类型的数量(点击,双击,拖动,释放等)。并可能会克服我的问题与OpenGL面板。我看了,但我还没有看到一个图书馆可以区分触摸类型等,他们似乎只提供了一个手指的数量和位置的清单。
答
唯一的综合性GUI库支持:
- 的Python
- 多个OS
- 多点触控
是Kivy。我能够为Windows 7及更高版本和wxPython(通过从Kivy中提取相关部分来处理WM_TOUCH
事件)来凑齐一些东西,因此原则上可以完成。但是这些都不能解决你的具体问题。