Improve the Vector2 rotated code

This commit is contained in:
Aaron Franke 2020-04-20 18:24:17 -04:00
parent cb1ae08c14
commit 23a349c427
No known key found for this signature in database
GPG key ID: 40A1750B977E56BF
2 changed files with 5 additions and 11 deletions

View file

@ -119,11 +119,11 @@ Vector2 Vector2::round() const {
}
Vector2 Vector2::rotated(real_t p_by) const {
Vector2 v;
v.set_rotation(angle() + p_by);
v *= length();
return v;
real_t sine = Math::sin(p_by);
real_t cosi = Math::cos(p_by);
return Vector2(
x * cosi - y * sine,
x * sine + y * cosi);
}
Vector2 Vector2::posmod(const real_t p_mod) const {

View file

@ -123,12 +123,6 @@ struct Vector2 {
real_t angle() const;
void set_rotation(real_t p_radians) {
x = Math::cos(p_radians);
y = Math::sin(p_radians);
}
_FORCE_INLINE_ Vector2 abs() const {
return Vector2(Math::abs(x), Math::abs(y));