public void Intersect() { PdfRectangle rectangle = new PdfRectangle(10, 10, 20, 20); PdfRectangle rectangle1 = new PdfRectangle(149.95376d, 687.13456d, 451.73539d, 1478.4997d); Assert.Null(rectangle.Intersect(rectangle1)); Assert.Equal(rectangle1, rectangle1.Intersect(rectangle1)); PdfRectangle rectangle2 = new PdfRectangle(50, 687.13456d, 350, 1478.4997d); Assert.Equal(new PdfRectangle(149.95376d, 687.13456d, 350, 1478.4997d), rectangle1.Intersect(rectangle2)); PdfRectangle rectangle3 = new PdfRectangle(200, 800, 350, 1200); Assert.Equal(rectangle3, rectangle1.Intersect(rectangle3)); }
private static double OverlappingArea(PdfRectangle rectangle1, PdfRectangle rectangle2) { var intersect = rectangle1.Intersect(rectangle2); if (intersect.HasValue) { return intersect.Value.Area; } return 0; }