private void CheckIntersection(string[] inputWKT, string expectedWKT)
        {
            var input          = ReadList(inputWKT);
            var expected       = Read(expectedWKT);
            var pts            = expected.Coordinates;
            var intPtsExpected = new CoordinateList(pts);

            var segStrings   = ToSegmentStrings(input);
            var intPtsActual = FastNodingValidator.ComputeIntersections(segStrings);

            bool isSameNumberOfIntersections = intPtsExpected.Count == intPtsActual.Count;

            Assert.True(isSameNumberOfIntersections);

            CheckIntersections(intPtsActual, intPtsExpected);
        }
        public static Geometry FindNodes(Geometry geom)
        {
            var intPts = FastNodingValidator.ComputeIntersections(SegmentStringUtil.ExtractNodedSegmentStrings(geom));

            return(FunctionsUtil.GetFactoryOrDefault((Geometry)null).CreateMultiPointFromCoords(CoordinateArrays.ToCoordinateArray(intPts)));
        }
Ejemplo n.º 3
0
        public static IGeometry FindNodePoints(IGeometry geom)
        {
            IList <Coordinate> intPts = FastNodingValidator.ComputeIntersections(SegmentStringUtil.ExtractNodedSegmentStrings(geom));

            return(FunctionsUtil.GetFactoryOrDefault(null).CreateMultiPoint(CoordinateArrays.ToCoordinateArray(intPts)));
        }