когда одна переменная увеличивается, другая уменьшается - PullRequest
0 голосов
/ 09 апреля 2011

У меня есть 2 переменные.

float Speed;

float SteeringAngle;

Мое значение скорости в настоящее время увеличивается.Я хочу уменьшить угол поворота рулевого колеса при увеличении скорости.Это должно быть простое уравнение, но я не могу разобраться.

Спасибо

Ответы [ 2 ]

1 голос
/ 10 апреля 2011

Вы можете попробовать эту формулу:

  • фактор - число в диапазоне 1..N, которое используется для уменьшения угла поворота руля.
  • maxSpeed ​​- значение ожидаемой максимальной скорости, при которой применяется максимальный коэффициент для уменьшения угла поворота.
  • требуемый угол - текущий требуемый угол поворота

.

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

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

Существует множество возможных формул.

Я бы предложил вам попытаться построить графики скоростей и углов

1 голос
/ 09 апреля 2011

Очевидный подход будет выглядеть примерно так:

Speed = factor / steeringAngle;

Редактировать: упс - я неправильно прочитал ваш запрос.Если вы хотите уменьшить угол поворота рулевого колеса при увеличении скорости, вам нужно что-то вроде:

if (speed > 0)
    steeringAngle -= factor / speed;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...