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.
Matrix Mnoży wartość reprezentującą lokalną transformację geometryczną tej LinearGradientBrush wartości przez określony Matrix przez wstępne określenie określonego Matrixelementu .
Przeciążenia
| MultiplyTransform(Matrix, MatrixOrder) |
Matrix Mnoży wartość reprezentującą lokalną transformację geometryczną tego LinearGradientBrush elementu przez określony Matrix w określonej kolejności. |
| MultiplyTransform(Matrix) |
Matrix Mnoży wartość reprezentującą lokalną transformację geometryczną tej LinearGradientBrush wartości przez określony Matrix przez wstępne określenie określonego Matrixelementu . |
MultiplyTransform(Matrix, MatrixOrder)
Matrix Mnoży wartość reprezentującą lokalną transformację geometryczną tego LinearGradientBrush elementu przez 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 którym celu pomnożyć dwie macierze.
Przykłady
Poniższy przykład kodu jest przeznaczony do użycia z Windows Forms i wymaga PaintEventArgs eOnPaint obiektu 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 pod pierwszym wielokropkiem, używając przekształconego pędzla.
Zwróć uwagę, że dolna wielokropek jest rozciągnięta w kierunku poziomym 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)
Matrix Mnoży wartość reprezentującą lokalną transformację geometryczną tej LinearGradientBrush wartości przez określony Matrix przez wstępne określenie 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.