Qt 加载Leap motion 手势识别软件 二次开发 hello world
【摘要】
研发需要对收拾是被进行精确定位,实现收拾的识别,和在虚拟现实中精确的显示手势在实际世界中的位置。
开始使用的Qt mingw的版本开发,总是函数没有定义,最后发现是leap sdk中需要代育vs的库文件,所以猜测需要使用vs版本的Qt 编译,顺利通过
...
研发需要对收拾是被进行精确定位,实现收拾的识别,和在虚拟现实中精确的显示手势在实际世界中的位置。
开始使用的Qt mingw的版本开发,总是函数没有定义,最后发现是leap sdk中需要代育vs的库文件,所以猜测需要使用vs版本的Qt 编译,顺利通过
以下是源代码,有需要的,借鉴一下下
Pro文件
-
QT += core
-
QT -= gui
-
-
CONFIG += c++11
-
-
TARGET = Leap_test
-
CONFIG += console
-
CONFIG -= app_bundle
-
-
#INCLUDEPATH += C:\Dev\LeapSDK\include
-
-
#LIBS += -L E:\WorkSpace\Leap_test -l Leap
-
-
LIBS += $$PWD\Leap.lib
-
-
TEMPLATE = app
-
-
SOURCES += main.cpp
cpp文件
-
#include <QCoreApplication>
-
#include <QDebug>
-
#include "Leap.h"
-
-
-
using namespace Leap;
-
-
-
-
class SampleListener:public Listener
-
{
-
public:
-
virtual void onConnect(const Controller& controller);
-
-
virtual void onFrame(const Controller& controller);
-
};
-
-
-
-
int main(int argc, char *argv[])
-
{
-
QCoreApplication a(argc, argv);
-
-
qDebug()<<"Leap Motion Testing ...";
-
-
-
SampleListener listenertest;
-
-
Controller controllertest;
-
-
-
controllertest.addListener(listenertest);
-
-
-
-
std::cin.get();
-
-
controllertest.removeListener(listenertest);
-
-
-
-
-
-
return a.exec();
-
}
-
-
-
void SampleListener::onConnect(const Controller& controller)
-
{
-
qDebug()<<"Connected";
-
-
controller.enableGesture(Gesture::TYPE_SWIPE);
-
-
-
}
-
-
void SampleListener::onFrame(const Controller& controller)
-
{
-
qDebug()<<"Fram available";
-
-
const Frame frame = controller.frame();
-
-
qDebug()<< "Frame id: " << frame.id()
-
<< ", timestamp: " << frame.timestamp()
-
<< ", hands: " << frame.hands().count()
-
<< ", fingers: " << frame.fingers().count()
-
<< ", tools: " << frame.tools().count()
-
<< ", gestures: " << frame.gestures().count();
-
-
}
欢迎交流
文章来源: dreamlife.blog.csdn.net,作者:DreamLife.,版权归原作者所有,如需转载,请联系作者。
原文链接:dreamlife.blog.csdn.net/article/details/52085725
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)