diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform2D.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform2D.cs
index a5fa89d3bfd..f943a3049d4 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform2D.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform2D.cs
@@ -47,7 +47,7 @@ namespace Godot
{
get
{
- real_t detSign = Mathf.Sign(BasisDeterminant());
+ real_t detSign = Mathf.Sign(Determinant());
return new Vector2(X.Length(), detSign * Y.Length());
}
}
@@ -59,7 +59,7 @@ namespace Godot
{
get
{
- real_t detSign = Mathf.Sign(BasisDeterminant());
+ real_t detSign = Mathf.Sign(Determinant());
return Mathf.Acos(X.Normalized().Dot(detSign * Y.Normalized())) - Mathf.Pi * 0.5f;
}
}
@@ -135,7 +135,7 @@ namespace Godot
/// The inverse transformation matrix.
public readonly Transform2D AffineInverse()
{
- real_t det = BasisDeterminant();
+ real_t det = Determinant();
if (det == 0)
throw new InvalidOperationException("Matrix determinant is zero and cannot be inverted.");
@@ -157,15 +157,16 @@ namespace Godot
///
/// Returns the determinant of the basis matrix. If the basis is
- /// uniformly scaled, its determinant is the square of the scale.
+ /// uniformly scaled, then its determinant equals the square of the
+ /// scale factor.
///
- /// A negative determinant means the Y scale is negative.
- /// A zero determinant means the basis isn't invertible,
- /// and is usually considered invalid.
+ /// A negative determinant means the basis was flipped, so one part of
+ /// the scale is negative. A zero determinant means the basis isn't
+ /// invertible, and is usually considered invalid.
///
/// The determinant of the basis matrix.
[MethodImpl(MethodImplOptions.AggressiveInlining)]
- private readonly real_t BasisDeterminant()
+ public readonly real_t Determinant()
{
return (X.X * Y.Y) - (X.Y * Y.X);
}