Region.Transform(Matrix) 方法

定義

由指定的 Matrix轉換這個 Region

C#
public void Transform (System.Drawing.Drawing2D.Matrix matrix);

參數

matrix
Matrix

要轉換這個 RegionMatrix

例外狀況

matrix null

範例

下列程式代碼範例是專為搭配 Windows Forms 使用而設計,而且需要 PaintEventArgse,這是 Paint 事件處理程式的參數。 程式代碼會執行下列動作:

  • 建立矩形,並以藍色將它繪製到螢幕。

  • 從矩形建立區域。

  • 建立轉換矩陣,並將其設定為45度。

  • 將轉換套用至區域。

  • 以紅色填滿轉換的區域,並以紅色將轉換的區域繪製到畫面。

請注意,紅色矩形會從原始矩形旋轉 45 度,以藍色顯示。

C#
public void TransformExample(PaintEventArgs e)
{
             
    // Create the first rectangle and draw it to the screen in blue.
    Rectangle regionRect = new Rectangle(100, 50, 100, 100);
    e.Graphics.DrawRectangle(Pens.Blue, regionRect);
             
    // Create a region using the first rectangle.
    Region myRegion = new Region(regionRect);
             
    // Create a transform matrix and set it to have a 45 degree
             
    // rotation.
    Matrix transformMatrix = new Matrix();
    transformMatrix.RotateAt(45, new Point(100, 50));
             
    // Apply the transform to the region.
    myRegion.Transform(transformMatrix);
             
    // Fill the transformed region with red and draw it to the screen
             
    // in red.
    SolidBrush myBrush = new SolidBrush(Color.Red);
    e.Graphics.FillRegion(myBrush, myRegion);
}

適用於

產品 版本
.NET 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9