Skip to content

Commit

Permalink
Expose
Browse files Browse the repository at this point in the history
  • Loading branch information
AThousandShips committed Sep 27, 2024
1 parent 9997d68 commit ab8ef84
Show file tree
Hide file tree
Showing 9 changed files with 48 additions and 0 deletions.
5 changes: 5 additions & 0 deletions core/variant/variant_call.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1796,6 +1796,7 @@ static void _register_variant_builtin_methods_math() {
bind_method(Vector2, normalized, sarray(), varray());
bind_method(Vector2, is_normalized, sarray(), varray());
bind_method(Vector2, is_equal_approx, sarray("to"), varray());
bind_method(Vector2, is_semantic_equal, sarray("to"), varray());
bind_method(Vector2, is_zero_approx, sarray(), varray());
bind_method(Vector2, is_finite, sarray(), varray());
bind_method(Vector2, posmod, sarray("mod"), varray());
Expand Down Expand Up @@ -1904,6 +1905,7 @@ static void _register_variant_builtin_methods_math() {
bind_method(Vector3, normalized, sarray(), varray());
bind_method(Vector3, is_normalized, sarray(), varray());
bind_method(Vector3, is_equal_approx, sarray("to"), varray());
bind_method(Vector3, is_semantic_equal, sarray("to"), varray());
bind_method(Vector3, is_zero_approx, sarray(), varray());
bind_method(Vector3, is_finite, sarray(), varray());
bind_method(Vector3, inverse, sarray(), varray());
Expand Down Expand Up @@ -1987,6 +1989,7 @@ static void _register_variant_builtin_methods_math() {
bind_method(Vector4, dot, sarray("with"), varray());
bind_method(Vector4, inverse, sarray(), varray());
bind_method(Vector4, is_equal_approx, sarray("to"), varray());
bind_method(Vector4, is_semantic_equal, sarray("to"), varray());
bind_method(Vector4, is_zero_approx, sarray(), varray());
bind_method(Vector4, is_finite, sarray(), varray());
bind_method(Vector4, min, sarray("with"), varray());
Expand Down Expand Up @@ -2034,6 +2037,7 @@ static void _register_variant_builtin_methods_math() {
bind_method(Quaternion, normalized, sarray(), varray());
bind_method(Quaternion, is_normalized, sarray(), varray());
bind_method(Quaternion, is_equal_approx, sarray("to"), varray());
bind_method(Quaternion, is_semantic_equal, sarray("to"), varray());
bind_method(Quaternion, is_finite, sarray(), varray());
bind_method(Quaternion, inverse, sarray(), varray());
bind_method(Quaternion, log, sarray(), varray());
Expand Down Expand Up @@ -2070,6 +2074,7 @@ static void _register_variant_builtin_methods_math() {
bind_method(Color, linear_to_srgb, sarray(), varray());

bind_method(Color, is_equal_approx, sarray("to"), varray());
bind_method(Color, is_semantic_equal, sarray("to"), varray());

bind_static_method(Color, hex, sarray("hex"), varray());
bind_static_method(Color, hex64, sarray("hex"), varray());
Expand Down
5 changes: 5 additions & 0 deletions core/variant/variant_utility.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -352,6 +352,10 @@ bool VariantUtilityFunctions::is_equal_approx(double x, double y) {
return Math::is_equal_approx(x, y);
}

bool VariantUtilityFunctions::is_semantic_equal(double x, double y) {
return Math::is_semantic_equal(x, y);
}

bool VariantUtilityFunctions::is_zero_approx(double x) {
return Math::is_zero_approx(x);
}
Expand Down Expand Up @@ -1740,6 +1744,7 @@ void Variant::_register_variant_utility_functions() {
FUNCBINDR(is_inf, sarray("x"), Variant::UTILITY_FUNC_TYPE_MATH);

FUNCBINDR(is_equal_approx, sarray("a", "b"), Variant::UTILITY_FUNC_TYPE_MATH);
FUNCBINDR(is_semantic_equal, sarray("a", "b"), Variant::UTILITY_FUNC_TYPE_MATH);
FUNCBINDR(is_zero_approx, sarray("x"), Variant::UTILITY_FUNC_TYPE_MATH);
FUNCBINDR(is_finite, sarray("x"), Variant::UTILITY_FUNC_TYPE_MATH);

Expand Down
1 change: 1 addition & 0 deletions core/variant/variant_utility.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ struct VariantUtilityFunctions {
static bool is_nan(double x);
static bool is_inf(double x);
static bool is_equal_approx(double x, double y);
static bool is_semantic_equal(double x, double y);
static bool is_zero_approx(double x);
static bool is_finite(double x);
static double ease(float x, float curve);
Expand Down
7 changes: 7 additions & 0 deletions doc/classes/@GlobalScope.xml
Original file line number Diff line number Diff line change
Expand Up @@ -607,6 +607,13 @@
These are [Variant] reference types: [Object], [Dictionary], [Array], [PackedByteArray], [PackedInt32Array], [PackedInt64Array], [PackedFloat32Array], [PackedFloat64Array], [PackedStringArray], [PackedVector2Array], [PackedVector3Array], [PackedVector4Array], and [PackedColorArray].
</description>
</method>
<method name="is_semantic_equal" keywords="nan">
<return type="bool" />
<param index="0" name="a" type="float" />
<param index="1" name="b" type="float" />
<description>
</description>
</method>
<method name="is_zero_approx">
<return type="bool" />
<param index="0" name="x" type="float" />
Expand Down
6 changes: 6 additions & 0 deletions doc/classes/Color.xml
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,12 @@
Returns [code]true[/code] if this color and [param to] are approximately equal, by running [method @GlobalScope.is_equal_approx] on each component.
</description>
</method>
<method name="is_semantic_equal" qualifiers="const">
<return type="bool" />
<param index="0" name="to" type="Color" />
<description>
</description>
</method>
<method name="lerp" qualifiers="const" keywords="interpolate">
<return type="Color" />
<param index="0" name="to" type="Color" />
Expand Down
6 changes: 6 additions & 0 deletions doc/classes/Quaternion.xml
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,12 @@
Returns [code]true[/code] if this quaternion is normalized. See also [method normalized].
</description>
</method>
<method name="is_semantic_equal" qualifiers="const">
<return type="bool" />
<param index="0" name="to" type="Quaternion" />
<description>
</description>
</method>
<method name="length" qualifiers="const" keywords="size">
<return type="float" />
<description>
Expand Down
6 changes: 6 additions & 0 deletions doc/classes/Vector2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,12 @@
Returns [code]true[/code] if the vector is normalized, i.e. its length is approximately equal to 1.
</description>
</method>
<method name="is_semantic_equal" qualifiers="const">
<return type="bool" />
<param index="0" name="to" type="Vector2" />
<description>
</description>
</method>
<method name="is_zero_approx" qualifiers="const">
<return type="bool" />
<description>
Expand Down
6 changes: 6 additions & 0 deletions doc/classes/Vector3.xml
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,12 @@
Returns [code]true[/code] if the vector is normalized, i.e. its length is approximately equal to 1.
</description>
</method>
<method name="is_semantic_equal" qualifiers="const">
<return type="bool" />
<param index="0" name="to" type="Vector3" />
<description>
</description>
</method>
<method name="is_zero_approx" qualifiers="const">
<return type="bool" />
<description>
Expand Down
6 changes: 6 additions & 0 deletions doc/classes/Vector4.xml
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,12 @@
Returns [code]true[/code] if the vector is normalized, i.e. its length is approximately equal to 1.
</description>
</method>
<method name="is_semantic_equal" qualifiers="const">
<return type="bool" />
<param index="0" name="to" type="Vector4" />
<description>
</description>
</method>
<method name="is_zero_approx" qualifiers="const">
<return type="bool" />
<description>
Expand Down

0 comments on commit ab8ef84

Please sign in to comment.