Share via


RectangleF.Union(RectangleF, RectangleF) Metode

Definisi

Membuat persegi panjang ketiga sekecil mungkin yang dapat berisi kedua persegi panjang yang membentuk serikat.

public:
 static System::Drawing::RectangleF Union(System::Drawing::RectangleF a, System::Drawing::RectangleF b);
public static System.Drawing.RectangleF Union (System.Drawing.RectangleF a, System.Drawing.RectangleF b);
static member Union : System.Drawing.RectangleF * System.Drawing.RectangleF -> System.Drawing.RectangleF
Public Shared Function Union (a As RectangleF, b As RectangleF) As RectangleF

Parameter

a
RectangleF

Persegi panjang untuk serikat.

b
RectangleF

Persegi panjang untuk serikat.

Mengembalikan

Struktur ketiga RectangleF yang berisi kedua persegi panjang yang membentuk serikat.

Contoh

Contoh ini dirancang untuk digunakan dengan Formulir Windows, dan memerlukan PaintEventArgs e, OnPaint objek peristiwa. Kode ini membuat dua RectangleF d dan menggambarnya ke layar dalam warna hitam dan merah. Perhatikan bahwa mereka harus dikonversi menjadi Rectangle s untuk tujuan menggambar. Kemudian kode membuat yang ketiga RectangleF menggunakan Union metode , mengonversinya menjadi Rectangle, dan menggambarnya ke layar dengan warna biru. Perhatikan persegi panjang ketiga (biru) adalah persegi panjang sekecil mungkin yang dapat berisi kedua persegi panjang lainnya:

public:
   void RectangleFUnionExample( PaintEventArgs^ e )
   {
      // Create two rectangles and draw them to the screen.
      RectangleF firstRectangleF = RectangleF(0,0,75,50);
      RectangleF secondRectangleF = RectangleF(100,100,20,20);

      // Convert the RectangleF structures to Rectangle structures and draw them to the
      // screen.
      Rectangle firstRect = Rectangle::Truncate( firstRectangleF );
      Rectangle secondRect = Rectangle::Truncate( secondRectangleF );
      e->Graphics->DrawRectangle( Pens::Black, firstRect );
      e->Graphics->DrawRectangle( Pens::Red, secondRect );

      // Get the union rectangle.
      RectangleF unionRectangleF = RectangleF::Union( firstRectangleF, secondRectangleF );

      // Draw the unionRectangleF to the screen.
      Rectangle unionRect = Rectangle::Truncate( unionRectangleF );
      e->Graphics->DrawRectangle( Pens::Blue, unionRect );
   }
public void RectangleFUnionExample(PaintEventArgs e)
{
             
    // Create two rectangles and draw them to the screen.
    RectangleF firstRectangleF = new RectangleF(0, 0, 75, 50);
    RectangleF secondRectangleF = new RectangleF(100, 100, 20, 20);
             
    // Convert the RectangleF structures to Rectangle structures and draw them to the
             
    // screen.
    Rectangle firstRect = Rectangle.Truncate(firstRectangleF);
    Rectangle secondRect = Rectangle.Truncate(secondRectangleF);
    e.Graphics.DrawRectangle(Pens.Black, firstRect);
    e.Graphics.DrawRectangle(Pens.Red, secondRect);
             
    // Get the union rectangle.
    RectangleF unionRectangleF = RectangleF.Union(firstRectangleF,
        secondRectangleF);
             
    // Draw the unionRectangleF to the screen.
    Rectangle unionRect = Rectangle.Truncate(unionRectangleF);
    e.Graphics.DrawRectangle(Pens.Blue, unionRect);
}
Public Sub RectangleFUnionExample(ByVal e As PaintEventArgs)

    ' Create two rectangles and draw them to the screen.
    Dim firstRectangleF As New RectangleF(0, 0, 75, 50)
    Dim secondRectangleF As New RectangleF(100, 100, 20, 20)

    ' Convert the RectangleF structures to Rectangle structures and

    ' draw them to the screen.
    Dim firstRect As Rectangle = Rectangle.Truncate(firstRectangleF)
    Dim secondRect As Rectangle = Rectangle.Truncate(secondRectangleF)
    e.Graphics.DrawRectangle(Pens.Black, firstRect)
    e.Graphics.DrawRectangle(Pens.Red, secondRect)

    ' Get the union rectangle.
    Dim unionRectangleF As RectangleF = _
    RectangleF.Union(firstRectangleF, secondRectangleF)

    ' Draw the unionRectangleF to the screen.
    Dim unionRect As Rectangle = Rectangle.Truncate(unionRectangleF)
    e.Graphics.DrawRectangle(Pens.Blue, unionRect)
End Sub

Keterangan

Ketika salah satu dari dua persegi panjang kosong, yang berarti semua nilainya adalah nol, Union metode mengembalikan persegi panjang dengan titik awal (0, 0), dan tinggi dan lebar persegi panjang yang tidak kosong. Misalnya, jika Anda memiliki dua persegi panjang A = (0, 0; 0, 0) dan B = (1, 1; 2, 2), maka penyatuan A dan B adalah (0, 0; 2, 2).

Berlaku untuk