- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要找到圆盘转动时的转动角度(请看图片)。我实际上只需要一个旋转角度,但数据是通过 Sensors2OSC 从 Samsung Galaxy S4 获得的。这个应用程序使我能够接收加速度计和陀螺仪 float 据以通过 OSC 进行处理。手机安装在板的背面..
https://github.com/SensorApps/Sensors2OSC
哪种方法提供的结果最准确,我必须使用哪些传感器进行传感器融合?
import oscP5.*;
import netP5.*;
OscP5 oscP5;
NetAddress myRemoteLocation;
LowPass lp;
float number1 = 0.0;
void setup() {
size(1200, 600, P3D);
oscP5 = new OscP5(this, 9000);
lp = new LowPass(10); //The argument is the FIFO queue length
}
void draw() {
background(0);
lights();
pushMatrix();
translate(300, height/2, -100);
rotateZ(-number1);
box(330, 200, 40);
popMatrix();
pushMatrix();
translate(900, height/2, -100);
lp.input(number1);
rotateZ(lp.output);
box(330, 200, 40);
popMatrix();
}
/* incoming osc message are forwarded to the oscEvent method. */
void oscEvent(OscMessage theOscMessage) {
if ( theOscMessage.addrPattern().equals("/rotationvector/z") );
number1 = theOscMessage.get(0).floatValue();
}
class LowPass {
ArrayList buffer;
int len;
float output;
LowPass(int len) {
this.len = len;
buffer = new ArrayList(len);
for (int i = 0; i < len; i++) {
buffer.add(new Float(0.0));
}
}
void input(float v) {
buffer.add(new Float(v));
buffer.remove(0);
float sum = 0;
for (int i=0; i<buffer.size (); i++) {
Float fv = (Float)buffer.get(i);
sum += fv.floatValue();
}
output = sum / buffer.size();
}
}
最佳答案
听起来您并不是在询问如何从手机本身获取传感器值。您已经从 Sensors2OSC
获取传感器值,它通过 OSC 将它们发送到 Processing。你可能正在使用类似 oscP5 的东西.
我想您是在问如何解析进入您的 Processing 草图的消息,以便您可以访问 Processing 代码中的传感器值,然后如何将这些传感器值转换为角度。
第 1 步 是通过 OSC 获取消息。你可以找到一个例子 here ,而您关心的函数是 oscEvent(OscMessage theOscMessage)
函数。
完成该工作后,第 2 步 是解析来自消息的数据。你可以看看the OscMessage documentation获取可能派上用场的功能列表。你的最终目标是拥有这样的东西:
void oscEvent(OscMessage theOscMessage) {
float xAccel = //parse theOscMessage to get X accelerometer reading
float yAccel = //parse theOscMessage to get Y accelerometer reading
float zAccel = //parse theOscMessage to get Z accelerometer reading
println(xAccel + ", " + yAccel + ", " + zAccel);
}
第 3 步 是将这些原始加速度计值转换为角度。谷歌搜索“android accelerometer to angle”返回大量结果,包括:
你的目标是拥有这样的东西:
void oscEvent(OscMessage theOscMessage) {
float xAccel = //parse theOscMessage to get X accelerometer reading
float yAccel = //parse theOscMessage to get Y accelerometer reading
float zAccel = //parse theOscMessage to get Z accelerometer reading
float angle = //calculate angle
println(angle);
}
从那里你可以用角度值做任何你想做的事。请注意,它可能比这稍微复杂一些,因为我不确定您的 Android 应用程序是否会在一条消息中发送所有加速度计值,或者它是否会分成多条消息。在您真正理解消息包含的内容之前,您将不得不不断尝试。
关于android - 使用安卓手机原始数据的旋转角度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36095767/
在更大的应用程序的上下文中,我的小程序需要将一些数据打印到 Zebra 或 Dymo(取决于用户安装的内容)标签打印机。 我收到的数据是转义形式,我只需要发送到打印机并让它解释它的数据。 搜索我找到了
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭去年。 Improve th
我正在尝试使用 GetUserMedia() 从用户麦克风录制和保存声音片段和 AudioContext蜜蜂。 我已经能够使用 MediaRecorder 做到这一点API,但不幸的是,Safari/
我想编写一个将十六进制数据转换为音频文件的小型Web应用程序。 音频文件的数据将采用十六进制格式,如下所示: DA1FFFF8B3AEEE2E23BBB9A2221F10400180001EF1C1E
在其中一个 API 中,我收到以下 Json 响应:您可以在此处查看此响应示例 Sample Json resopnse { "histogram" : { "1" : "12
如何在 python 上使用 Resuests 库发布原始数据?我正在尝试登录。 Json 抛出异常 TypeError: set(['"clienteLogin":{"Token":"b94261f
有人告诉我,无论何时使用字节,都应该将变量声明为无符号字符。在 Windows 的数据类型中,BYTE 被声明为 unsigned char。 我的问题: 为什么? Unsigned 是从 0 到 2
如何读取 GPS 原始数据,更具体地说,我需要卫星伪距。此数据不提供 NMEA 格式。 最佳答案 卫星伪距在 official API 中不可用 ,既不通过 GpsStatus.Listener 也不
给定以下 XML: 1424 我正在尝试获取
我使用了以下代码将十进制的 bigint 转换为 bytearray(原始数据),但我得到了错误的结果。 这里有什么错误吗? 我正在 Apple Mac 中尝试此操作(适用于 Iphone 应用程序)
我在 iOS 应用程序中使用 Firebase 登录时遇到了表格 View 问题。该表从子提要加载内容。当我第一次登录时,表加载正常,但如果我注销并再次登录,表会重新加载所有数据,将原始数据添加到表的
我正在使用 Apache BCEL动态创建 java 类,每个类都有自己的关联图像。这些生成的类实现了以下接口(interface): interface ImageOwner { byte[
有没有办法读取 Sim 卡的“原始”数据?类似于如何使用 Pdu 的 SmsMessage 原始数据读取原始数据? 最佳答案 阅读SIM卡相关信息需要TelephonyManager API . Te
有没有办法在命令行 curl 中将数据 POST 或 GET(插入您最喜欢的 HTTP 方法)数据到 URL 并包含在原始发布的数据 header 值中,而不是发出 -H 选项? 例如: $curl
我正在开展一个项目,尝试使用 Myo Gesture Control Armband 识别一些用于康复治疗的 Action /姿势。 . 我有三个问题: EMG Raw Data 返回的最大值和最小值
我有 flv 文件,其中包含带有 aac 原始数据的音频标签。每个音频标签都有一组 aac 原始数据。原始数据有不同的大小。我想通过 RTP 发送。我添加了 13 位大小的 AU header 。它是
我使用制造商提供的库通过 USB 访问相机。我通过结构接收有关图像的信息: typedef struct { /*! Buffer handle which contains new data
我正在从事 BLE 项目,其中录音机硬件连续流式传输数据并发送到 iOS 应用程序。从 iOS 应用程序端,我需要读取传输的数据。 硬件向 iOS 应用程序发送 HEX 数据,我们需要创建 .mp3/
我正在尝试使用 AFNetworking 发出 HTTP PUT 请求以在 CouchDB 服务器中创建附件。服务器需要 HTTP 正文中的 base64 编码字符串。如何在不使用 AFNetwork
我有一些 Graylog2 使用 syslog 输入插件接收的日志。 我需要以我收到的相同格式导出它们,无需任何解析,以便我可以发送给应用程序支持团队。 我已将 INPUT 设置为保留 full_ma
我是一名优秀的程序员,十分优秀!