Condividi tramite


Metodo Stroke.Transform (Matrix)

Aggiornamento: novembre 2007

Applica una trasformazione lineare a un oggetto Stroke senza influenza sullo spessore della penna.

Spazio dei nomi:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Sintassi

'Dichiarazione
Public Sub Transform ( _
    inkTransform As Matrix _
)
'Utilizzo
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
)

Parametri

Note

La trasformazione viene applicata ai punti, ma non allo spessore della penna. Per impostare un valore che include lo spessore della penna nella trasformazione, utilizzare l'overload Transform(Matrix, Boolean) di questo metodo.

La trasformazione lineare può rappresentare ridimensionamento, rotazione, traslazione e combinazioni di trasformazioni.

Esempi

In questo esempio di C#, un oggetto Stroke, theStroke, viene ruotato di 180 gradi attorno al centro del riquadro dell'oggetto Stroke.

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 questo esempio di Microsoft Visual Basic .NET un oggetto Stroke, theStroke, viene ruotato di 180 gradi attorno al centro del riquadro dell'oggetto Stroke.

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

Piattaforme

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

Stroke Classe

Membri Stroke

Overload Transform

Spazio dei nomi Microsoft.Ink

Transform

Stroke.Move

Stroke.Rotate

Strokes.Transform