次の方法で共有


Stroke.Transform メソッド (Matrix)

ペンの幅に影響を与えずに Stroke オブジェクトに線形変換を適用します。

名前空間 :  Microsoft.Ink
アセンブリ :  Microsoft.Ink (Microsoft.Ink.dll 内)

構文

'宣言
Public Sub Transform ( _
    inkTransform As Matrix _
)
'使用
Dim instance As Stroke
Dim inkTransform As Matrix

instance.Transform(inkTransform)
public void Transform(
    Matrix inkTransform
)
public:
void Transform(
    Matrix^ inkTransform
)
public void Transform(
    Matrix inkTransform
)
public function Transform(
    inkTransform : Matrix
)

パラメータ

解説

変換がポイントに適用されますが、ペンの幅には適用されません。変換にペンの幅を含める値を設定するには、このメソッドの Transform(Matrix, Boolean) オーバーロードを使用します。

線形変換は、スケーリング、回転、変換、および変換の組み合わせを表現できます。

この C# の例では、Stroke オブジェクトの境界ボックスの中心を基準として、Stroke オブジェクト theStroke を 180 度回転します。

using System.Drawing.Drawing2D;
//...
Matrix inkTransform = new Matrix();
Rectangle inkBounds = theStroke.GetBoundingBox();
PointF center = new PointF(0.5f * (inkBounds.Left + inkBounds.Right),
                           0.5f * (inkBounds.Top + inkBounds.Bottom));
// Translate to center of bounding box
inkTransform.Translate(center.X, center.Y);
// Rotate by 180 degrees
inkTransform.Rotate(180f);
// Translate back
inkTransform.Translate(-center.X, -center.Y);
// Transform stroke
theStroke.Transform(inkTransform);

この Microsoft Visual Basic .NET の例では、Stroke オブジェクトの境界ボックスの中心を基準として、Stroke オブジェクト theStroke を 180 度回転します。

Imports System.Drawing.Drawing2D
'...
Dim inkTransform As New Matrix()
Dim inkBounds As Rectangle = theStroke.GetBoundingBox()
Dim center As New PointF(0.5F * (inkBounds.Left + inkBounds.Right), _
                         0.5F * (inkBounds.Top + inkBounds.Bottom))
'Translate to center of bounding box
inkTransform.Translate(center.X, center.Y)
'Rotate by 180 degrees
inkTransform.Rotate(180.0F)
'Translate back
inkTransform.Translate(-center.X, -center.Y)
'Transform stroke
theStroke.Transform(inkTransform)
n

プラットフォーム

Windows Vista

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 3.0

参照

参照

Stroke クラス

Stroke メンバ

Transform オーバーロード

Microsoft.Ink 名前空間

Transform

Stroke.Move

Stroke.Rotate

Strokes.Transform