Utilizzo della trasformazione di tipo World
La trasformazione globale è una proprietà della Graphics classe . I numeri che specificano la trasformazione globale vengono archiviati in un Matrix oggetto , che rappresenta una matrice 3×3. Le Matrix classi e Graphics hanno diversi metodi per impostare i numeri nella matrice di trasformazione globale.
Tipi diversi di trasformazioni
Nell'esempio seguente il codice crea prima un rettangolo 50×50 e lo individua all'origine (0, 0). L'origine si trova nell'angolo superiore sinistro dell'area client.
Rectangle rect = new Rectangle(0, 0, 50, 50);
Pen pen = new Pen(Color.FromArgb(128, 200, 0, 200), 2);
e.Graphics.DrawRectangle(pen, rect);
Dim rect As New Rectangle(0, 0, 50, 50)
Dim pen As New Pen(Color.FromArgb(128, 200, 0, 200), 2)
e.Graphics.DrawRectangle(pen, rect)
Il codice seguente applica una trasformazione di ridimensionamento che espande il rettangolo di un fattore pari a 1,75 nella direzione x e riduce il rettangolo di un fattore pari a 0,5 nella direzione y:
e.Graphics.ScaleTransform(1.75f, 0.5f);
e.Graphics.DrawRectangle(pen, rect);
e.Graphics.ScaleTransform(1.75F, 0.5F)
e.Graphics.DrawRectangle(pen, rect)
Il risultato è un rettangolo più lungo nella direzione x e più breve nella direzione y rispetto all'originale.
Per ruotare il rettangolo anziché ridimensionarlo, usare il codice seguente:
e.Graphics.ResetTransform();
e.Graphics.RotateTransform(28); // 28 degrees
e.Graphics.DrawRectangle(pen, rect);
e.Graphics.ResetTransform()
e.Graphics.RotateTransform(28) ' 28 degrees
e.Graphics.DrawRectangle(pen, rect)
Per convertire il rettangolo, usare il codice seguente:
e.Graphics.ResetTransform();
e.Graphics.TranslateTransform(150, 150);
e.Graphics.DrawRectangle(pen, rect);
e.Graphics.ResetTransform()
e.Graphics.TranslateTransform(150, 150)
e.Graphics.DrawRectangle(pen, rect)
Vedi anche
.NET Desktop feedback
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per