我想开发一个程序,使用网络摄像头跟踪四种颜色,这些颜色将在我的食指和双手的拇指上,根据我的手的姿势,计算机将解释这些手势并执行命令.例如,如果我打开一个网站,我所要做的就是用手指捏住,网页会变焦.我想得到stackoverflow社区的建议,从哪里开始,以及是否有人对我有任何建议.提前致谢.
我想使用加速度计和陀螺仪检测iOS设备上的手势.应用程序应检测空气中绘制圆形或矩形的运动.我在iPhone上发现了几篇关于手势识别的论文,但没有我可以使用的实际代码.我想知道是否有一个图书馆可以帮助我以任何方式接近这个目标?如果没有,我必须自己开始构建一个!:) 提前致谢!马库斯
我正在为iPhone和Android平台开发简单的移动应用程序,我正在寻找能够在使用内部加速度计检测某个手势时触发某些事件(函数)的算法.我使用的是Phonegap,它使用HTML5和javascript,它在预先设定的时间间隔内从加速度计读取三个坐标(x,y和z)(例如每隔0.04秒).
我写了一个简单的函数来检测摇动动作并且它工作得非常好但它是原始的(它只能检测到震动,而不是方向) - 我想要检测一些其他手势,例如: - 倾斜(向左/向右) - 向上/向下摇 - 左/右摇 - 圆周运动 - 颠倒 - 等......
是否有人能够根据我拥有的输入值(x,y,z和每次调用的时间间隔)计算(检测)这种手势的算法(或至少是数学公式/函数)?
我正在寻找任何编程语言的代码(我将自己重写为javascript.提前感谢!
在Google Glass XE16中,GestureDetector可以检测多种手势,如LONG_PRESS,SWIPE_DOWN,THREE_LONG_PRESS,TWO_SWIPE_DOWN,TWO_TAP和其他一些手势.
在玻璃中TWO_SWIPE_DOWN就像取消所有内容并转到黑屏的快捷方式选项.在黑色屏幕之后它出现"ok glass".
但我需要覆盖TWO_SWIPE_DOWN TAP,以便用户不能以这种方式离开应用程序.我想在点击TWO_SWIPE_DOWN时显示用户特定的消息.
我的代码遵循以下GDK Touch Gestures:
gestureDetector.setBaseListener(new GestureDetector.BaseListener() {
@Override
public boolean onGesture(Gesture gesture) {
if (gesture == Gesture.TAP) {
return true;
} else if (gesture == Gesture.TWO_TAP) {
return true;
} else if (gesture == Gesture.SWIPE_RIGHT) {
return true;
} else if (gesture == Gesture.SWIPE_LEFT) {
return true;
} else if (gesture == Gesture.TWO_SWIPE_DOWN) {
Log.i("Checking the TAPPING of TWO_SWIPE_DOWN", "Its working fine.");
return true;
}
return …Run Code Online (Sandbox Code Playgroud) android gesture-recognition gestures google-glass android-4.4-kitkat
我正在使用Gesture API和我创建的手势库,它运行得非常好.问题是我想在OnGesturePerformedListener退出后在屏幕上显示手势,而是删除手势.我想在OnGesturePerformedListener之后可能有一个事件 - 我可以在OnGesturePerformedListener中保存手势,然后在以后的事件中再次显示它.有谁知道是否有这样的事件?这是代码:
private OnGesturePerformedListener handleGestureListener = new OnGesturePerformedListener() {
@Override
public void onGesturePerformed(GestureOverlayView gestureView,
Gesture gesture) {
if (gesture.getStrokesCount() != 2){
setWonderEmoticon();
return;
}
ArrayList<Prediction> predictions = gLib.recognize(gesture);
// one prediction needed
if (predictions.size() > 0) {
Prediction prediction = predictions.get(0);
// checking prediction
if (prediction.score > 20.0) {
setHappyEmoticon();
}
else {
setWonderEmoticon();
}
}
}
};
Run Code Online (Sandbox Code Playgroud)
顺便说一句,当从代码中删除setWonderEmoticon()和setHappyEmoticon()时,会发生同样的事情.
我正在使用 ScaleGestureDetector 来检测捏合和捏合动作,方法是获取比例因子,如果小于 1,则缩小,反之亦然。
但问题在于,在 Android 6.0 上,比例因子始终为 1.0,这使得无法区分捏合和捏合。
在此先感谢您的帮助。
import android.content.Context;
import android.os.Handler;
import android.support.v4.view.GestureDetectorCompat;
import android.support.v4.view.MotionEventCompat;
import android.util.Log;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.ScaleGestureDetector;
import android.view.VelocityTracker;
import android.widget.FrameLayout;
public class TouchableWrapper extends FrameLayout
{
private GestureDetectorCompat mGestureDetector;
private ScaleGestureDetector mScaleGestureDetector;
private VelocityTracker mVelocityTracker;
private boolean acceptEvents=true;
ScaleGestureDetector temp;
private final GestureDetector.SimpleOnGestureListener mGestureListener = new GestureDetector.SimpleOnGestureListener()
{
@Override
public boolean onDoubleTap(MotionEvent e)
{
EventBus_Singleton.getInstance().post(new EventBus_Poster(Constants.MAP_DOUBLE_TOUCHED));
return true;
}
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
return super.onDoubleTapEvent(e);
}
};
private …Run Code Online (Sandbox Code Playgroud) 在Windows窗体控件中,我已使用SetGestureConfig方法正确配置了触摸手势.它正确配置了控件的触摸手势.在某些情况下,我需要检查控件是否正确启用了特定的触摸手势.我尝试使用GetGestureConfig方法来检查是否启用了特定手势.但是这种方法总是 单独返回false值.而且我尝试使用GetLastError()方法获取错误消息,但它始终返回值0.请找到下面的代码,
int gestureConfigSize = Marshal.SizeOf(new GESTURECONFIG());
GESTURECONFIG gc = new GESTURECONFIG();
gc.dwID = 0;
gc.dwWant = WindowMessages.GC_ALLGESTURES;
gc.dwBlock = 0;
if (SetGestureConfig(control.Handle, 0, 1, ref gc, gestureConfigSize))
MessageBox.Show("Zoom gesture configured properly");
GESTURECONFIG gc1 = new GESTURECONFIG();
gc1.dwID = 0;
gc1.dwWant = WindowMessages.GC_ALLGESTURES;
gc1.dwBlock = 0;
GESTURECONFIG[] gestures = new GESTURECONFIG[] { gc1 };
bool value = GetGestureConfig(control.Handle, 0, 0, 1, gestures, gestureConfigSize);
if (!value)
{
int errorValue = …Run Code Online (Sandbox Code Playgroud) 我有一个堆栈,可以在其中拖动几个小部件。此外,Stack 所在的容器有一个 GestureDetector 来触发 onTapDown 和 onTapUp。我希望这些 onTap 事件仅在用户点击 Stack 中的小部件外部时触发。我试过以下代码:
class Gestures extends StatefulWidget {
@override
State<StatefulWidget> createState() => _GesturesState();
}
class _GesturesState extends State<Gestures> {
Color background;
Offset pos;
@override
void initState() {
super.initState();
pos = Offset(10.0, 10.0);
}
@override
Widget build(BuildContext context) => GestureDetector(
onTapDown: (_) => setState(() => background = Colors.green),
onTapUp: (_) => setState(() => background = Colors.grey),
onTapCancel: () => setState(() => background = Colors.grey),
child: Container(
color: background,
child: Stack(
children: <Widget>[
Positioned( …Run Code Online (Sandbox Code Playgroud) 我需要分析android手写识别SDK.谁能告诉我市场上有哪些SDK可用.我从VisionObjects 找到了MyScript,但我无法从SDK中找到任何下载链接,因为我需要测试才能看到准确性.