因为一个变量增加另一个变量

时间:2011-04-09 18:43:42

标签: algorithm

我有2个变量。

float Speed;

float SteeringAngle;

我的速度值目前增加。我想要做的是随着速度的增加减小转向角。它应该是一个简单的等式,但我似乎无法解决它。

由于

2 个答案:

答案 0 :(得分:1)

显而易见的方法是:

Speed = factor / steeringAngle;

编辑:oops - 我误读了你的请求。如果你想在速度增加时减小转向角度,你需要类似的东西:

if (speed > 0)
    steeringAngle -= factor / speed;

答案 1 :(得分:1)

您可以尝试以下公式:

  • factor - 1..N范围内的数字,用于缩小转向角度。
  • maxSpeed - 应用最大系数以减小转向角度的预期最大速度值。
  • requestedAngle - 当前所需的转向角度

float factor;
float maxSpeed;
float requestedAngle;
float Speed;

float SteeringAngle = requestedAngle/( (Speed * factor / maxSpeed) + 1);

有许多可能的公式。

我建议你尝试绘制速度和角度的图表