Graphics.ScaleTransform メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したスケーリング操作を、オブジェクトの変換マトリックスの前に置いて、この Graphics の変換マトリックスに適用します。
オーバーロード
ScaleTransform(Single, Single) |
指定したスケーリング操作を、オブジェクトの変換マトリックスの前に置いて、この Graphics の変換マトリックスに適用します。 |
ScaleTransform(Single, Single, MatrixOrder) |
指定したスケーリング操作を、指定した順序でこの Graphics の変換マトリックスに適用します。 |
ScaleTransform(Single, Single)
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- 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.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 度回転します。
スケーリング変換を Append メンバーに追加して、x 方向に 3、y 方向に 1 の係数で行列をスケーリングします。
青いペンを使用して、回転した拡大縮小された四角形を描画します。
結果は並列四辺形になります。
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) である対角行列を乗算して構成されます。 このメソッドは、order
パラメーターに従って、スケーリング マトリックスによって Graphics の変換行列の先頭または追加を行います。
適用対象
.NET