protected override void CheckEquality(IGeometry gIn, IGeometry gParsed, WKTWriter writer) { var res = gIn.EqualsExact(gParsed); if (res) return; if (Compressed) { var discreteHausdorffDistance = Algorithm.Distance.DiscreteHausdorffDistance.Distance(gIn, gParsed); if (discreteHausdorffDistance > 0.05) { Console.WriteLine(); Console.WriteLine(gIn.AsText()); Console.WriteLine(gParsed.AsText()); Console.WriteLine("DiscreteHausdorffDistance=" + discreteHausdorffDistance); } Assert.IsTrue(discreteHausdorffDistance < 0.001); } else Assert.IsTrue(false); }
protected virtual void CheckEquality(IGeometry gIn, IGeometry gParsed, WKTWriter writer) { Assert.IsTrue(gIn.EqualsExact(gParsed), "Instances are not equal\n{0}\n\n{1}", gIn, gParsed); }
protected override void CheckEquality(IGeometry gIn, IGeometry gParsed, WKTWriter writer) { if (gIn.OgcGeometryType == OgcGeometryType.GeometryCollection) Assert.IsTrue(gIn.EqualsNormalized(gParsed)); else Assert.IsTrue(gIn.EqualsTopologically(gParsed)); }
public void PerformTest(IGeometry gIn) { WKTWriter writer = new WKTWriter(2) {EmitSRID = true, MaxCoordinatesPerLine = 3,}; byte[] b = null; Assert.DoesNotThrow(() => b = Write(gIn), "Threw exception during write:\n{0}", writer.WriteFormatted(gIn)); IGeometry gParsed = null; Assert.DoesNotThrow(() => gParsed = Read(b), "Threw exception during read:\n{0}", writer.WriteFormatted(gIn)); Assert.IsNotNull(gParsed, "Could not be parsed\n{0}", gIn); CheckEquality(gIn, gParsed, writer); }
private void PrintNode(IntervalRTreeNode <T> node, int level) { Console.WriteLine(WKTWriter.ToLineString(new Coordinate(node.Min, level), new Coordinate(node.Max, level))); }