public static void crosses_mbr() { var a = new Mbr(1, 2, 3, 4); // 2x2 var b = new Mbr(2, 3, 2, 5); // 0x2 var c = new Mbr(2, 3, 4, 3); // 2x0 var d = new Mbr(2, 3, 2, 3); // 0x0 Assert.False(a.Crosses(a)); Assert.True(a.Crosses(b)); Assert.True(a.Crosses(c)); Assert.True(b.Crosses(a)); Assert.False(b.Crosses(b)); Assert.False(b.Crosses(c)); Assert.True(c.Crosses(a)); Assert.False(c.Crosses(b)); Assert.False(c.Crosses(c)); Assert.False(d.Crosses(a)); Assert.False(d.Crosses(b)); Assert.False(d.Crosses(c)); Assert.False(d.Crosses(d)); }