LinearGradientBrush.MultiplyTransform Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Mnoży wartość Matrix reprezentującą lokalną transformację geometryczną tego LinearGradientBrush obiektu przez określony Matrix przez poprzedzanie określonego Matrixelementu .
Przeciążenia
MultiplyTransform(Matrix, MatrixOrder) |
Mnoży wartość Matrix reprezentującą lokalną transformację geometryczną przez LinearGradientBrush określony Matrix w określonej kolejności. |
MultiplyTransform(Matrix) |
Mnoży wartość Matrix reprezentującą lokalną transformację geometryczną tego LinearGradientBrush obiektu przez określony Matrix przez poprzedzanie określonego Matrixelementu . |
MultiplyTransform(Matrix, MatrixOrder)
- Źródło:
- LinearGradientBrush.cs
- Źródło:
- LinearGradientBrush.cs
- Źródło:
- LinearGradientBrush.cs
Mnoży wartość Matrix reprezentującą lokalną transformację geometryczną przez LinearGradientBrush określony Matrix w określonej kolejności.
public:
void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Drawing2D::MatrixOrder order);
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Drawing2D.MatrixOrder order);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub MultiplyTransform (matrix As Matrix, order As MatrixOrder)
Parametry
- order
- MatrixOrder
Element MatrixOrder określający, w jakiej kolejności należy pomnożyć dwie macierze.
Przykłady
Poniższy przykład kodu jest przeznaczony do użytku z Windows Forms i wymaga PaintEventArgse
obiektu OnPaint zdarzenia . Kod wykonuje następujące akcje:
Tworzy nowy adres LinearGradientBrush.
Rysuje wielokropek na ekranie przy użyciu tego pędzla.
Wywołuje metodę MultiplyTransform , aby przekształcić metodę LinearGradientBrush.
Rysuje wielokropek na ekran bezpośrednio poniżej pierwszego wielokropka, używając przekształconego pędzla.
Zwróć uwagę, że dolna elipsa jest rozciągnięta w poziomie i że gradient jest rozciągnięty w celu dopasowania do nowego kształtu.
private:
void MultiplyTransformExample( PaintEventArgs^ e )
{
// Create a LinearGradientBrush.
Rectangle myRect = Rectangle(20,20,200,100);
LinearGradientBrush^ myLGBrush = gcnew LinearGradientBrush( myRect,Color::Blue,Color::Red,0.0f,true );
// Draw an ellipse to the screen using the LinearGradientBrush.
e->Graphics->FillEllipse( myLGBrush, myRect );
// Transform the LinearGradientBrush.
array<Point>^ transformArray = {Point(20,150),Point(400,150),Point(20,200)};
Matrix^ myMatrix = gcnew Matrix( myRect,transformArray );
myLGBrush->MultiplyTransform( myMatrix, MatrixOrder::Prepend );
// Draw a second ellipse to the screen using
// the transformed brush.
e->Graphics->FillEllipse( myLGBrush, 20, 150, 380, 50 );
}
private void MultiplyTransformExample(PaintEventArgs e)
{
// Create a LinearGradientBrush.
Rectangle myRect = new Rectangle(20, 20, 200, 100);
LinearGradientBrush myLGBrush = new LinearGradientBrush(
myRect, Color.Blue, Color.Red, 0.0f, true);
// Draw an ellipse to the screen using the LinearGradientBrush.
e.Graphics.FillEllipse(myLGBrush, myRect);
// Transform the LinearGradientBrush.
Point[] transformArray = { new Point(20, 150),
new Point(400,150), new Point(20, 200) };
Matrix myMatrix = new Matrix(myRect, transformArray);
myLGBrush.MultiplyTransform(
myMatrix,
MatrixOrder.Prepend);
// Draw a second ellipse to the screen using
// the transformed brush.
e.Graphics.FillEllipse(myLGBrush, 20, 150, 380, 50);
}
Public Sub MultiplyTransformExample(ByVal e As PaintEventArgs)
' Create a LinearGradientBrush.
Dim myRect As New Rectangle(20, 20, 200, 100)
Dim myLGBrush As New LinearGradientBrush(myRect, Color.Blue, _
Color.Red, 0.0F, True)
' Draw an ellipse to the screen using the LinearGradientBrush.
e.Graphics.FillEllipse(myLGBrush, myRect)
' Transform the LinearGradientBrush.
Dim transformArray As Point() = {New Point(20, 150), _
New Point(400, 150), New Point(20, 200)}
Dim myMatrix As New Matrix(myRect, transformArray)
myLGBrush.MultiplyTransform(myMatrix, MatrixOrder.Prepend)
' Draw a second ellipse to the screen using the transformed brush.
e.Graphics.FillEllipse(myLGBrush, 20, 150, 380, 50)
End Sub
Dotyczy
MultiplyTransform(Matrix)
- Źródło:
- LinearGradientBrush.cs
- Źródło:
- LinearGradientBrush.cs
- Źródło:
- LinearGradientBrush.cs
Mnoży wartość Matrix reprezentującą lokalną transformację geometryczną tego LinearGradientBrush obiektu przez określony Matrix przez poprzedzanie określonego Matrixelementu .
public:
void MultiplyTransform(System::Drawing::Drawing2D::Matrix ^ matrix);
public void MultiplyTransform (System.Drawing.Drawing2D.Matrix matrix);
member this.MultiplyTransform : System.Drawing.Drawing2D.Matrix -> unit
Public Sub MultiplyTransform (matrix As Matrix)
Parametry
Przykłady
Aby zapoznać się z przykładem, zobacz MultiplyTransform.
Dotyczy
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla