Graphics.ScaleTransform メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この Graphics の変換行列の前に指定したスケーリング操作を付加することによって、この変換行列にスケーリング操作を適用します。
オーバーロード
ScaleTransform(Single, Single) |
この Graphics の変換行列の前に指定したスケーリング操作を付加することによって、この変換行列にスケーリング操作を適用します。 |
ScaleTransform(Single, Single, MatrixOrder) |
この Graphics の変換行列に、指定したスケーリング操作を指定した順序で適用します。 |
ScaleTransform(Single, Single)
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
この Graphics の変換行列の前に指定したスケーリング操作を付加することによって、この変換行列にスケーリング操作を適用します。
public:
void ScaleTransform(float sx, float sy);
public void ScaleTransform (float sx, float sy);
member this.ScaleTransform : single * single -> unit
Public Sub ScaleTransform (sx As Single, sy As Single)
パラメーター
- sx
- Single
x 方向のスケール ファクター。
- sy
- Single
y 方向のスケール ファクター。
例
次のコード例は、Windows フォームで使用するように設計されており、イベント ハンドラーのPaintパラメーターである が必要PaintEventArgse
です。 コードは、次のアクションを実行します。
Windows フォームのワールド変換マトリックスを 30 度回転させます。
その行列を x 方向に 3、y 方向に 1 の係数でスケーリングし、スケーリング変換を事前に行います。
青いペンを使用して、拡大縮小された回転した四角形を描画します。
結果は引き続き四角形です。
public:
void ScaleTransformFloat( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to scale, prepending to world transform.
e->Graphics->ScaleTransform( 3.0F, 1.0F );
// Draw scaled, rotated rectangle to screen.
e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
}
private void ScaleTransformFloat(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to scale, prepending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F);
// Draw scaled, rotated rectangle to screen.
e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloat(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to scale, prepending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F)
' Draw scaled, rotated rectangle to screen.
e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub
注釈
スケーリング操作は、変換行列に対して、要素が (sx
、、 sy
1) である対角行列を乗算して構成されます。 このメソッドは、 の変換行列の前に Graphics スケーリング マトリックスを付加します。
適用対象
ScaleTransform(Single, Single, MatrixOrder)
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
この Graphics の変換行列に、指定したスケーリング操作を指定した順序で適用します。
public:
void ScaleTransform(float sx, float sy, System::Drawing::Drawing2D::MatrixOrder order);
public void ScaleTransform (float sx, float sy, System.Drawing.Drawing2D.MatrixOrder order);
member this.ScaleTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub ScaleTransform (sx As Single, sy As Single, order As MatrixOrder)
パラメーター
- sx
- Single
x 方向のスケール ファクター。
- sy
- Single
y 方向のスケール ファクター。
- order
- MatrixOrder
スケーリング操作が変換行列の前に付加されるか後ろに追加されるかを指定する MatrixOrder 列挙体のメンバー。
例
次のコード例は、Windows フォームで使用するように設計されており、イベント ハンドラーのPaintパラメーターである が必要PaintEventArgse
です。 コードは、次のアクションを実行します。
Windows フォームのワールド変換マトリックスを 30 度回転させます。
その行列を x 方向に 3、y 方向に 1 の係数でスケーリングします。その場合は、メンバーにスケーリング変換 Append を追加します。
青いペンを使用して、回転した拡大縮小された四角形を描画します。
結果は平行四辺形になります。
public:
void ScaleTransformFloatMatrixOrder( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to scale, appending to world transform.
e->Graphics->ScaleTransform( 3.0F, 1.0F, MatrixOrder::Append );
// Draw rotated, scaled rectangle to screen.
e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
}
private void ScaleTransformFloatMatrixOrder(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to scale, appending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append);
// Draw rotated, scaled rectangle to screen.
e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloatMatrixOrder(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to scale, appending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append)
' Draw rotated, scaled rectangle to screen.
e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub
注釈
スケーリング操作は、変換行列に対して、要素が (sx
、、 sy
1) である対角行列を乗算して構成されます。 このメソッドは、 パラメーターに従って、スケーリング マトリックスによって の Graphics 変換行列の前に order
追加または追加します。
適用対象
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示