This documentation is archived and is not being maintained.

Graphics.TransformPoints Method (CoordinateSpace, CoordinateSpace, PointF[])

Transforms an array of points from one coordinate space to another using the current world and page transformations of this Graphics.

Namespace:  System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public void TransformPoints(
	CoordinateSpace destSpace,
	CoordinateSpace srcSpace,
	PointF[] pts


Type: System.Drawing.Drawing2D.CoordinateSpace
Member of the CoordinateSpace enumeration that specifies the destination coordinate space.
Type: System.Drawing.Drawing2D.CoordinateSpace
Member of the CoordinateSpace enumeration that specifies the source coordinate space.
Type: System.Drawing.PointF[]
Array of PointF structures that represent the points to transform.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates two points and draws a blue line between them.

  • Sets the world transform to translate by amounts 40 in the x direction and 30 in the y direction.

  • Transforms the points from world coordinates (World) to page coordinates (Page).

  • Resets the world transformation to the identity and draws a red line between the transformed points.

The result is a blue line and a translated red line below it.

private void TransformPointsPointF(PaintEventArgs e)

    // Create array of two points.
    PointF[] points = { new PointF(0.0F, 0.0F), new PointF(100.0F, 50.0F) };

    // Draw line connecting two untransformed points.
    e.Graphics.DrawLine(new Pen(Color.Blue, 3), points[0], points[1]);

    // Set world transformation of Graphics object to translate.
    e.Graphics.TranslateTransform(40.0F, 30.0F);

    // Transform points in array from world to page coordinates.
    e.Graphics.TransformPoints(CoordinateSpace.Page, CoordinateSpace.World, points);

    // Reset world transformation.

    // Draw line that connects transformed points.
    e.Graphics.DrawLine(new Pen(Color.Red, 3), points[0], points[1]);

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.