我需要根据步数和距离覆盖范围的信息来计算速度!
任何人都可以指导我如何使用公式来实现这一目标
S = VT
,但在这种情况下,我需要每步时间才能计算出每步velocity
。.我已经研究过stackoverflow,但没有解决问题。
谢谢。
在此代码块中,我要通过TYPE_COUNTER_STEP和距离来计算步数,方法是将人的身高乘以0.45,然后再乘以步数
public void registerForSensorEvents(){ SensorManager sManager =(SensorManager)getSystemService(Context.SENSOR_SERVICE);
// Step Counter
sManager.registerListener(new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
float steps = event.values[0];
arrayList.add((int)steps);
getCurrentStepValue = (int) steps ;
stepValue.setText(getCurrentStepValue - arrayList.get(0) + "");
double distaneCovered = step_length * (getCurrentStepValue - arrayList.get(0));
distanceValue.setText("" + distaneCovered);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}, sManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER),
SensorManager.SENSOR_DELAY_NORMAL);
}
答案 0 :(得分:0)
您应该首先进行初始印章制作,第二步进行“现在”与初始印章之间的区别,然后您将有时间/步骤,将初始印章重置为“现在”并在以下步骤中进行相同操作
同样,您只需拥有一个计时器并以X秒为单位计算步数(即距离),而不是时间/步,这取决于您真正需要做的事情。