Поделиться через


Matrix.TransformPoints Метод

Определение

Применяет геометрическое преобразование, которое Matrix представляет массив точек.

Перегрузки

TransformPoints(ReadOnlySpan<PointF>)
TransformPoints(ReadOnlySpan<Point>)
TransformPoints(PointF[])

Применяет геометрическое преобразование, представленное этим Matrix, к указанному массиву точек.

TransformPoints(Point[])

Применяет геометрическое преобразование, представленное этим Matrix, к указанному массиву точек.

TransformPoints(ReadOnlySpan<PointF>)

Исходный код:
Matrix.cs
public:
 void TransformPoints(ReadOnlySpan<System::Drawing::PointF> pts);
public void TransformPoints (scoped ReadOnlySpan<System.Drawing.PointF> pts);
member this.TransformPoints : ReadOnlySpan<System.Drawing.PointF> -> unit
Public Sub TransformPoints (pts As ReadOnlySpan(Of PointF))

Параметры

Применяется к

TransformPoints(ReadOnlySpan<Point>)

Исходный код:
Matrix.cs
public:
 void TransformPoints(ReadOnlySpan<System::Drawing::Point> pts);
public void TransformPoints (scoped ReadOnlySpan<System.Drawing.Point> pts);
member this.TransformPoints : ReadOnlySpan<System.Drawing.Point> -> unit
Public Sub TransformPoints (pts As ReadOnlySpan(Of Point))

Параметры

Применяется к

TransformPoints(PointF[])

Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs

Применяет геометрическое преобразование, представленное этим Matrix, к указанному массиву точек.

public:
 void TransformPoints(cli::array <System::Drawing::PointF> ^ pts);
public:
 void TransformPoints(... cli::array <System::Drawing::PointF> ^ pts);
public void TransformPoints (System.Drawing.PointF[] pts);
public void TransformPoints (params System.Drawing.PointF[] pts);
member this.TransformPoints : System.Drawing.PointF[] -> unit
Public Sub TransformPoints (pts As PointF())
Public Sub TransformPoints (ParamArray pts As PointF())

Параметры

pts
PointF[]

Массив PointF структур, представляющих точки для преобразования.

Примеры

Пример см. в разделе TransformPoints(Point[]).

Применяется к

TransformPoints(Point[])

Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs
Исходный код:
Matrix.cs

Применяет геометрическое преобразование, представленное этим Matrix, к указанному массиву точек.

public:
 void TransformPoints(cli::array <System::Drawing::Point> ^ pts);
public:
 void TransformPoints(... cli::array <System::Drawing::Point> ^ pts);
public void TransformPoints (System.Drawing.Point[] pts);
public void TransformPoints (params System.Drawing.Point[] pts);
member this.TransformPoints : System.Drawing.Point[] -> unit
Public Sub TransformPoints (pts As Point())
Public Sub TransformPoints (ParamArray pts As Point())

Параметры

pts
Point[]

Массив Point структур, представляющих точки для преобразования.

Примеры

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgseобъекта события Paint. Код выполняет следующие действия:

  • Создает массив точек, которые образуют прямоугольник.

  • Рисует этот массив точек (на экран перед применением преобразования масштабирования (синий прямоугольник).

  • Создает матрицу и масштабирует ее на 3 в оси x и 2 в оси y.

  • Применяет это преобразование матрицы к массиву точек.

  • Рисует преобразованный массив на экран (красный прямоугольник).

Обратите внимание, что красный прямоугольник был масштабирован на коэффициент 3 в оси x и на 2 в оси Y, включая верхний левый угол прямоугольника (начальная точка прямоугольника).

public:
   void TransformPointsExample( PaintEventArgs^ e )
   {
      Pen^ myPen = gcnew Pen( Color::Blue,1.0f );
      Pen^ myPen2 = gcnew Pen( Color::Red,1.0f );

      // Create an array of points.
      array<Point>^ myArray = {Point(20,20),Point(120,20),Point(120,120),Point(20,120),Point(20,20)};

      // Draw the Points to the screen before applying the
      // transform.
      e->Graphics->DrawLines( myPen, myArray );

      // Create a matrix and scale it.
      Matrix^ myMatrix = gcnew Matrix;
      myMatrix->Scale( 3, 2, MatrixOrder::Append );
      myMatrix->TransformPoints( myArray );

      // Draw the Points to the screen again after applying the
      // transform.
      e->Graphics->DrawLines( myPen2, myArray );
   }
public void TransformPointsExample(PaintEventArgs e)
{
    Pen myPen = new Pen(Color.Blue, 1);
    Pen myPen2 = new Pen(Color.Red, 1);
             
    // Create an array of points.
    Point[] myArray =
             {
                 new Point(20, 20),
                 new Point(120, 20),
                 new Point(120, 120),
                 new Point(20, 120),
                 new Point(20,20)
             };
             
    // Draw the Points to the screen before applying the
    // transform.
    e.Graphics.DrawLines(myPen, myArray);
             
    // Create a matrix and scale it.
    Matrix myMatrix = new Matrix();
    myMatrix.Scale(3, 2, MatrixOrder.Append);
    myMatrix.TransformPoints(myArray);
             
    // Draw the Points to the screen again after applying the
    // transform.
    e.Graphics.DrawLines(myPen2, myArray);
}
Public Sub TransformPointsExample(ByVal e As PaintEventArgs)
    Dim myPen As New Pen(Color.Blue, 1)
    Dim myPen2 As New Pen(Color.Red, 1)

    ' Create an array of points.
    Dim myArray As Point() = {New Point(20, 20), New Point(120, 20), _
    New Point(120, 120), New Point(20, 120), New Point(20, 20)}

    ' Draw the Points to the screen before applying the
    ' transform.
    e.Graphics.DrawLines(myPen, myArray)

    ' Create a matrix and scale it.
    Dim myMatrix As New Matrix
    myMatrix.Scale(3, 2, MatrixOrder.Append)
    myMatrix.TransformPoints(myArray)

    ' Draw the Points to the screen again after applying the
    ' transform.
    e.Graphics.DrawLines(myPen2, myArray)
End Sub

Применяется к