Просмотр исходного кода

Add Vector2MoveTowards function (#1233)

pull/1236/head
Anata 4 лет назад
committed by GitHub
Родитель
Сommit
4583987fb9
Не найден GPG ключ соответствующий данной подписи Идентификатор GPG ключа: 4AEE18F83AFDEB23
1 измененных файлов: 11 добавлений и 0 удалений
  1. +11
    -0
      src/raymath.h

+ 11
- 0
src/raymath.h Просмотреть файл

@ -283,6 +283,17 @@ RMDEF Vector2 Vector2Rotate(Vector2 v, float degs)
return result;
}
// Move towards Target.
RMDEF Vector2 Vector2MoveTowards( Vector2 v, Vector2 target, float maxDistance)
{
float dx = target.x - v.x;
float dy = target.y - v.y;
float value = ( dx * dx ) + ( dy * dy );
if ( value == 0 || ( maxDistance >= 0 && value <= maxDistance * maxDistance )) return target;
float result = sqrtf( value );
return (Vector2){ v.x + dx / result * maxDistance, v.y + dy / result * maxDistance };
}
//----------------------------------------------------------------------------------
// Module Functions Definition - Vector3 math
//----------------------------------------------------------------------------------

Загрузка…
Отмена
Сохранить