[英]How to normalize acceleration with orientation?
让您开始
欧拉角定义了一个向下(朝向)朝向地球中心的方向(方向),例如:
x = cos(alpha)cos(beta);
y = cos(alpha)sin(beta);
z = sin(alpha);
Vector3 versor = new Vector3(x, y, z);
(根据欧拉的表达方式,可能是您必须修复此±alpha±Math.PI / 2,在0°处等等)使用此向量,重力将产生以下力:
Vector3 force = 9.81 * versor;
因此,如果您读了加速度计(即力),则可以计算:
double grav = Math.sqrt(Math.pow(acc.x/versor.x, 2) + Math.pow(acc.y/versor.y) + Math.pow(acc.z/versor.z));
或不是由重力引起的设备上的力:
Vector3 not_gravitational_force = acc - (9.81 * versor);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.