Vector3::round, Vector2::round & Vector2::ceil methods were added.
Now both structs (Vector2 & Vector3) have round, floor & ceil methods.
(see #18603)
(cherry picked from commit 26963473a9
)
This commit is contained in:
parent
b95cc40640
commit
8231b3cef8
|
@ -108,6 +108,16 @@ Vector2 Vector2::floor() const {
|
|||
return Vector2(Math::floor(x), Math::floor(y));
|
||||
}
|
||||
|
||||
Vector2 Vector2::ceil() const {
|
||||
|
||||
return Vector2(Math::ceil(x), Math::ceil(y));
|
||||
}
|
||||
|
||||
Vector2 Vector2::round() const {
|
||||
|
||||
return Vector2(Math::round(x), Math::round(y));
|
||||
}
|
||||
|
||||
Vector2 Vector2::rotated(real_t p_by) const {
|
||||
|
||||
Vector2 v;
|
||||
|
|
|
@ -163,6 +163,8 @@ struct Vector2 {
|
|||
}
|
||||
|
||||
Vector2 floor() const;
|
||||
Vector2 ceil() const;
|
||||
Vector2 round() const;
|
||||
Vector2 snapped(const Vector2 &p_by) const;
|
||||
real_t aspect() const { return width / height; }
|
||||
|
||||
|
|
|
@ -103,6 +103,7 @@ struct Vector3 {
|
|||
_FORCE_INLINE_ Vector3 floor() const;
|
||||
_FORCE_INLINE_ Vector3 sign() const;
|
||||
_FORCE_INLINE_ Vector3 ceil() const;
|
||||
_FORCE_INLINE_ Vector3 round() const;
|
||||
|
||||
_FORCE_INLINE_ real_t distance_to(const Vector3 &p_b) const;
|
||||
_FORCE_INLINE_ real_t distance_squared_to(const Vector3 &p_b) const;
|
||||
|
@ -204,6 +205,11 @@ Vector3 Vector3::ceil() const {
|
|||
return Vector3(Math::ceil(x), Math::ceil(y), Math::ceil(z));
|
||||
}
|
||||
|
||||
Vector3 Vector3::round() const {
|
||||
|
||||
return Vector3(Math::round(x), Math::round(y), Math::round(z));
|
||||
}
|
||||
|
||||
Vector3 Vector3::linear_interpolate(const Vector3 &p_b, real_t p_t) const {
|
||||
|
||||
return Vector3(
|
||||
|
|
|
@ -340,6 +340,8 @@ struct _VariantCall {
|
|||
VCALL_LOCALMEM1R(Vector2, rotated);
|
||||
VCALL_LOCALMEM0R(Vector2, tangent);
|
||||
VCALL_LOCALMEM0R(Vector2, floor);
|
||||
VCALL_LOCALMEM0R(Vector2, ceil);
|
||||
VCALL_LOCALMEM0R(Vector2, round);
|
||||
VCALL_LOCALMEM1R(Vector2, snapped);
|
||||
VCALL_LOCALMEM0R(Vector2, aspect);
|
||||
VCALL_LOCALMEM1R(Vector2, dot);
|
||||
|
@ -382,6 +384,7 @@ struct _VariantCall {
|
|||
VCALL_LOCALMEM0R(Vector3, abs);
|
||||
VCALL_LOCALMEM0R(Vector3, floor);
|
||||
VCALL_LOCALMEM0R(Vector3, ceil);
|
||||
VCALL_LOCALMEM0R(Vector3, round);
|
||||
VCALL_LOCALMEM1R(Vector3, distance_to);
|
||||
VCALL_LOCALMEM1R(Vector3, distance_squared_to);
|
||||
VCALL_LOCALMEM1R(Vector3, angle_to);
|
||||
|
@ -1509,6 +1512,8 @@ void register_variant_methods() {
|
|||
ADDFUNC1R(VECTOR2, VECTOR2, Vector2, rotated, REAL, "phi", varray());
|
||||
ADDFUNC0R(VECTOR2, VECTOR2, Vector2, tangent, varray());
|
||||
ADDFUNC0R(VECTOR2, VECTOR2, Vector2, floor, varray());
|
||||
ADDFUNC0R(VECTOR2, VECTOR2, Vector2, ceil, varray());
|
||||
ADDFUNC0R(VECTOR2, VECTOR2, Vector2, round, varray());
|
||||
ADDFUNC1R(VECTOR2, VECTOR2, Vector2, snapped, VECTOR2, "by", varray());
|
||||
ADDFUNC0R(VECTOR2, REAL, Vector2, aspect, varray());
|
||||
ADDFUNC1R(VECTOR2, REAL, Vector2, dot, VECTOR2, "with", varray());
|
||||
|
@ -1550,6 +1555,7 @@ void register_variant_methods() {
|
|||
ADDFUNC0R(VECTOR3, VECTOR3, Vector3, abs, varray());
|
||||
ADDFUNC0R(VECTOR3, VECTOR3, Vector3, floor, varray());
|
||||
ADDFUNC0R(VECTOR3, VECTOR3, Vector3, ceil, varray());
|
||||
ADDFUNC0R(VECTOR3, VECTOR3, Vector3, round, varray());
|
||||
ADDFUNC1R(VECTOR3, REAL, Vector3, distance_to, VECTOR3, "b", varray());
|
||||
ADDFUNC1R(VECTOR3, REAL, Vector3, distance_squared_to, VECTOR3, "b", varray());
|
||||
ADDFUNC1R(VECTOR3, REAL, Vector3, angle_to, VECTOR3, "to", varray());
|
||||
|
|
Loading…
Reference in New Issue