public void Test1() { IGeometry geom = _wktReader.Read("POLYGON ((0 0, 0 10, 4 10, 4 8, 6 8, 6 10, 10 10, 10 0, 0 0))"); DelaunayTriangulationBuilder dtb = new DelaunayTriangulationBuilder(); dtb.SetSites(geom); IMultiLineString resultEdges = dtb.GetEdges(geom.Factory); Console.WriteLine(resultEdges.AsText()); IGeometryCollection resultTriangles = dtb.GetTriangles(geom.Factory); Console.WriteLine(resultTriangles.AsText()); }
private static void RunDelaunay(string sitesWKT, bool computeTriangles, string expectedWKT) { WKTReader reader = new WKTReader(); IGeometry sites = reader.Read(sitesWKT); DelaunayTriangulationBuilder builder = new DelaunayTriangulationBuilder(); builder.SetSites(sites); IGeometryFactory geomFact = GeometryFactory.Default; IGeometry result = computeTriangles ? builder.GetTriangles(geomFact) : builder.GetEdges(geomFact); Assert.IsNotNull(result); IGeometry expected = reader.Read(expectedWKT); result.Normalize(); expected.Normalize(); Assert.IsTrue(expected.EqualsExact(result, ComparisonTolerance)); }
public static IGeometry DelaunayEdges(IGeometry geom) { DelaunayTriangulationBuilder builder = new DelaunayTriangulationBuilder(); builder.SetSites(geom); builder.Tolerance = TriangulationTolerance; IMultiLineString edges = builder.GetEdges(geom.Factory); return edges; }
public static IGeometry delaunayEdges(IGeometry geom) { var builder = new DelaunayTriangulationBuilder(); builder.SetSites(geom); builder.Tolerance = TRIANGULATION_TOLERANCE; var edges = builder.GetEdges(geom.Factory); return edges; }
public void TestInvertedItalicNTS() { AffineTransformationBuilder atb = new AffineTransformationBuilder( new Coordinate(0, 0), new Coordinate(50, 0), new Coordinate(0, 100), new Coordinate(0, 0), new Coordinate(50, 0), new Coordinate(20, 100)); IGeometry geom = _wktReader.Read(NTS); //Apply italic effect geom = atb.GetTransformation().Transform(geom); Console.WriteLine(geom.AsText()); //Setup DelaunayTriangulationBuilder dtb = new DelaunayTriangulationBuilder(); dtb.SetSites(geom); IMultiLineString result = dtb.GetEdges(geom.Factory); Console.WriteLine(result.AsText()); }