RectangleF.Union(RectangleF, RectangleF) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает третий прямоугольник минимального размера, позволяющего ему вместить оба прямоугольника, образующих объединение.
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
Параметры
Прямоугольник, предназначенный для объединения.
Прямоугольник, предназначенный для объединения.
Возвращаемое значение
Третья структура RectangleF, содержащая оба прямоугольника, образующих объединение.
Примеры
Этот пример предназначен для использования с Windows Forms и требует PaintEventArgs объекта события eOnPaint. Код создает два RectangleF элемента и рисует их на экране черным и красным цветом. Обратите внимание, что для рисования их необходимо преобразовать в Rectangle . Затем код создает третий RectangleF объект с помощью Union метода , преобразует его Rectangleв и рисует на экране синим цветом. Обратите внимание, что третий (синий) прямоугольник является наименьшим из возможных прямоугольников, который может содержать оба других прямоугольника:
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
Комментарии
Если один из двух прямоугольников пуст, то есть все его значения равны нулю, Union метод возвращает прямоугольник с начальной точкой (0, 0), а также высотой и шириной непустого прямоугольника. Например, если у вас есть два прямоугольника A = (0, 0; 0, 0) и B = (1, 1; 2, 2), то объединение A и B равно (0, 0; 2, 2).