Stroke.Transform-Methode (Matrix)
Wendet eine lineare Transformation auf ein Stroke-Objekt an, wobei die Stiftbreite nicht verändert wird.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
Syntax
'Declaration
Public Sub Transform ( _
inkTransform As Matrix _
)
'Usage
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
)
Parameter
- inkTransform
Typ: System.Drawing.Drawing2D.Matrix
Die System.Drawing.Drawing2D.Matrix-Transformation, die auf das Stroke-Objekt angewendet werden soll.
Hinweise
Die Transformation wird auf die Punkte, jedoch nicht auf die Stiftbreite angewendet. Um einen Wert festzulegen, der die Stiftbreite der Transformation beinhaltet, verwenden Sie die Transform(Matrix, Boolean)-Überladung dieser Methode.
Die lineare Transformation kann Skalierung, Drehung, Verschiebung und Kombinationen von Transformationen darstellen.
Beispiele
In diesem C#-Beispiel wird ein Stroke-Objekt namens theStroke um 180 Grad um den Mittelpunkt des umgebenden Rechtecks des Stroke-Objekts gedreht.
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);
In diesem Microsoft Visual Basic .NET-Beispiel wird ein Stroke-Objekt namens theStroke um 180 Grad um den Mittelpunkt des umgebenden Rechtecks des Stroke-Objekts gedreht.
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
Plattformen
Windows Vista
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0