Graphics.TranslateTransform メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した平行移動をこの Graphicsの変換行列に先行して、座標系の原点を変更します。
オーバーロード
TranslateTransform(Single, Single) |
指定した平行移動をこの Graphicsの変換行列に先行して、座標系の原点を変更します。 |
TranslateTransform(Single, Single, MatrixOrder) |
この Graphics の変換行列に指定した平行移動を指定した順序で適用して、座標系の原点を変更します。 |
TranslateTransform(Single, Single)
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
指定した平行移動をこの Graphicsの変換行列に先行して、座標系の原点を変更します。
public:
void TranslateTransform(float dx, float dy);
public void TranslateTransform (float dx, float dy);
member this.TranslateTransform : single * single -> unit
Public Sub TranslateTransform (dx As Single, dy As Single)
パラメーター
- dx
- Single
平行移動の x 座標。
- dy
- Single
平行移動の y 座標。
例
次のコード例は Windows フォームで使用できるように設計されており、Paint イベント ハンドラーのパラメーターである PaintEventArgse
が必要です。 このコードは、次のアクションを実行します。
Windows フォームのワールド変換マトリックスを 30.0F 度回転します。
変換行列の前に TranslateTransformを呼び出して、グラフィックス オブジェクトの原点を移動します。
青いペンを使用して、回転した翻訳された楕円を描画します。
public:
void TranslateTransformAngle( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to translate, prepending to world transform.
e->Graphics->TranslateTransform( 100.0F, 0.0F );
// Draw translated, rotated ellipse to screen.
e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
}
private void TranslateTransformAngle(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to translate, prepending to world transform.
e.Graphics.TranslateTransform(100.0F, 0.0F);
// Draw translated, rotated ellipse to screen.
e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngle(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to translate, prepending to world transform.
e.Graphics.TranslateTransform(100.0F, 0.0F)
' Draw translated, rotated ellipse to screen.
e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub
次の図は、前のコード例の実行の出力を示しています。
注釈
原点は通常、描画サーフェイスの左上隅です。 変換演算は、変換行列に、変換部分が dx
および dy
パラメーターである行列を乗算して構成されます。 このメソッドは、変換行列を変換行列の前に置いて翻訳を適用します。
こちらもご覧ください
- 座標系と変換
- マネージド GDI+ での変換の使用の
適用対象
TranslateTransform(Single, Single, MatrixOrder)
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
- ソース:
- Graphics.cs
この Graphics の変換行列に指定した平行移動を指定した順序で適用して、座標系の原点を変更します。
public:
void TranslateTransform(float dx, float dy, System::Drawing::Drawing2D::MatrixOrder order);
public void TranslateTransform (float dx, float dy, System.Drawing.Drawing2D.MatrixOrder order);
member this.TranslateTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub TranslateTransform (dx As Single, dy As Single, order As MatrixOrder)
パラメーター
- dx
- Single
平行移動の x 座標。
- dy
- Single
平行移動の y 座標。
- order
- MatrixOrder
変換の前に変換を追加するか、変換マトリックスに追加するかを指定する MatrixOrder 列挙体のメンバー。
例
次のコード例は Windows フォームで使用できるように設計されており、Paint イベント ハンドラーのパラメーターである PaintEventArgse
が必要です。 このコードは、次のアクションを実行します。
Windows フォームのワールド変換マトリックスを 30.0F 度回転します。
TranslateTransformを呼び出し、ワールド変換行列に平行移動を追加して、グラフィックス オブジェクトの原点を移動します。
回転した翻訳された楕円を青いペンで描画します。
public:
void TranslateTransformAngleMatrixOrder( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to translate, appending to world transform.
e->Graphics->TranslateTransform( 100.0F, 0.0F, MatrixOrder::Append );
// Draw rotated, translated ellipse to screen.
e->Graphics->DrawEllipse( gcnew Pen( Color::Blue,3.0f ), 0, 0, 200, 80 );
}
private void TranslateTransformAngleMatrixOrder(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to translate, appending to world transform.
e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append);
// Draw rotated, translated ellipse to screen.
e.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);
}
Private Sub TranslateTransformAngleMatrixOrder(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to translate, appending to world transform.
e.Graphics.TranslateTransform(100.0F, 0.0F, MatrixOrder.Append)
' Draw rotated, translated ellipse to screen.
e.Graphics.DrawEllipse(New Pen(Color.Blue, 3), 0, 0, 200, 80)
End Sub
注釈
変換演算は、変換行列に、変換部分が dx
および dy
パラメーターである行列を乗算して構成されます。 このメソッドは、order
パラメーターに従って、変換行列によって Graphics の変換行列の前に追加します。
こちらもご覧ください
- 座標系と変換
- マネージド GDI+ での変換の使用の
適用対象
.NET