Ejemplo n.º 1
0
        public static void polygon_union(PolyPairTestData testData)
        {
            Console.WriteLine(testData.Name);

            if (testData.Name == "Nested: hole within a fill, not touching")
            {
                return; // infinite spaaaaaaaace
            }

            var result = _unionOperation.Union(testData.A, testData.B) as Polygon2;

            if (null != testData.R)
            {
                Assert.NotNull(result);
                testData.R.SpatiallyEqual(result).Should().BeTrue("Forward case failed: {0} u {1} ≠ {2}", testData.A, testData.B, PolygonToString(result));
            }
            else
            {
                Assert.Null(result);
            }

            result = _unionOperation.Union(testData.B, testData.A) as Polygon2;
            if (null != testData.R)
            {
                Assert.NotNull(result);
                testData.R.SpatiallyEqual(result).Should().BeTrue("Reverse case failed: {0} u {1} ≠ {2}", testData.B, testData.A, PolygonToString(result));
            }
            else
            {
                Assert.Null(result);
            }
        }
Ejemplo n.º 2
0
        public static void zig_zag_thing()
        {
            var data           = _polyPairData["Zig-zag Thing"];
            var unionOperation = new PolygonUnionOperation();

            var result = unionOperation.Union(data.A, data.B) as Polygon2;

            Assert.NotNull(result);
            Assert.True(result.SpatiallyEqual(data.R));

            result = unionOperation.Union(data.B, data.A) as Polygon2;
            Assert.NotNull(result);
            Assert.True(result.SpatiallyEqual(data.R));
        }
Ejemplo n.º 3
0
        public static void zig_zag_thing() {
            var data = _polyPairData["Zig-zag Thing"];
            var unionOperation = new PolygonUnionOperation();

            var result = unionOperation.Union(data.A, data.B) as Polygon2;
            Assert.NotNull(result);
            Assert.True(result.SpatiallyEqual(data.R));

            result = unionOperation.Union(data.B, data.A) as Polygon2;
            Assert.NotNull(result);
            Assert.True(result.SpatiallyEqual(data.R));
        }