diff --git a/src/SixLabors.Core/Primitives/Point.cs b/src/SixLabors.Core/Primitives/Point.cs
index 1992d3922..8bbb812e6 100644
--- a/src/SixLabors.Core/Primitives/Point.cs
+++ b/src/SixLabors.Core/Primitives/Point.cs
@@ -211,15 +211,12 @@ namespace SixLabors.Primitives
public static Point Round(PointF point) => new Point(unchecked((int)MathF.Round(point.X)), unchecked((int)MathF.Round(point.Y)));
///
- /// Transforms a point by the given matrix.
+ /// Converts a to a by performing a round operation on all the coordinates.
///
- /// The source point.
- /// The transformation matrix.
- /// A transformed point.
- public static PointF Transform(Point position, Matrix3x2 matrix)
- {
- return Vector2.Transform(position, matrix);
- }
+ /// The vector
+ /// The
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ public static Point Round(Vector2 vector) => new Point(unchecked((int)MathF.Round(vector.X)), unchecked((int)MathF.Round(vector.Y)));
///
/// Converts a to a by performing a truncate operation on all the coordinates.
@@ -230,30 +227,22 @@ namespace SixLabors.Primitives
public static Point Truncate(PointF point) => new Point(unchecked((int)point.X), unchecked((int)point.Y));
///
- /// Converts a to a by performing a round operation on all the coordinates.
- ///
- /// The vector
- /// The
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static Point Round(Vector2 vector) => new Point(unchecked((int)MathF.Round(vector.X)), unchecked((int)MathF.Round(vector.Y)));
-
- ///
- /// Rotates a point around the given rotation matrix.
+ /// Transforms a point by a specified 3x2 matrix.
///
- /// The point to rotate
- /// Rotation matrix used
- /// The rotated
+ /// The point to transform
+ /// The transformation matrix used
+ /// The transformed
[MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static Point Rotate(Point point, Matrix3x2 rotation) => Round(Vector2.Transform(new Vector2(point.X, point.Y), rotation));
+ public static Point Transform(Point point, Matrix3x2 matrix) => Transform(new Vector2(point.X, point.Y), matrix);
///
- /// Skews a point using the given skew matrix.
+ /// Transforms a vector by a specified 3x2 matrix.
///
- /// The point to rotate
- /// Rotation matrix used
- /// The rotated
+ /// The vector to transform
+ /// The transformation matrix used
+ /// The transformed
[MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static Point Skew(Point point, Matrix3x2 skew) => Round(Vector2.Transform(new Vector2(point.X, point.Y), skew));
+ public static Point Transform(Vector2 position, Matrix3x2 matrix) => Round(Vector2.Transform(position, matrix));
///
/// Translates this by the specified amount.
diff --git a/src/SixLabors.Core/Primitives/PointF.cs b/src/SixLabors.Core/Primitives/PointF.cs
index 454e69e5c..7c0431556 100644
--- a/src/SixLabors.Core/Primitives/PointF.cs
+++ b/src/SixLabors.Core/Primitives/PointF.cs
@@ -238,34 +238,14 @@ namespace SixLabors.Primitives
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static PointF Multiply(PointF point, float right) => new PointF(point.X * right, point.Y * right);
- /// PointF
- /// Rotates a point around the given rotation matrix.
- ///
- /// The point to rotate
- /// Rotation matrix used
- /// The rotated
- [MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static PointF Rotate(PointF point, Matrix3x2 rotation) => Vector2.Transform(new Vector2(point.X, point.Y), rotation);
-
///
- /// Skews a point using the given skew matrix.
+ /// Transforms a point by a specified 3x2 matrix.
///
- /// The point to rotate
- /// Rotation matrix used
- /// The rotated
+ /// The point to transform
+ /// The transformation matrix used
+ /// The transformed
[MethodImpl(MethodImplOptions.AggressiveInlining)]
- public static PointF Skew(PointF point, Matrix3x2 skew) => Vector2.Transform(new Vector2(point.X, point.Y), skew);
-
- ///
- /// Transforms a point by the given matrix.
- ///
- /// The source point.
- /// The transformation matrix.
- /// A transformed point.
- public static PointF Transform(PointF position, Matrix3x2 matrix)
- {
- return Vector2.Transform(position, matrix);
- }
+ public static PointF Transform(PointF point, Matrix3x2 matrix) => Vector2.Transform(point, matrix);
///
/// Translates this by the specified amount.
diff --git a/src/SixLabors.Core/Primitives/RectangleF.cs b/src/SixLabors.Core/Primitives/RectangleF.cs
index 09fa6f1ab..d5ee6a61b 100644
--- a/src/SixLabors.Core/Primitives/RectangleF.cs
+++ b/src/SixLabors.Core/Primitives/RectangleF.cs
@@ -254,7 +254,7 @@ namespace SixLabors.Primitives
///
/// The source rectangle.
/// The transformation matrix.
- /// A transformed rectangle.
+ /// A transformed .
public static RectangleF Transform(RectangleF rectangle, Matrix3x2 matrix)
{
PointF bottomRight = PointF.Transform(new PointF(rectangle.Right, rectangle.Bottom), matrix);
diff --git a/tests/SixLabors.Core.Tests/Primitives/PointFTests.cs b/tests/SixLabors.Core.Tests/Primitives/PointFTests.cs
index 5a29d1cff..6fdf1bbc3 100644
--- a/tests/SixLabors.Core.Tests/Primitives/PointFTests.cs
+++ b/tests/SixLabors.Core.Tests/Primitives/PointFTests.cs
@@ -106,7 +106,7 @@ namespace SixLabors.Primitives.Tests
var p = new PointF(13, 17);
Matrix3x2 matrix = Matrix3x2Extensions.CreateRotationDegrees(45, PointF.Empty);
- var pout = PointF.Rotate(p, matrix);
+ var pout = PointF.Transform(p, matrix);
Assert.Equal(new PointF(-2.82842732F, 21.2132034F), pout);
}
@@ -117,7 +117,7 @@ namespace SixLabors.Primitives.Tests
var p = new PointF(13, 17);
Matrix3x2 matrix = Matrix3x2Extensions.CreateSkewDegrees(45, 45, PointF.Empty);
- var pout = PointF.Skew(p, matrix);
+ var pout = PointF.Transform(p, matrix);
Assert.Equal(new PointF(30, 30), pout);
}
diff --git a/tests/SixLabors.Core.Tests/Primitives/PointTests.cs b/tests/SixLabors.Core.Tests/Primitives/PointTests.cs
index 79fd0bd4d..43d662572 100644
--- a/tests/SixLabors.Core.Tests/Primitives/PointTests.cs
+++ b/tests/SixLabors.Core.Tests/Primitives/PointTests.cs
@@ -161,7 +161,7 @@ namespace SixLabors.Primitives.Tests
var p = new Point(13, 17);
Matrix3x2 matrix = Matrix3x2Extensions.CreateRotationDegrees(45, Point.Empty);
- var pout = Point.Rotate(p, matrix);
+ var pout = Point.Transform(p, matrix);
Assert.Equal(new Point(-3, 21), pout);
}
@@ -172,7 +172,7 @@ namespace SixLabors.Primitives.Tests
var p = new Point(13, 17);
Matrix3x2 matrix = Matrix3x2Extensions.CreateSkewDegrees(45, 45, Point.Empty);
- var pout = Point.Skew(p, matrix);
+ var pout = Point.Transform(p, matrix);
Assert.Equal(new Point(30, 30), pout);
}