x と y の速度値を -MAX と MAX の間にスケーリングし、それらの比率を維持しようとしています。数値は、負、ゼロ、または正のいずれかです。これは、x 速度と y 速度に速度制限を適用するために使用されています。これが私が持っているものです:
if(abs(velocities.x) <= MAX_TRANSLATIONAL_VELOCITY && abs(velocities.y) <= MAX_TRANSLATIONAL_VELOCITY)
return;
float higher = max(abs(velocities.x), abs(velocities.y));
velocities.x = (velocities.x / higher) * MAX_TRANSLATIONAL_VELOCITY;
velocities.y = (velocities.y / higher) * MAX_TRANSLATIONAL_VELOCITY;
これは実際には機能しておらず、私がこれを適用しているロボットは飛び散っています。これを達成する標準的な方法はありますか?
ありがとう。