public virtual void testMultiPointAndMultiPoint2() { com.esri.core.geometry.MultiPoint basePl = new com.esri.core.geometry.MultiPoint( ); basePl.add(new com.esri.core.geometry.Point(-116, 20)); basePl.add(new com.esri.core.geometry.Point(-118, 21)); com.esri.core.geometry.MultiPoint compPl = new com.esri.core.geometry.MultiPoint( ); compPl.add(new com.esri.core.geometry.Point(-116, 20)); compPl.add(new com.esri.core.geometry.Point(-118, 21)); int noException = 1; // no exception com.esri.core.geometry.Geometry intersectGeom = null; try { intersectGeom = com.esri.core.geometry.GeometryEngine.intersect(basePl, compPl, com.esri.core.geometry.SpatialReference .create(4326)); } catch (System.Exception) { noException = 0; } NUnit.Framework.Assert.AreEqual(noException, 1); NUnit.Framework.Assert.IsNotNull(intersectGeom); NUnit.Framework.Assert.IsTrue(intersectGeom.getType() == com.esri.core.geometry.Geometry.Type .MultiPoint); com.esri.core.geometry.MultiPoint ip = (com.esri.core.geometry.MultiPoint)intersectGeom; NUnit.Framework.Assert.AreEqual(-116, 0.1E7, ip.getPoint(0).getX()); NUnit.Framework.Assert.AreEqual(20, 0.1E7, ip.getPoint(0).getY()); NUnit.Framework.Assert.AreEqual(-118, 0.1E7, ip.getPoint(0).getX()); NUnit.Framework.Assert.AreEqual(21, 0.1E7, ip.getPoint(0).getY()); }
public virtual void testOffsetPoint() { try { com.esri.core.geometry.Point point = new com.esri.core.geometry.Point(); point.setXY(0, 0); com.esri.core.geometry.OperatorOffset offset = (com.esri.core.geometry.OperatorOffset )com.esri.core.geometry.OperatorFactoryLocal.getInstance().getOperator(com.esri.core.geometry.Operator.Type .Offset); com.esri.core.geometry.Geometry outputGeom = offset.execute(point, null, 2, com.esri.core.geometry.OperatorOffset.JoinType .Round, 2, 0, null); NUnit.Framework.Assert.IsNull(outputGeom); } catch (System.Exception) { } try { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.add(0, 0); mp.add(10, 10); com.esri.core.geometry.OperatorOffset offset = (com.esri.core.geometry.OperatorOffset )com.esri.core.geometry.OperatorFactoryLocal.getInstance().getOperator(com.esri.core.geometry.Operator.Type .Offset); com.esri.core.geometry.Geometry outputGeom = offset.execute(mp, null, 2, com.esri.core.geometry.OperatorOffset.JoinType .Round, 2, 0, null); NUnit.Framework.Assert.IsNull(outputGeom); } catch (System.Exception) { } }
public virtual void TestOffsetPoint() { try { com.esri.core.geometry.Point point = new com.esri.core.geometry.Point(); point.SetXY(0, 0); com.esri.core.geometry.OperatorOffset offset = (com.esri.core.geometry.OperatorOffset)com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Offset); com.esri.core.geometry.Geometry outputGeom = offset.Execute(point, null, 2, com.esri.core.geometry.OperatorOffset.JoinType.Round, 2, 0, null); NUnit.Framework.Assert.IsNull(outputGeom); } catch (System.Exception) { } try { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(0, 0); mp.Add(10, 10); com.esri.core.geometry.OperatorOffset offset = (com.esri.core.geometry.OperatorOffset)com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Offset); com.esri.core.geometry.Geometry outputGeom = offset.Execute(mp, null, 2, com.esri.core.geometry.OperatorOffset.JoinType.Round, 2, 0, null); NUnit.Framework.Assert.IsNull(outputGeom); } catch (System.Exception) { } }
public virtual void testEqualsOnMultiPoints() { com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference .create(4326); com.esri.core.geometry.MultiPoint baseMp = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.MultiPoint compMp = new com.esri.core.geometry.MultiPoint( ); baseMp.add(new com.esri.core.geometry.Point(-116, 40)); baseMp.add(new com.esri.core.geometry.Point(-120, 39)); baseMp.add(new com.esri.core.geometry.Point(-121, 10)); baseMp.add(new com.esri.core.geometry.Point(-130, 12)); baseMp.add(new com.esri.core.geometry.Point(-108, 25)); compMp.add(new com.esri.core.geometry.Point(-116, 40)); compMp.add(new com.esri.core.geometry.Point(-120, 39)); compMp.add(new com.esri.core.geometry.Point(-121, 10)); compMp.add(new com.esri.core.geometry.Point(-130, 12)); compMp.add(new com.esri.core.geometry.Point(-108, 25)); bool isEqual; try { isEqual = com.esri.core.geometry.GeometryEngine.equals(baseMp, compMp, sr); } catch (System.ArgumentException) { isEqual = false; } NUnit.Framework.Assert.IsTrue(isEqual); }
public virtual void testMultiPointAndMultiPoint3() { com.esri.core.geometry.MultiPoint basePl = new com.esri.core.geometry.MultiPoint( ); basePl.add(new com.esri.core.geometry.Point(-116, 21)); basePl.add(new com.esri.core.geometry.Point(-117, 20)); com.esri.core.geometry.MultiPoint compPl = new com.esri.core.geometry.MultiPoint( ); compPl.add(new com.esri.core.geometry.Point(-116, 20)); compPl.add(new com.esri.core.geometry.Point(-117, 21)); compPl.add(new com.esri.core.geometry.Point(-118, 20)); compPl.add(new com.esri.core.geometry.Point(-119, 21)); int noException = 1; // no exception com.esri.core.geometry.Geometry intersectGeom = null; try { intersectGeom = com.esri.core.geometry.GeometryEngine.intersect(basePl, compPl, com.esri.core.geometry.SpatialReference .create(4326)); } catch (System.Exception) { noException = 0; } NUnit.Framework.Assert.AreEqual(noException, 1); NUnit.Framework.Assert.IsTrue(intersectGeom.isEmpty()); }
public static void test2() { com.esri.core.geometry.MultiPoint multipoint = new com.esri.core.geometry.MultiPoint (); for (int i = 0; i < 100; i++) { for (int j = 0; j < 100; j++) { multipoint.add(i, j); } } com.esri.core.geometry.Envelope2D extent = new com.esri.core.geometry.Envelope2D( ); multipoint.queryEnvelope2D(extent); com.esri.core.geometry.MultiPointImpl multipointImpl = (com.esri.core.geometry.MultiPointImpl )multipoint._getImpl(); com.esri.core.geometry.QuadTree quadtree = buildQuadTree_(multipointImpl); com.esri.core.geometry.QuadTree.QuadTreeIterator qtIter = quadtree.getIterator(); NUnit.Framework.Assert.IsTrue(qtIter.next() == -1); int count = 0; qtIter.resetIterator(extent, 0.0); while (qtIter.next() != -1) { count++; } NUnit.Framework.Assert.IsTrue(count == 10000); }
public static void compareGeometryContent(com.esri.core.geometry.MultiPoint geom1 , com.esri.core.geometry.MultiPoint geom2) { // Geometry types NUnit.Framework.Assert.IsTrue(geom1.getType().value() == geom2.getType().value()); // Envelopes com.esri.core.geometry.Envelope env1 = new com.esri.core.geometry.Envelope(); geom1.queryEnvelope(env1); com.esri.core.geometry.Envelope env2 = new com.esri.core.geometry.Envelope(); geom2.queryEnvelope(env2); NUnit.Framework.Assert.IsTrue(env1.getXMin() == env2.getXMin() && env1.getXMax() == env2.getXMax() && env1.getYMin() == env2.getYMin() && env1.getYMax() == env2. getYMax()); // Point count int pointCount1 = geom1.getPointCount(); int pointCount2 = geom2.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount1 == pointCount2); com.esri.core.geometry.Point point1; com.esri.core.geometry.Point point2; for (int i = 0; i < pointCount1; i++) { point1 = geom1.getPoint(i); point2 = geom2.getPoint(i); double x1 = point1.getX(); double x2 = point2.getX(); NUnit.Framework.Assert.IsTrue(x1 == x2); double y1 = point1.getY(); double y2 = point2.getY(); NUnit.Framework.Assert.IsTrue(y1 == y2); } }
private static com.esri.core.geometry.MultiPoint makeMultiPoint() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); mpoint.add(0, 30); mpoint.add(15, 15); mpoint.add(0, 15); return(mpoint); }
public virtual void testMultiPointGeometryEngine() { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.add(10.0, 20.0); mp.add(20.0, 30.0); string result = com.esri.core.geometry.GeometryEngine.geometryToGeoJson(mp); NUnit.Framework.Assert.AreEqual("{\"type\":\"MultiPoint\",\"coordinates\":[[10.0,20.0],[20.0,30.0]]}" , result); }
public virtual void testEmptyMultiPoint() { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.OperatorExportToGeoJson exporter = (com.esri.core.geometry.OperatorExportToGeoJson )factory.getOperator(com.esri.core.geometry.Operator.Type.ExportToGeoJson); string result = exporter.execute(mp); NUnit.Framework.Assert.AreEqual("{\"type\":\"MultiPoint\",\"coordinates\":null}", result); }
public virtual void testOGCMultiPoint() { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.add(10.0, 20.0); mp.add(20.0, 30.0); com.esri.core.geometry.ogc.OGCMultiPoint ogcMultiPoint = new com.esri.core.geometry.ogc.OGCMultiPoint (mp, null); string result = ogcMultiPoint.asGeoJson(); NUnit.Framework.Assert.AreEqual("{\"type\":\"MultiPoint\",\"coordinates\":[[10.0,20.0],[20.0,30.0]]}" , result); }
public static com.esri.core.geometry.MultiPoint makeMultiPoint3() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.Point2D pt1 = new com.esri.core.geometry.Point2D(); pt1.x = 1.0; pt1.y = 1.0; com.esri.core.geometry.Point2D pt2 = new com.esri.core.geometry.Point2D(); pt2.x = 5.0; pt2.y = 5.0; mpoint.add(pt1.x, pt1.y); mpoint.add(pt2.x, pt2.y); return(mpoint); }
public static com.esri.core.geometry.MultiPoint makeMultiPoint2() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.Point2D pt1 = new com.esri.core.geometry.Point2D(); pt1.x = 1.0; pt1.y = 1.0; com.esri.core.geometry.Point2D pt2 = new com.esri.core.geometry.Point2D(); pt2.x = 1.0; pt2.y = 1.0; com.esri.core.geometry.Point2D pt3 = new com.esri.core.geometry.Point2D(); pt3.x = 15.0; pt3.y = 15.0; com.esri.core.geometry.Point2D pt4 = new com.esri.core.geometry.Point2D(); pt4.x = 15.0; pt4.y = 15.0; com.esri.core.geometry.Point2D pt5 = new com.esri.core.geometry.Point2D(); pt5.x = 1.0; pt5.y = 1.0; com.esri.core.geometry.Point2D pt6 = new com.esri.core.geometry.Point2D(); pt6.x = 1.0; pt6.y = 1.0; com.esri.core.geometry.Point2D pt7 = new com.esri.core.geometry.Point2D(); pt7.x = 15.0; pt7.y = 15.0; com.esri.core.geometry.Point2D pt8 = new com.esri.core.geometry.Point2D(); pt8.x = 15.0; pt8.y = 15.0; com.esri.core.geometry.Point2D pt9 = new com.esri.core.geometry.Point2D(); pt9.x = 15.0; pt9.y = 15.0; com.esri.core.geometry.Point2D pt10 = new com.esri.core.geometry.Point2D(); pt10.x = 1.0; pt10.y = 1.0; com.esri.core.geometry.Point2D pt11 = new com.esri.core.geometry.Point2D(); pt11.x = 15.0; pt11.y = 15.0; mpoint.add(pt1.x, pt1.y); mpoint.add(pt2.x, pt2.y); mpoint.add(pt3.x, pt3.y); mpoint.add(pt4.x, pt4.y); mpoint.add(pt5.x, pt5.y); mpoint.add(pt6.x, pt6.y); mpoint.add(pt7.x, pt7.y); mpoint.add(pt8.x, pt8.y); mpoint.add(pt9.x, pt9.y); mpoint.add(pt10.x, pt10.y); mpoint.add(pt11.x, pt11.y); return(mpoint); }
public virtual void testSerializeMultiPoint() { try { java.io.ByteArrayOutputStream streamOut = new java.io.ByteArrayOutputStream(); java.io.ObjectOutputStream oo = new java.io.ObjectOutputStream(streamOut); com.esri.core.geometry.MultiPoint pt = new com.esri.core.geometry.MultiPoint(); pt.add(10, 30); pt.add(120, 40); oo.writeObject(pt); java.io.ByteArrayInputStream streamIn = new java.io.ByteArrayInputStream(streamOut .toByteArray()); java.io.ObjectInputStream ii = new java.io.ObjectInputStream(streamIn); com.esri.core.geometry.MultiPoint ptRes = (com.esri.core.geometry.MultiPoint)ii.readObject (); NUnit.Framework.Assert.IsTrue(ptRes.Equals(pt)); } catch (System.Exception) { fail("MultiPoint serialization failure"); } // try // { // FileOutputStream streamOut = new FileOutputStream(m_thisDirectory + // "savedMultiPoint.txt"); // ObjectOutputStream oo = new ObjectOutputStream(streamOut); // MultiPoint pt = new MultiPoint(); // pt.add(10, 30); // pt.add(120, 40); // oo.writeObject(pt); // } // catch(Exception ex) // { // fail("MultiPoint serialization failure"); // } try { java.io.InputStream s = Sharpen.Runtime.getClassForType(typeof(com.esri.core.geometry.TestSerialization )).getResourceAsStream("savedMultiPoint.txt"); java.io.ObjectInputStream ii = new java.io.ObjectInputStream(s); com.esri.core.geometry.MultiPoint ptRes = (com.esri.core.geometry.MultiPoint)ii.readObject (); NUnit.Framework.Assert.IsTrue(ptRes.getPoint(1).getY() == 40); } catch (System.Exception) { fail("MultiPoint serialization failure"); } }
public virtual void testBufferMultiPoint() { com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference .create(4326); com.esri.core.geometry.OperatorBuffer buffer = (com.esri.core.geometry.OperatorBuffer )com.esri.core.geometry.OperatorFactoryLocal.getInstance().getOperator(com.esri.core.geometry.Operator.Type .Buffer); com.esri.core.geometry.OperatorSimplify simplify = (com.esri.core.geometry.OperatorSimplify )com.esri.core.geometry.OperatorFactoryLocal.getInstance().getOperator(com.esri.core.geometry.Operator.Type .Simplify); com.esri.core.geometry.MultiPoint inputGeom = new com.esri.core.geometry.MultiPoint (); inputGeom.add(12, 120); inputGeom.add(20, 120); com.esri.core.geometry.Geometry result = buffer.execute(inputGeom, sr, 40.0, null ); NUnit.Framework.Assert.IsTrue(result.getType().value() == com.esri.core.geometry.Geometry.GeometryType .Polygon); com.esri.core.geometry.Polygon poly = (com.esri.core.geometry.Polygon)(result); com.esri.core.geometry.Envelope2D env2D = new com.esri.core.geometry.Envelope2D(); result.queryEnvelope2D(env2D); NUnit.Framework.Assert.IsTrue(System.Math.abs(env2D.getWidth() - 80 - 8) < 0.001 && System.Math.abs(env2D.getHeight() - 80) < 0.001); NUnit.Framework.Assert.IsTrue(System.Math.abs(env2D.getCenterX() - 16) < 0.001 && System.Math.abs(env2D.getCenterY() - 120) < 0.001); int pathCount = poly.getPathCount(); NUnit.Framework.Assert.IsTrue(pathCount == 1); int pointCount = poly.getPointCount(); NUnit.Framework.Assert.IsTrue(System.Math.abs(pointCount - 108.0) < 10); NUnit.Framework.Assert.IsTrue(simplify.isSimpleAsFeature(result, sr, null)); { result = buffer.execute(inputGeom, sr, 0, null); NUnit.Framework.Assert.IsTrue(result.getType().value() == com.esri.core.geometry.Geometry.GeometryType .Polygon); NUnit.Framework.Assert.IsTrue(result.isEmpty()); } { result = buffer.execute(inputGeom, sr, -1, null); NUnit.Framework.Assert.IsTrue(result.getType().value() == com.esri.core.geometry.Geometry.GeometryType .Polygon); NUnit.Framework.Assert.IsTrue(result.isEmpty()); } }
public static void testDistanceBetweenVariousGeometries() { com.esri.core.geometry.Polygon polygon = makePolygon(); com.esri.core.geometry.Polyline polyline = makePolyline(); com.esri.core.geometry.MultiPoint multipoint = makeMultiPoint(); com.esri.core.geometry.Point point = makePoint(); // SpatialReference spatialRef = // SpatialReference.create(3857);//PCS_WGS_1984_WEB_MERCATOR_AUXSPHERE double distance; distance = com.esri.core.geometry.GeometryEngine.distance(polygon, polyline, null ); NUnit.Framework.Assert.IsTrue(System.Math.abs(distance - 5.0) < 0.00001); distance = com.esri.core.geometry.GeometryEngine.distance(polygon, multipoint, null ); NUnit.Framework.Assert.IsTrue(System.Math.abs(distance - 5.0) < 0.00001); distance = com.esri.core.geometry.GeometryEngine.distance(polygon, point, null); NUnit.Framework.Assert.IsTrue(System.Math.abs(distance - 5.0) < 0.00001); }
public static void testCopy() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.Point pt0 = new com.esri.core.geometry.Point(0.0, 0.0, -1.0 ); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0, 1.0 ); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 1.0, 1.0 ); mpoint.add(pt0); mpoint.add(pt1); mpoint.add(pt2); mpoint.removePoint(1); com.esri.core.geometry.MultiPoint mpCopy = (com.esri.core.geometry.MultiPoint)mpoint .copy(); NUnit.Framework.Assert.IsTrue(mpCopy.Equals(mpoint)); com.esri.core.geometry.Point pt; pt = mpCopy.getPoint(0); NUnit.Framework.Assert.IsTrue(pt.getX() == pt0.getX() && pt.getY() == pt0.getY()); pt = mpCopy.getPoint(1); NUnit.Framework.Assert.IsTrue(pt.getX() == pt2.getX() && pt.getY() == pt2.getY()); NUnit.Framework.Assert.IsTrue(mpCopy.getPointCount() == 2); }
public static void Test2() { com.esri.core.geometry.MultiPoint multipoint = new com.esri.core.geometry.MultiPoint(); for (int i = 0; i < 100; i++) { for (int j = 0; j < 100; j++) { multipoint.Add(i, j); } } com.esri.core.geometry.Envelope2D extent = new com.esri.core.geometry.Envelope2D(); multipoint.QueryEnvelope2D(extent); com.esri.core.geometry.MultiPointImpl multipointImpl = (com.esri.core.geometry.MultiPointImpl)multipoint._getImpl(); com.esri.core.geometry.QuadTree quadtree = BuildQuadTree_(multipointImpl); com.esri.core.geometry.QuadTree.QuadTreeIterator qtIter = quadtree.GetIterator(); NUnit.Framework.Assert.IsTrue(qtIter.Next() == -1); int count = 0; qtIter.ResetIterator(extent, 0.0); while (qtIter.Next() != -1) { count++; } NUnit.Framework.Assert.IsTrue(count == 10000); }
public virtual void TestIsSimpleMultiPointCoincident() { // Two point test: coincident com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(100, 100); mp.Add(100, 100); bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(!result); com.esri.core.geometry.MultiPoint mpS; result = simplifyOp.IsSimpleAsFeature(mpS = (com.esri.core.geometry.MultiPoint)simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); NUnit.Framework.Assert.IsTrue(mpS.GetPointCount() == 1); }
public static void testPointTypes() { com.esri.core.geometry.OperatorFactoryLocal engine = com.esri.core.geometry.OperatorFactoryLocal .getInstance(); com.esri.core.geometry.OperatorDifference difference = (com.esri.core.geometry.OperatorDifference )engine.getOperator(com.esri.core.geometry.Operator.Type.Difference); com.esri.core.geometry.OperatorSymmetricDifference sym_difference = (com.esri.core.geometry.OperatorSymmetricDifference )engine.getOperator(com.esri.core.geometry.Operator.Type.SymmetricDifference); { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.setXY(0, 0); point_2.setXY(0.000000009, 0.000000009); com.esri.core.geometry.Point differenced = (com.esri.core.geometry.Point)(difference .execute(point_1, point_2, com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced.isEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint )(sym_difference.execute(point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.isEmpty()); } { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.setXY(0, 0); point_2.setXY(0.000000009, 0.0); com.esri.core.geometry.Point differenced = (com.esri.core.geometry.Point)(difference .execute(point_1, point_2, com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced.isEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint )(sym_difference.execute(point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.isEmpty()); } { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.setXY(0, 0); point_2.setXY(0.00000002, 0.00000002); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference .execute(point_1, point_2, com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference .execute(point_2, point_1, com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_2.isEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint )(sym_difference.execute(point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!sym_differenced.isEmpty()); NUnit.Framework.Assert.IsTrue(sym_differenced.getXY(0).x == 0 && sym_differenced. getXY(0).y == 0); NUnit.Framework.Assert.IsTrue(sym_differenced.getXY(1).x == 0.00000002 && sym_differenced .getXY(1).y == 0.00000002); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.add(0, 0); multi_point_1.add(1, 1); point_2.setXY(0.000000009, 0.000000009); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.getPointCount() == 1); NUnit.Framework.Assert.IsTrue(differenced_1.getXY(0).x == 1 && differenced_1.getXY (0).y == 1); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference .execute(point_2, multi_point_1, com.esri.core.geometry.SpatialReference.create( 4326), null)); NUnit.Framework.Assert.IsTrue(differenced_2.isEmpty()); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.add(0, 0); multi_point_1.add(1, 1); point_2.setXY(0.000000009, 0.0); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.getXY(0).x == 1.0 && differenced_1.getXY (0).y == 1.0); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference .execute(point_2, multi_point_1, com.esri.core.geometry.SpatialReference.create( 4326), null)); NUnit.Framework.Assert.IsTrue(differenced_2.isEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint )(sym_difference.execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!sym_differenced.isEmpty()); NUnit.Framework.Assert.IsTrue(sym_differenced.getPointCount() == 1); NUnit.Framework.Assert.IsTrue(sym_differenced.getXY(0).x == 1 && sym_differenced. getXY(0).y == 1); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.add(0, 0); multi_point_1.add(0, 0); point_2.setXY(0.000000009, 0.0); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint )(sym_difference.execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.isEmpty()); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.add(0, 0); multi_point_1.add(0, 0); multi_point_1.add(2, 2); polygon_2.startPath(-1, -1); polygon_2.lineTo(-1, 1); polygon_2.lineTo(1, 1); polygon_2.lineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.getPointCount() == 1); NUnit.Framework.Assert.IsTrue(differenced_1.getXY(0).x == 2 && differenced_1.getXY (0).y == 2); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.add(0, 0); multi_point_1.add(0, 0); multi_point_1.add(1, 1); polygon_2.startPath(-1, -1); polygon_2.lineTo(-1, 1); polygon_2.lineTo(1, 1); polygon_2.lineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); } { // multi_point/envelope com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Envelope envelope_2 = new com.esri.core.geometry.Envelope( ); multi_point_1.add(-2, 0); multi_point_1.add(0, 2); multi_point_1.add(2, 0); multi_point_1.add(0, -2); envelope_2.setCoords(-1, -1, 1, 1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, envelope_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty() && differenced_1 == multi_point_1 ); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.add(2, 2); multi_point_1.add(2, 2); multi_point_1.add(-2, -2); polygon_2.startPath(-1, -1); polygon_2.lineTo(-1, 1); polygon_2.lineTo(1, 1); polygon_2.lineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint )(difference.execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference .create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty() && differenced_1 == multi_point_1 ); } { // point/polygon com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); point_1.setXY(0, 0); polygon_2.startPath(-1, -1); polygon_2.lineTo(-1, 1); polygon_2.lineTo(1, 1); polygon_2.lineTo(1, -1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference .execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.create(4326 ), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); polygon_2.setEmpty(); polygon_2.startPath(1, 1); polygon_2.lineTo(1, 2); polygon_2.lineTo(2, 2); polygon_2.lineTo(2, 1); differenced_1 = (com.esri.core.geometry.Point)(difference.execute(point_1, polygon_2 , com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } { // point/polygon com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); point_1.setXY(0, 0); polygon_2.startPath(1, 0); polygon_2.lineTo(0, 1); polygon_2.lineTo(1, 1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference .execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.create(4326 ), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); point_1.setEmpty(); point_1.setXY(0.5, 0.5); polygon_2.setEmpty(); polygon_2.startPath(1, 0); polygon_2.lineTo(0, 1); polygon_2.lineTo(1, 1); differenced_1 = (com.esri.core.geometry.Point)(difference.execute(point_1, polygon_2 , com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); } { // point/envelope com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Envelope envelope_2 = new com.esri.core.geometry.Envelope( ); point_1.setXY(0, 0); envelope_2.setCoords(-1, -1, 1, 1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference .execute(point_1, envelope_2, com.esri.core.geometry.SpatialReference.create(4326 ), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); envelope_2.setEmpty(); envelope_2.setCoords(1, 1, 2, 2); differenced_1 = (com.esri.core.geometry.Point)(difference.execute(point_1, envelope_2 , com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } { // point/polyline com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polyline polyline_2 = new com.esri.core.geometry.Polyline( ); point_1.setXY(0, 0); polyline_2.startPath(-1, 0); polyline_2.lineTo(1, 0); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference .execute(point_1, polyline_2, com.esri.core.geometry.SpatialReference.create(4326 ), null)); NUnit.Framework.Assert.IsTrue(differenced_1.isEmpty()); polyline_2.setEmpty(); polyline_2.startPath(1, 0); polyline_2.lineTo(2, 0); differenced_1 = (com.esri.core.geometry.Point)(difference.execute(point_1, polyline_2 , com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); polyline_2.setEmpty(); polyline_2.startPath(-1, -1); polyline_2.lineTo(-1, 1); polyline_2.lineTo(1, 1); polyline_2.lineTo(1, -1); differenced_1 = (com.esri.core.geometry.Point)(difference.execute(point_1, polyline_2 , com.esri.core.geometry.SpatialReference.create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.isEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } }
public static com.esri.core.geometry.MultiPoint MakeMultiPoint() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(); pt1.SetXY(0, 0); pt1.SetZ(-1); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(); pt2.SetXY(0, 0); pt2.SetZ(1); com.esri.core.geometry.Point pt3 = new com.esri.core.geometry.Point(); pt3.SetXY(0, 1); pt3.SetZ(1); mpoint.Add(pt1); mpoint.Add(pt2); mpoint.Add(pt3); mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 0, 0, 7); mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 1, 0, 11); mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 2, 0, 13); return mpoint; }
public virtual void TestisSimpleOGC() { com.esri.core.geometry.Polyline poly = new com.esri.core.geometry.Polyline(); poly.StartPath(0, 0); poly.LineTo(10, 0); bool result = simplifyOpOGC.IsSimpleOGC(poly, sr4326, true, null, null); NUnit.Framework.Assert.IsTrue(result); poly = new com.esri.core.geometry.Polyline(); poly.StartPath(0, 0); poly.LineTo(10, 10); poly.LineTo(0, 10); poly.LineTo(10, 0); com.esri.core.geometry.NonSimpleResult nsr = new com.esri.core.geometry.NonSimpleResult(); result = simplifyOpOGC.IsSimpleOGC(poly, sr4326, true, nsr, null); NUnit.Framework.Assert.IsTrue(!result); NUnit.Framework.Assert.IsTrue(nsr.m_reason == com.esri.core.geometry.NonSimpleResult.Reason.Cracking); com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(0, 0); mp.Add(10, 0); result = simplifyOpOGC.IsSimpleOGC(mp, sr4326, true, null, null); NUnit.Framework.Assert.IsTrue(result); mp = new com.esri.core.geometry.MultiPoint(); mp.Add(10, 0); mp.Add(10, 0); nsr = new com.esri.core.geometry.NonSimpleResult(); result = simplifyOpOGC.IsSimpleOGC(mp, sr4326, true, nsr, null); NUnit.Framework.Assert.IsTrue(!result); NUnit.Framework.Assert.IsTrue(nsr.m_reason == com.esri.core.geometry.NonSimpleResult.Reason.Clustering); }
public virtual void TestMultiPointAndMultiPoint3() { com.esri.core.geometry.MultiPoint basePl = new com.esri.core.geometry.MultiPoint(); basePl.Add(new com.esri.core.geometry.Point(-116, 21)); basePl.Add(new com.esri.core.geometry.Point(-117, 20)); com.esri.core.geometry.MultiPoint compPl = new com.esri.core.geometry.MultiPoint(); compPl.Add(new com.esri.core.geometry.Point(-116, 20)); compPl.Add(new com.esri.core.geometry.Point(-117, 21)); compPl.Add(new com.esri.core.geometry.Point(-118, 20)); compPl.Add(new com.esri.core.geometry.Point(-119, 21)); int noException = 1; // no exception com.esri.core.geometry.Geometry intersectGeom = null; try { intersectGeom = com.esri.core.geometry.GeometryEngine.Intersect(basePl, compPl, com.esri.core.geometry.SpatialReference.Create(4326)); } catch (System.Exception) { noException = 0; } NUnit.Framework.Assert.AreEqual(noException, 1); NUnit.Framework.Assert.IsTrue(intersectGeom.IsEmpty()); }
public static void TestCopy() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt0 = new com.esri.core.geometry.Point(0.0, 0.0, -1.0); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0, 1.0); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 1.0, 1.0); mpoint.Add(pt0); mpoint.Add(pt1); mpoint.Add(pt2); mpoint.RemovePoint(1); com.esri.core.geometry.MultiPoint mpCopy = (com.esri.core.geometry.MultiPoint)mpoint.Copy(); NUnit.Framework.Assert.IsTrue(mpCopy.Equals(mpoint)); com.esri.core.geometry.Point pt; pt = mpCopy.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt0.GetX() && pt.GetY() == pt0.GetY()); pt = mpCopy.GetPoint(1); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt2.GetX() && pt.GetY() == pt2.GetY()); NUnit.Framework.Assert.IsTrue(mpCopy.GetPointCount() == 2); }
public static com.esri.core.geometry.MultiPoint MakeMultiPoint2() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point2D pt1 = new com.esri.core.geometry.Point2D(); pt1.x = 1.0; pt1.y = 1.0; com.esri.core.geometry.Point2D pt2 = new com.esri.core.geometry.Point2D(); pt2.x = 1.0; pt2.y = 1.0; com.esri.core.geometry.Point2D pt3 = new com.esri.core.geometry.Point2D(); pt3.x = 15.0; pt3.y = 15.0; com.esri.core.geometry.Point2D pt4 = new com.esri.core.geometry.Point2D(); pt4.x = 15.0; pt4.y = 15.0; com.esri.core.geometry.Point2D pt5 = new com.esri.core.geometry.Point2D(); pt5.x = 1.0; pt5.y = 1.0; com.esri.core.geometry.Point2D pt6 = new com.esri.core.geometry.Point2D(); pt6.x = 1.0; pt6.y = 1.0; com.esri.core.geometry.Point2D pt7 = new com.esri.core.geometry.Point2D(); pt7.x = 15.0; pt7.y = 15.0; com.esri.core.geometry.Point2D pt8 = new com.esri.core.geometry.Point2D(); pt8.x = 15.0; pt8.y = 15.0; com.esri.core.geometry.Point2D pt9 = new com.esri.core.geometry.Point2D(); pt9.x = 15.0; pt9.y = 15.0; com.esri.core.geometry.Point2D pt10 = new com.esri.core.geometry.Point2D(); pt10.x = 1.0; pt10.y = 1.0; com.esri.core.geometry.Point2D pt11 = new com.esri.core.geometry.Point2D(); pt11.x = 15.0; pt11.y = 15.0; mpoint.Add(pt1.x, pt1.y); mpoint.Add(pt2.x, pt2.y); mpoint.Add(pt3.x, pt3.y); mpoint.Add(pt4.x, pt4.y); mpoint.Add(pt5.x, pt5.y); mpoint.Add(pt6.x, pt6.y); mpoint.Add(pt7.x, pt7.y); mpoint.Add(pt8.x, pt8.y); mpoint.Add(pt9.x, pt9.y); mpoint.Add(pt10.x, pt10.y); mpoint.Add(pt11.x, pt11.y); return mpoint; }
public virtual void TestBufferMultiPoint() { com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); com.esri.core.geometry.OperatorBuffer buffer = (com.esri.core.geometry.OperatorBuffer)com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Buffer); com.esri.core.geometry.OperatorSimplify simplify = (com.esri.core.geometry.OperatorSimplify)com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Simplify); com.esri.core.geometry.MultiPoint inputGeom = new com.esri.core.geometry.MultiPoint(); inputGeom.Add(12, 120); inputGeom.Add(20, 120); com.esri.core.geometry.Geometry result = buffer.Execute(inputGeom, sr, 40.0, null); NUnit.Framework.Assert.IsTrue(result.GetType().Value() == com.esri.core.geometry.Geometry.GeometryType.Polygon); com.esri.core.geometry.Polygon poly = (com.esri.core.geometry.Polygon)(result); com.esri.core.geometry.Envelope2D env2D = new com.esri.core.geometry.Envelope2D(); result.QueryEnvelope2D(env2D); NUnit.Framework.Assert.IsTrue(System.Math.Abs(env2D.GetWidth() - 80 - 8) < 0.001 && System.Math.Abs(env2D.GetHeight() - 80) < 0.001); NUnit.Framework.Assert.IsTrue(System.Math.Abs(env2D.GetCenterX() - 16) < 0.001 && System.Math.Abs(env2D.GetCenterY() - 120) < 0.001); int pathCount = poly.GetPathCount(); NUnit.Framework.Assert.IsTrue(pathCount == 1); int pointCount = poly.GetPointCount(); NUnit.Framework.Assert.IsTrue(System.Math.Abs(pointCount - 108.0) < 10); NUnit.Framework.Assert.IsTrue(simplify.IsSimpleAsFeature(result, sr, null)); { result = buffer.Execute(inputGeom, sr, 0, null); NUnit.Framework.Assert.IsTrue(result.GetType().Value() == com.esri.core.geometry.Geometry.GeometryType.Polygon); NUnit.Framework.Assert.IsTrue(result.IsEmpty()); } { result = buffer.Execute(inputGeom, sr, -1, null); NUnit.Framework.Assert.IsTrue(result.GetType().Value() == com.esri.core.geometry.Geometry.GeometryType.Polygon); NUnit.Framework.Assert.IsTrue(result.IsEmpty()); } }
public virtual void TestIsSimpleMultiPointCloserThanTolerance2() { // 5 point test: closer than tolerance com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(100, 100); mp.Add(100, 101); mp.Add(100, 100 + sr4326.GetTolerance() / 2); mp.Add(11, 1); mp.Add(11, 14); com.esri.core.geometry.MultiPoint mpS; bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); result = simplifyOp.IsSimpleAsFeature(mpS = (com.esri.core.geometry.MultiPoint)simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); NUnit.Framework.Assert.IsTrue(mpS.GetPointCount() == 5); }
/// <exception cref="java.io.FileNotFoundException"/> public static com.esri.core.geometry.Geometry loadFromTextFileDbg(string textFileName ) { string fullPath = textFileName; // string fullCSVPathName = System.IO.Path.Combine( directoryPath , // CsvFileName); java.io.File fileInfo = new java.io.File(fullPath); java.util.Scanner scanner = new java.util.Scanner(fileInfo); com.esri.core.geometry.Geometry geom = null; // grab first line string line = scanner.nextLine(); string geomTypeString = Sharpen.Runtime.substring(line, 1); if (Sharpen.Runtime.equalsIgnoreCase(geomTypeString, "polygon")) { geom = new com.esri.core.geometry.Polygon(); } else { if (Sharpen.Runtime.equalsIgnoreCase(geomTypeString, "polyline")) { geom = new com.esri.core.geometry.Polyline(); } else { if (Sharpen.Runtime.equalsIgnoreCase(geomTypeString, "multipoint")) { geom = new com.esri.core.geometry.MultiPoint(); } else { if (Sharpen.Runtime.equalsIgnoreCase(geomTypeString, "point")) { geom = new com.esri.core.geometry.Point(); } } } } while (line.StartsWith("*")) { if (scanner.hasNextLine()) { line = scanner.nextLine(); } } int j = 0; com.esri.core.geometry.Geometry.Type geomType = geom.getType(); while (scanner.hasNextLine()) { string[] parsedLine = line.split("\\s+"); double xVal = double.parseDouble(parsedLine[0]); double yVal = double.parseDouble(parsedLine[1]); if (j == 0 && (geomType == com.esri.core.geometry.Geometry.Type.Polygon || geomType == com.esri.core.geometry.Geometry.Type.Polyline)) { ((com.esri.core.geometry.MultiPath)geom).startPath(xVal, yVal); } else { if (geomType == com.esri.core.geometry.Geometry.Type.Polygon || geomType == com.esri.core.geometry.Geometry.Type .Polyline) { ((com.esri.core.geometry.MultiPath)geom).lineTo(xVal, yVal); } else { if (geomType == com.esri.core.geometry.Geometry.Type.MultiPoint) { ((com.esri.core.geometry.MultiPoint)geom).add(xVal, yVal); } } } // else if(geomType == Geometry.Type.Point) // Point geom = null;//new Point(xVal, yVal); j++; line = scanner.nextLine(); } scanner.close(); return(geom); }
public virtual void TestIsSimpleMultiPoint_coincident2() { // 5 point test: coincident com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(100, 100); mp.Add(100, 101); mp.Add(100, 100); mp.Add(11, 1); mp.Add(11, 14); bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(!result); com.esri.core.geometry.MultiPoint mpS; result = simplifyOp.IsSimpleAsFeature(mpS = (com.esri.core.geometry.MultiPoint)simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); NUnit.Framework.Assert.IsTrue(mpS.GetPointCount() == 4); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(0).GetX(), 100, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(0).GetY(), 100, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(1).GetX(), 100, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(1).GetY(), 101, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(2).GetX(), 11, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(2).GetY(), 1, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(3).GetX(), 11, 1e-7); NUnit.Framework.Assert.AreEqual(mpS.GetPoint(3).GetY(), 14, 1e-7); }
public virtual void TestIsSimpleMultiPointFarApart2() { // 5 point test: far apart com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(100, 100); mp.Add(100, 101); mp.Add(101, 101); mp.Add(11, 1); mp.Add(11, 14); com.esri.core.geometry.MultiPoint mpS; bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); result = simplifyOp.IsSimpleAsFeature(mpS = (com.esri.core.geometry.MultiPoint)simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); NUnit.Framework.Assert.IsTrue(mpS.GetPointCount() == 5); }
public virtual void TestMultiPointSR4326_CR184439() { com.esri.core.geometry.OperatorFactoryLocal engine = com.esri.core.geometry.OperatorFactoryLocal.GetInstance(); com.esri.core.geometry.OperatorSimplify simpOp = (com.esri.core.geometry.OperatorSimplify)engine.GetOperator(com.esri.core.geometry.Operator.Type.Simplify); com.esri.core.geometry.NonSimpleResult nonSimpResult = new com.esri.core.geometry.NonSimpleResult(); nonSimpResult.m_reason = com.esri.core.geometry.NonSimpleResult.Reason.NotDetermined; com.esri.core.geometry.MultiPoint multiPoint = new com.esri.core.geometry.MultiPoint(); multiPoint.Add(0, 0); multiPoint.Add(0, 1); multiPoint.Add(0, 0); bool multiPointIsSimple = simpOp.IsSimpleAsFeature(multiPoint, com.esri.core.geometry.SpatialReference.Create(4326), true, nonSimpResult, null); NUnit.Framework.Assert.IsFalse(multiPointIsSimple); NUnit.Framework.Assert.IsTrue(nonSimpResult.m_reason == com.esri.core.geometry.NonSimpleResult.Reason.Clustering); NUnit.Framework.Assert.IsTrue(nonSimpResult.m_vertexIndex1 == 0); NUnit.Framework.Assert.IsTrue(nonSimpResult.m_vertexIndex2 == 2); }
public virtual void TestMultiPointPointDisjoint() { com.esri.core.geometry.OperatorDisjoint disjoint = (com.esri.core.geometry.OperatorDisjoint)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Disjoint)); com.esri.core.geometry.OperatorContains contains = (com.esri.core.geometry.OperatorContains)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Contains)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(102100); double tolerance = sr.GetTolerance(com.esri.core.geometry.VertexDescription.Semantics.POSITION); com.esri.core.geometry.MultiPoint multipoint1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point point2 = new com.esri.core.geometry.Point(); multipoint1.Add(2, 2); multipoint1.Add(2, 5); multipoint1.Add(4, 1); multipoint1.Add(4, 4); multipoint1.Add(4, 7); multipoint1.Add(6, 2); multipoint1.Add(6, 6); multipoint1.Add(4, 1); multipoint1.Add(6, 6); point2.SetXY(2, 6); bool res = disjoint.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = disjoint.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); res = contains.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = contains.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); multipoint1.Add(2, 6); res = disjoint.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = disjoint.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = contains.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = contains.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); }
public static void testCreation() { { // simple create com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); NUnit.Framework.Assert.IsTrue(Sharpen.Runtime.getClassForObject(mpoint) == Sharpen.Runtime.getClassForType (typeof(com.esri.core.geometry.MultiPoint))); // assertFalse(mpoint.getClass() == Polyline.class); NUnit.Framework.Assert.IsTrue(mpoint != null); NUnit.Framework.Assert.IsTrue(mpoint.getType() == com.esri.core.geometry.Geometry.Type .MultiPoint); NUnit.Framework.Assert.IsTrue(mpoint.isEmpty()); NUnit.Framework.Assert.IsTrue(mpoint.getPointCount() == 0); mpoint = null; NUnit.Framework.Assert.IsFalse(mpoint != null); } { // play with default attributes com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); simpleTest(mpoint); } { // simple create 2D com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); NUnit.Framework.Assert.IsTrue(mpoint != null); com.esri.core.geometry.MultiPoint mpoint1 = new com.esri.core.geometry.MultiPoint (); NUnit.Framework.Assert.IsTrue(mpoint1 != null); mpoint.setEmpty(); com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point(0, 0); mpoint.add(pt); com.esri.core.geometry.Point pt3 = mpoint.getPoint(0); NUnit.Framework.Assert.IsTrue(pt3.getX() == 0 && pt3.getY() == 0); // assertFalse(mpoint->HasAttribute(VertexDescription::Semantics::Z)); // pt3.setZ(115.0); mpoint.setPoint(0, pt3); pt3 = mpoint.getPoint(0); NUnit.Framework.Assert.IsTrue(pt3.getX() == 0 && pt3.getY() == 0); } { /* && pt3.getZ() == 115 */ // assertTrue(mpoint->HasAttribute(VertexDescription::Semantics::Z)); // CompareGeometryContent(mpoint, &pt, 1); // move 3d com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); NUnit.Framework.Assert.IsTrue(mpoint != null); com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point(0, 0); mpoint.add(pt); com.esri.core.geometry.Point pt3 = mpoint.getPoint(0); NUnit.Framework.Assert.IsTrue(pt3.getX() == 0 && pt3.getY() == 0); } { /* && pt3.getZ() == 0 */ // test QueryInterval com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0); // pt1.setZ(-1.0); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 0.0); // pt2.setZ(1.0); mpoint.add(pt1); mpoint.add(pt2); // Envelope1D e = // mpoint->QueryInterval(enum_value2(VertexDescription, Semantics, // Z), 0); com.esri.core.geometry.Envelope e = new com.esri.core.geometry.Envelope(); mpoint.queryEnvelope(e); } { // assertTrue(e.get == -1.0 && e.vmax == 1.0); com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // for (int i = 0; i < sz; i++) // geom.add(openString[i]); // CompareGeometryContent(geom, openString, sz); com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // Point point = GCNEW Point; // for (int i = 0; i < sz; i++) // { // point.setXY(openString[i]); // geom.add(point); // } // CompareGeometryContent(geom, openString, sz); // Test AddPoints com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // geom.addPoints(openString, sz, 0, -1); // CompareGeometryContent((MultiVertexGeometry)geom, openString, // sz); // Test InsertPoint(Point2D) com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint( ); com.esri.core.geometry.Point pt0 = new com.esri.core.geometry.Point(0.0, 0.0); // pt0.setZ(-1.0); // pt0.setID(7); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0); // pt1.setZ(1.0); // pt1.setID(11); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 1.0); // pt2.setZ(1.0); // pt2.setID(13); mpoint.add(pt0); mpoint.add(pt1); mpoint.add(pt2); com.esri.core.geometry.Point pt3 = new com.esri.core.geometry.Point(-11.0, -13.0); mpoint.add(pt3); mpoint.insertPoint(1, pt3); NUnit.Framework.Assert.IsTrue(mpoint.getPointCount() == 5); com.esri.core.geometry.Point pt; pt = mpoint.getPoint(0); NUnit.Framework.Assert.IsTrue(pt.getX() == pt0.getX() && pt.getY() == pt0.getY()); /* * && * pt. * getZ * () == * pt0 * .getZ * () */ pt = mpoint.getPoint(1); NUnit.Framework.Assert.IsTrue(pt.getX() == pt3.getX() && pt.getY() == pt3.getY()); pt = mpoint.getPoint(2); NUnit.Framework.Assert.IsTrue(pt.getX() == pt1.getX() && pt.getY() == pt1.getY()); /* * && * pt. * getZ * () == * pt1 * .getZ * () */ pt = mpoint.getPoint(3); NUnit.Framework.Assert.IsTrue(pt.getX() == pt2.getX() && pt.getY() == pt2.getY()); /* * && * pt. * getZ * () == * pt2 * .getZ * () */ com.esri.core.geometry.Point point = new com.esri.core.geometry.Point(); point.setXY(17.0, 19.0); // point.setID(12); // point.setM(5); mpoint.insertPoint(2, point); mpoint.add(point); NUnit.Framework.Assert.IsTrue(mpoint.getPointCount() == 7); } // double m; // int id; // pt = mpoint.getXYZ(2); // assertTrue(pt.x == 17.0 && pt.y == 19.0 && pt.z == defaultZ); // m = mpoint.getAttributeAsDbl(enum_value2(VertexDescription, // Semantics, M), 2, 0); // assertTrue(m == 5); // id = mpoint.getAttributeAsInt(enum_value2(VertexDescription, // Semantics, ID), 2, 0); // assertTrue(id == 23); // // pt = mpoint.getXYZ(3); // assertTrue(pt.x == pt1.x && pt.y == pt1.y && pt.z == pt1.z); // m = mpoint.getAttributeAsDbl(enum_value2(VertexDescription, // Semantics, M), 3, 0); // assertTrue(NumberUtils::IsNaN(m)); // id = mpoint.getAttributeAsInt(enum_value2(VertexDescription, // Semantics, ID), 3, 0); // assertTrue(id == 11); com.esri.core.geometry.MultiPoint mpoint_1 = new com.esri.core.geometry.MultiPoint (); com.esri.core.geometry.Point pt0_1 = new com.esri.core.geometry.Point(0.0, 0.0, - 1.0); com.esri.core.geometry.Point pt1_1 = new com.esri.core.geometry.Point(0.0, 0.0, 1.0 ); com.esri.core.geometry.Point pt2_1 = new com.esri.core.geometry.Point(0.0, 1.0, 1.0 ); mpoint_1.add(pt0_1); mpoint_1.add(pt1_1); mpoint_1.add(pt2_1); mpoint_1.removePoint(1); com.esri.core.geometry.Point pt_1; pt_1 = mpoint_1.getPoint(0); NUnit.Framework.Assert.IsTrue(pt_1.getX() == pt0_1.getX() && pt_1.getY() == pt0_1 .getY()); pt_1 = mpoint_1.getPoint(1); NUnit.Framework.Assert.IsTrue(pt_1.getX() == pt2_1.getX() && pt_1.getY() == pt2_1 .getY()); NUnit.Framework.Assert.IsTrue(mpoint_1.getPointCount() == 2); }
public virtual void TestMultiPointAndMultiPoint2() { com.esri.core.geometry.MultiPoint basePl = new com.esri.core.geometry.MultiPoint(); basePl.Add(new com.esri.core.geometry.Point(-116, 20)); basePl.Add(new com.esri.core.geometry.Point(-118, 21)); com.esri.core.geometry.MultiPoint compPl = new com.esri.core.geometry.MultiPoint(); compPl.Add(new com.esri.core.geometry.Point(-116, 20)); compPl.Add(new com.esri.core.geometry.Point(-118, 21)); int noException = 1; // no exception com.esri.core.geometry.Geometry intersectGeom = null; try { intersectGeom = com.esri.core.geometry.GeometryEngine.Intersect(basePl, compPl, com.esri.core.geometry.SpatialReference.Create(4326)); } catch (System.Exception) { noException = 0; } NUnit.Framework.Assert.AreEqual(noException, 1); NUnit.Framework.Assert.IsNotNull(intersectGeom); NUnit.Framework.Assert.IsTrue(intersectGeom.GetType() == com.esri.core.geometry.Geometry.Type.MultiPoint); com.esri.core.geometry.MultiPoint ip = (com.esri.core.geometry.MultiPoint)intersectGeom; NUnit.Framework.Assert.AreEqual(ip.GetPoint(0).GetX(), -116, 0.1E7); NUnit.Framework.Assert.AreEqual(ip.GetPoint(0).GetY(), 20, 0.1E7); NUnit.Framework.Assert.AreEqual(ip.GetPoint(0).GetX(), -118, 0.1E7); NUnit.Framework.Assert.AreEqual(ip.GetPoint(0).GetY(), 21, 0.1E7); }
public virtual void TestMultiPointPointRelate() { com.esri.core.geometry.OperatorRelate op = (com.esri.core.geometry.OperatorRelate)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Relate)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); bool res; string scl; com.esri.core.geometry.MultiPoint m1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point p2 = new com.esri.core.geometry.Point(); m1.Add(0, 0); p2.SetXY(0, 0); scl = "T*F***F**"; res = op.Execute(m1, p2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); scl = "T*T***F**"; res = op.Execute(m1, p2, sr, scl, null); NUnit.Framework.Assert.IsTrue(!res); m1.Add(1, 1); res = op.Execute(m1, p2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); m1.SetEmpty(); m1.Add(1, 1); m1.Add(2, 2); scl = "FF0FFFTF2"; res = op.Execute(m1, p2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); }
public virtual void TestIsSimpleMultiPoint1() { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); // empty is simple result = simplifyOp.IsSimpleAsFeature(simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); }
public virtual void TestPolygonMultiPointRelate() { com.esri.core.geometry.OperatorRelate op = (com.esri.core.geometry.OperatorRelate)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Relate)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); bool res; string scl; com.esri.core.geometry.Polygon polygon1 = new com.esri.core.geometry.Polygon(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); polygon1.StartPath(0, 0); polygon1.LineTo(0, 10); polygon1.LineTo(10, 10); polygon1.LineTo(10, 0); multipoint2.Add(0, 0); multipoint2.Add(5, 5); scl = "TFT0F1FFT"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); scl = "T0FFFFT1T"; // transpose of above res = op.Execute(multipoint2, polygon1, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(11, 11); scl = "TFT0F10FT"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(0, 5); scl = "TFT0F10FT"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); scl = "TFF0F10FT"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(!res); polygon1.SetEmpty(); multipoint2.SetEmpty(); polygon1.StartPath(0, 0); polygon1.LineTo(0, 20); polygon1.LineTo(20, 20); polygon1.LineTo(20, 0); multipoint2.Add(3, 3); multipoint2.Add(5, 5); op.AccelerateGeometry(polygon1, sr, com.esri.core.geometry.Geometry.GeometryAccelerationDegree.enumHot); scl = "TF2FF****"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); polygon1.SetEmpty(); multipoint2.SetEmpty(); polygon1.StartPath(4, 0); polygon1.LineTo(0, 4); polygon1.LineTo(4, 8); polygon1.LineTo(8, 4); multipoint2.Add(8, 1); multipoint2.Add(8, 2); op.AccelerateGeometry(polygon1, sr, com.esri.core.geometry.Geometry.GeometryAccelerationDegree.enumHot); scl = "FF2FF10F2"; res = op.Execute(polygon1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); }
public static void TestCreation() { { // simple create com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); NUnit.Framework.Assert.IsTrue(mpoint.GetType() == Geometry.Type.MultiPoint); // assertFalse(mpoint.getClass() == Polyline.class); NUnit.Framework.Assert.IsTrue(mpoint != null); NUnit.Framework.Assert.IsTrue(mpoint.GetType() == com.esri.core.geometry.Geometry.Type.MultiPoint); NUnit.Framework.Assert.IsTrue(mpoint.IsEmpty()); NUnit.Framework.Assert.IsTrue(mpoint.GetPointCount() == 0); mpoint = null; NUnit.Framework.Assert.IsFalse(mpoint != null); } { // play with default attributes com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); SimpleTest(mpoint); } { // simple create 2D com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); NUnit.Framework.Assert.IsTrue(mpoint != null); com.esri.core.geometry.MultiPoint mpoint1 = new com.esri.core.geometry.MultiPoint(); NUnit.Framework.Assert.IsTrue(mpoint1 != null); mpoint.SetEmpty(); com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point(0, 0); mpoint.Add(pt); com.esri.core.geometry.Point pt3 = mpoint.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt3.GetX() == 0 && pt3.GetY() == 0); // assertFalse(mpoint->HasAttribute(VertexDescription::Semantics::Z)); // pt3.setZ(115.0); mpoint.SetPoint(0, pt3); pt3 = mpoint.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt3.GetX() == 0 && pt3.GetY() == 0); } { /* && pt3.getZ() == 115 */ // assertTrue(mpoint->HasAttribute(VertexDescription::Semantics::Z)); // CompareGeometryContent(mpoint, &pt, 1); // move 3d com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); NUnit.Framework.Assert.IsTrue(mpoint != null); com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point(0, 0); mpoint.Add(pt); com.esri.core.geometry.Point pt3 = mpoint.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt3.GetX() == 0 && pt3.GetY() == 0); } { /* && pt3.getZ() == 0 */ // test QueryInterval com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0); // pt1.setZ(-1.0); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 0.0); // pt2.setZ(1.0); mpoint.Add(pt1); mpoint.Add(pt2); // Envelope1D e = // mpoint->QueryInterval(enum_value2(VertexDescription, Semantics, // Z), 0); com.esri.core.geometry.Envelope e = new com.esri.core.geometry.Envelope(); mpoint.QueryEnvelope(e); } { // assertTrue(e.get == -1.0 && e.vmax == 1.0); com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // for (int i = 0; i < sz; i++) // geom.add(openString[i]); // CompareGeometryContent(geom, openString, sz); com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // Point point = GCNEW Point; // for (int i = 0; i < sz; i++) // { // point.setXY(openString[i]); // geom.add(point); // } // CompareGeometryContent(geom, openString, sz); // Test AddPoints com.esri.core.geometry.MultiPoint geom = new com.esri.core.geometry.MultiPoint(); } { // int sz = sizeof(openString) / sizeof(openString[0]); // geom.addPoints(openString, sz, 0, -1); // CompareGeometryContent((MultiVertexGeometry)geom, openString, // sz); // Test InsertPoint(Point2D) com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt0 = new com.esri.core.geometry.Point(0.0, 0.0); // pt0.setZ(-1.0); // pt0.setID(7); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(0.0, 0.0); // pt1.setZ(1.0); // pt1.setID(11); com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point(0.0, 1.0); // pt2.setZ(1.0); // pt2.setID(13); mpoint.Add(pt0); mpoint.Add(pt1); mpoint.Add(pt2); com.esri.core.geometry.Point pt3 = new com.esri.core.geometry.Point(-11.0, -13.0); mpoint.Add(pt3); mpoint.InsertPoint(1, pt3); NUnit.Framework.Assert.IsTrue(mpoint.GetPointCount() == 5); com.esri.core.geometry.Point pt; pt = mpoint.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt0.GetX() && pt.GetY() == pt0.GetY()); /* * && * pt. * getZ * () == * pt0 * .getZ * () */ pt = mpoint.GetPoint(1); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt3.GetX() && pt.GetY() == pt3.GetY()); pt = mpoint.GetPoint(2); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt1.GetX() && pt.GetY() == pt1.GetY()); /* * && * pt. * getZ * () == * pt1 * .getZ * () */ pt = mpoint.GetPoint(3); NUnit.Framework.Assert.IsTrue(pt.GetX() == pt2.GetX() && pt.GetY() == pt2.GetY()); /* * && * pt. * getZ * () == * pt2 * .getZ * () */ com.esri.core.geometry.Point point = new com.esri.core.geometry.Point(); point.SetXY(17.0, 19.0); // point.setID(12); // point.setM(5); mpoint.InsertPoint(2, point); mpoint.Add(point); NUnit.Framework.Assert.IsTrue(mpoint.GetPointCount() == 7); } // double m; // int id; // pt = mpoint.getXYZ(2); // assertTrue(pt.x == 17.0 && pt.y == 19.0 && pt.z == defaultZ); // m = mpoint.getAttributeAsDbl(enum_value2(VertexDescription, // Semantics, M), 2, 0); // assertTrue(m == 5); // id = mpoint.getAttributeAsInt(enum_value2(VertexDescription, // Semantics, ID), 2, 0); // assertTrue(id == 23); // // pt = mpoint.getXYZ(3); // assertTrue(pt.x == pt1.x && pt.y == pt1.y && pt.z == pt1.z); // m = mpoint.getAttributeAsDbl(enum_value2(VertexDescription, // Semantics, M), 3, 0); // assertTrue(NumberUtils::IsNaN(m)); // id = mpoint.getAttributeAsInt(enum_value2(VertexDescription, // Semantics, ID), 3, 0); // assertTrue(id == 11); com.esri.core.geometry.MultiPoint mpoint_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt0_1 = new com.esri.core.geometry.Point(0.0, 0.0, -1.0); com.esri.core.geometry.Point pt1_1 = new com.esri.core.geometry.Point(0.0, 0.0, 1.0); com.esri.core.geometry.Point pt2_1 = new com.esri.core.geometry.Point(0.0, 1.0, 1.0); mpoint_1.Add(pt0_1); mpoint_1.Add(pt1_1); mpoint_1.Add(pt2_1); mpoint_1.RemovePoint(1); com.esri.core.geometry.Point pt_1; pt_1 = mpoint_1.GetPoint(0); NUnit.Framework.Assert.IsTrue(pt_1.GetX() == pt0_1.GetX() && pt_1.GetY() == pt0_1.GetY()); pt_1 = mpoint_1.GetPoint(1); NUnit.Framework.Assert.IsTrue(pt_1.GetX() == pt2_1.GetX() && pt_1.GetY() == pt2_1.GetY()); NUnit.Framework.Assert.IsTrue(mpoint_1.GetPointCount() == 2); }
public virtual void TestPolylineMultiPointRelate() { com.esri.core.geometry.OperatorRelate op = com.esri.core.geometry.OperatorRelate.Local(); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); bool res; string scl; com.esri.core.geometry.Polyline polyline1 = new com.esri.core.geometry.Polyline(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); polyline1.StartPath(0, 0); polyline1.LineTo(10, 0); multipoint2.Add(0, 0); multipoint2.Add(5, 5); scl = "FF10F00F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(5, 0); scl = "0F10F00F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); scl = "0F11F00F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(!res); polyline1.SetEmpty(); multipoint2.SetEmpty(); polyline1.StartPath(4, 0); polyline1.LineTo(0, 4); polyline1.LineTo(4, 8); polyline1.LineTo(8, 4); polyline1.LineTo(4, 0); // has no boundary multipoint2.Add(8, 1); multipoint2.Add(8, 2); op.AccelerateGeometry(polyline1, sr, com.esri.core.geometry.Geometry.GeometryAccelerationDegree.enumHot); scl = "FF1FFF0F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); polyline1.SetEmpty(); multipoint2.SetEmpty(); polyline1.StartPath(4, 0); polyline1.LineTo(4, 0); multipoint2.Add(8, 1); multipoint2.Add(8, 2); scl = "FF0FFF0F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(-2, 0); res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); op.AccelerateGeometry(polyline1, sr, com.esri.core.geometry.Geometry.GeometryAccelerationDegree.enumHot); res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); polyline1.SetEmpty(); multipoint2.SetEmpty(); polyline1.StartPath(10, 10); polyline1.LineTo(10, 10); multipoint2.Add(10, 10); scl = "0FFFFFFF2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); polyline1.StartPath(12, 12); polyline1.LineTo(12, 12); scl = "0F0FFFFF2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); polyline1.SetEmpty(); multipoint2.SetEmpty(); polyline1.StartPath(10, 10); polyline1.LineTo(10, 10); multipoint2.Add(0, 0); scl = "FF0FFF0F2"; res = op.Execute(polyline1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); }
public static com.esri.core.geometry.MultiPoint MakeMultiPoint2() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point(); pt1.SetX(0.0); pt1.SetY(0.0); pt1.SetZ(-1.0); mpoint.Add(pt1); return mpoint; }
public virtual void TestMultiPointMultipointRelate() { com.esri.core.geometry.OperatorRelate op = (com.esri.core.geometry.OperatorRelate)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Relate)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); bool res; string scl; com.esri.core.geometry.MultiPoint multipoint1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); multipoint1.Add(0, 0); multipoint2.Add(0, 0); scl = "TFFFFFFF2"; res = op.Execute(multipoint1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(5, 5); scl = "TFFFFFTF2"; res = op.Execute(multipoint1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); multipoint1.Add(-5, 0); scl = "0FTFFFTF2"; res = op.Execute(multipoint1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); res = com.esri.core.geometry.GeometryEngine.Relate(multipoint1, multipoint2, sr, scl); NUnit.Framework.Assert.IsTrue(res); multipoint1.SetEmpty(); multipoint2.SetEmpty(); multipoint1.Add(0, 0); multipoint2.Add(1, 1); scl = "FFTFFF0FT"; res = op.Execute(multipoint1, multipoint2, sr, scl, null); NUnit.Framework.Assert.IsTrue(res); }
public virtual void TestEqualsOnMultiPoints() { com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(4326); com.esri.core.geometry.MultiPoint baseMp = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.MultiPoint compMp = new com.esri.core.geometry.MultiPoint(); baseMp.Add(new com.esri.core.geometry.Point(-116, 40)); baseMp.Add(new com.esri.core.geometry.Point(-120, 39)); baseMp.Add(new com.esri.core.geometry.Point(-121, 10)); baseMp.Add(new com.esri.core.geometry.Point(-130, 12)); baseMp.Add(new com.esri.core.geometry.Point(-108, 25)); compMp.Add(new com.esri.core.geometry.Point(-116, 40)); compMp.Add(new com.esri.core.geometry.Point(-120, 39)); compMp.Add(new com.esri.core.geometry.Point(-121, 10)); compMp.Add(new com.esri.core.geometry.Point(-130, 12)); compMp.Add(new com.esri.core.geometry.Point(-108, 25)); bool isEqual; try { isEqual = com.esri.core.geometry.GeometryEngine.Equals(baseMp, compMp, sr); } catch (System.ArgumentException) { isEqual = false; } NUnit.Framework.Assert.IsTrue(isEqual); }
public virtual void TestMultiPointPointEquals() { com.esri.core.geometry.OperatorEquals equals = (com.esri.core.geometry.OperatorEquals)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Equals)); com.esri.core.geometry.OperatorWithin within = (com.esri.core.geometry.OperatorWithin)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Within)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(102100); double tolerance = sr.GetTolerance(com.esri.core.geometry.VertexDescription.Semantics.POSITION); com.esri.core.geometry.MultiPoint multipoint1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point point2 = new com.esri.core.geometry.Point(); multipoint1.Add(2, 2); multipoint1.Add(2, 2); point2.SetXY(2, 2); WiggleGeometry(multipoint1, 0.001, 123); bool res = equals.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = equals.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); res = within.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = within.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); multipoint1.Add(4, 4); res = equals.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = equals.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = within.Execute(multipoint1, point2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = within.Execute(point2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); }
public static void testDifferenceAndSymmetricDifference() { com.esri.core.geometry.OperatorFactoryLocal engine = com.esri.core.geometry.OperatorFactoryLocal .getInstance(); com.esri.core.geometry.OperatorDifference differenceOp = (com.esri.core.geometry.OperatorDifference )engine.getOperator(com.esri.core.geometry.Operator.Type.Difference); com.esri.core.geometry.SpatialReference spatialRef = com.esri.core.geometry.SpatialReference .create(102113); com.esri.core.geometry.Polygon polygon1 = makePolygon1(); com.esri.core.geometry.Polygon polygon2 = makePolygon2(); com.esri.core.geometry.Polyline polyline1 = makePolyline1(); com.esri.core.geometry.MultiPoint multipoint1 = makeMultiPoint1(); com.esri.core.geometry.MultiPoint multipoint2 = makeMultiPoint2(); com.esri.core.geometry.MultiPoint multipoint3 = makeMultiPoint3(); com.esri.core.geometry.Point point1 = makePoint1(); com.esri.core.geometry.Point point2 = makePoint2(); com.esri.core.geometry.Envelope envelope1 = makeEnvelope1(); com.esri.core.geometry.Envelope envelope2 = makeEnvelope2(); com.esri.core.geometry.Envelope envelope3 = makeEnvelope3(); com.esri.core.geometry.Polygon outputPolygon = (com.esri.core.geometry.Polygon)differenceOp .execute(polygon1, polygon2, spatialRef, null); double area = outputPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 75) <= 0.001); { com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(-130, 10); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(-130, 10); com.esri.core.geometry.Geometry baseGeom = new com.esri.core.geometry.Point(point_1 .getX(), point_1.getY()); com.esri.core.geometry.Geometry comparisonGeom = new com.esri.core.geometry.Point (point_2.getX(), point2.getY()); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference .create(4326); com.esri.core.geometry.Geometry geom = differenceOp.execute(baseGeom, comparisonGeom , sr, null); } com.esri.core.geometry.OperatorSymmetricDifference symDifferenceOp = (com.esri.core.geometry.OperatorSymmetricDifference )engine.getOperator(com.esri.core.geometry.Operator.Type.SymmetricDifference); outputPolygon = (com.esri.core.geometry.Polygon)symDifferenceOp.execute(polygon1, polygon2, spatialRef, null); area = outputPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 150) <= 0.001); com.esri.core.geometry.Polyline outputPolyline = (com.esri.core.geometry.Polyline )differenceOp.execute(polyline1, polygon1, spatialRef, null); double length = outputPolyline.calculateLength2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(length * length - 50) < 0.001); com.esri.core.geometry.MultiPoint outputMultiPoint = (com.esri.core.geometry.MultiPoint )differenceOp.execute(multipoint1, polygon1, spatialRef, null); int pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 1); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(symDifferenceOp.execute(multipoint1 , point1, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 2); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(symDifferenceOp.execute(multipoint1 , point2, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 4); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(differenceOp.execute(multipoint1 , point1, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 2); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(differenceOp.execute(multipoint1 , point2, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 3); outputPolygon = (com.esri.core.geometry.Polygon)(differenceOp.execute(polygon1, envelope1 , spatialRef, null)); area = outputPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 75) <= 0.001); outputPolygon = (com.esri.core.geometry.Polygon)(differenceOp.execute(polygon2, envelope2 , spatialRef, null)); area = outputPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 75) <= 0.001); outputPolyline = (com.esri.core.geometry.Polyline)(differenceOp.execute(polyline1 , envelope2, spatialRef, null)); length = outputPolyline.calculateLength2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(length * length - 50) <= 0.001); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(differenceOp.execute(multipoint1 , envelope2, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 1); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(differenceOp.execute(multipoint2 , envelope2, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 6); outputMultiPoint = (com.esri.core.geometry.MultiPoint)(differenceOp.execute(multipoint3 , envelope2, spatialRef, null)); pointCount = outputMultiPoint.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 0); com.esri.core.geometry.Point outputPoint = (com.esri.core.geometry.Point)(differenceOp .execute(point1, envelope2, spatialRef, null)); NUnit.Framework.Assert.IsTrue(!outputPoint.isEmpty()); outputPoint = (com.esri.core.geometry.Point)(differenceOp.execute(point2, envelope2 , spatialRef, null)); NUnit.Framework.Assert.IsTrue(outputPoint.isEmpty()); outputPolygon = (com.esri.core.geometry.Polygon)(differenceOp.execute(envelope3, envelope2, spatialRef, null)); NUnit.Framework.Assert.IsTrue(outputPolygon != null && outputPolygon.isEmpty()); outputPolygon = (com.esri.core.geometry.Polygon)(symDifferenceOp.execute(envelope3 , envelope3, spatialRef, null)); NUnit.Framework.Assert.IsTrue(outputPolygon != null && outputPolygon.isEmpty()); outputPoint = (com.esri.core.geometry.Point)(differenceOp.execute(point1, polygon1 , spatialRef, null)); NUnit.Framework.Assert.IsTrue(outputPoint != null); }
public virtual void TestPolylineMultiPointDisjoint() { com.esri.core.geometry.OperatorDisjoint disjoint = (com.esri.core.geometry.OperatorDisjoint)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Disjoint)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(102100); double tolerance = sr.GetTolerance(com.esri.core.geometry.VertexDescription.Semantics.POSITION); com.esri.core.geometry.Polyline polyline1 = new com.esri.core.geometry.Polyline(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); polyline1.StartPath(0, 0); polyline1.LineTo(2, 0); polyline1.LineTo(4, 2); multipoint2.Add(1, 1); multipoint2.Add(2, 2); multipoint2.Add(3, 0); bool res = disjoint.Execute(polyline1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = disjoint.Execute(multipoint2, polyline1, sr, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(3, 1); res = disjoint.Execute(polyline1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = disjoint.Execute(multipoint2, polyline1, sr, null); NUnit.Framework.Assert.IsTrue(!res); polyline1.StartPath(1, -4); polyline1.LineTo(1, -3); polyline1.LineTo(1, -2); polyline1.LineTo(1, -1); polyline1.LineTo(1, 0); polyline1.LineTo(1, 1); disjoint.AccelerateGeometry(polyline1, sr, com.esri.core.geometry.Geometry.GeometryAccelerationDegree.enumHot); res = disjoint.Execute(polyline1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = disjoint.Execute(multipoint2, polyline1, sr, null); NUnit.Framework.Assert.IsTrue(!res); }
public virtual void testMultiPoint() { com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.add(new com.esri.core.geometry.Point(100, 200)); mp.add(new com.esri.core.geometry.Point(101, 201)); mp.add(new com.esri.core.geometry.Point(102, 202)); NUnit.Framework.Assert.IsFalse(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .M)); mp.addAttribute(com.esri.core.geometry.VertexDescription.Semantics.M); NUnit.Framework.Assert.IsTrue(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .M)); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 0, 0))); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 1, 0))); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 2, 0))); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.M, 0, 0, 1); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.M, 1, 0, 2); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.M, 2, 0, 3); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 0, 0) == 1); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 1, 0) == 2); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 2, 0) == 3); NUnit.Framework.Assert.IsFalse(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .Z)); mp.addAttribute(com.esri.core.geometry.VertexDescription.Semantics.Z); NUnit.Framework.Assert.IsTrue(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .Z)); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 0); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 0); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 0); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.Z, 0, 0, 11); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.Z, 1, 0, 21); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.Z, 2, 0, 31); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 0, 0) == 1); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 1, 0) == 2); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 2, 0) == 3); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 11); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 21); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 31); NUnit.Framework.Assert.IsFalse(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .ID)); mp.addAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID); NUnit.Framework.Assert.IsTrue(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .ID)); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 0, 0) == 0); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 1, 0) == 0); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 2, 0) == 0); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 0, 0, -11); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 1, 0, -21); mp.setAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 2, 0, -31); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 0, 0) == 1); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 1, 0) == 2); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 2, 0) == 3); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 11); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 21); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 31); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 0, 0) == -11); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 1, 0) == -21); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 2, 0) == -31); mp.dropAttribute(com.esri.core.geometry.VertexDescription.Semantics.M); NUnit.Framework.Assert.IsFalse(mp.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .M)); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 11); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 21); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 31); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 0, 0) == -11); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 1, 0) == -21); NUnit.Framework.Assert.IsTrue(mp.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 2, 0) == -31); com.esri.core.geometry.MultiPoint mp1 = new com.esri.core.geometry.MultiPoint(); mp.copyTo(mp1); NUnit.Framework.Assert.IsFalse(mp1.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .M)); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 11); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 21); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 31); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 0, 0) == -11); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 1, 0) == -21); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 2, 0) == -31); mp1.dropAllAttributes(); mp1.mergeVertexDescription(mp.getDescription()); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0) == 0); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 1, 0) == 0); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 2, 0) == 0); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 0, 0))); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 1, 0))); NUnit.Framework.Assert.IsTrue(double.IsNaN(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .M, 2, 0))); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 0, 0) == 0); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 1, 0) == 0); NUnit.Framework.Assert.IsTrue(mp1.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .ID, 2, 0) == 0); }
public virtual void TestIsSimpleMultiPoint2FarApart() { // Two point test: far apart com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint(); mp.Add(20, 10); mp.Add(100, 100); bool result = simplifyOp.IsSimpleAsFeature(mp, sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); result = simplifyOp.IsSimpleAsFeature(simplifyOp.Execute(mp, sr4326, false, null), sr4326, false, null, null); NUnit.Framework.Assert.IsTrue(result); NUnit.Framework.Assert.IsTrue(mp.GetPointCount() == 2); }
public static void TestPointTypes() { com.esri.core.geometry.OperatorFactoryLocal engine = com.esri.core.geometry.OperatorFactoryLocal.GetInstance(); com.esri.core.geometry.OperatorDifference difference = (com.esri.core.geometry.OperatorDifference)engine.GetOperator(com.esri.core.geometry.Operator.Type.Difference); com.esri.core.geometry.OperatorSymmetricDifference sym_difference = (com.esri.core.geometry.OperatorSymmetricDifference)engine.GetOperator(com.esri.core.geometry.Operator.Type.SymmetricDifference); { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.SetXY(0, 0); point_2.SetXY(0.000000009, 0.000000009); com.esri.core.geometry.Point differenced = (com.esri.core.geometry.Point)(difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced.IsEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint)(sym_difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.IsEmpty()); } { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.SetXY(0, 0); point_2.SetXY(0.000000009, 0.0); com.esri.core.geometry.Point differenced = (com.esri.core.geometry.Point)(difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced.IsEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint)(sym_difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.IsEmpty()); } { // point/point com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); point_1.SetXY(0, 0); point_2.SetXY(0.00000002, 0.00000002); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference.Execute(point_2, point_1, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_2.IsEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint)(sym_difference.Execute(point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!sym_differenced.IsEmpty()); NUnit.Framework.Assert.IsTrue(sym_differenced.GetXY(0).x == 0 && sym_differenced.GetXY(0).y == 0); NUnit.Framework.Assert.IsTrue(sym_differenced.GetXY(1).x == 0.00000002 && sym_differenced.GetXY(1).y == 0.00000002); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.Add(0, 0); multi_point_1.Add(1, 1); point_2.SetXY(0.000000009, 0.000000009); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.GetPointCount() == 1); NUnit.Framework.Assert.IsTrue(differenced_1.GetXY(0).x == 1 && differenced_1.GetXY(0).y == 1); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference.Execute(point_2, multi_point_1, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_2.IsEmpty()); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.Add(0, 0); multi_point_1.Add(1, 1); point_2.SetXY(0.000000009, 0.0); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.GetXY(0).x == 1.0 && differenced_1.GetXY(0).y == 1.0); com.esri.core.geometry.Point differenced_2 = (com.esri.core.geometry.Point)(difference.Execute(point_2, multi_point_1, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_2.IsEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint)(sym_difference.Execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!sym_differenced.IsEmpty()); NUnit.Framework.Assert.IsTrue(sym_differenced.GetPointCount() == 1); NUnit.Framework.Assert.IsTrue(sym_differenced.GetXY(0).x == 1 && sym_differenced.GetXY(0).y == 1); } { // multi_point/point com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point point_2 = new com.esri.core.geometry.Point(); multi_point_1.Add(0, 0); multi_point_1.Add(0, 0); point_2.SetXY(0.000000009, 0.0); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); com.esri.core.geometry.MultiPoint sym_differenced = (com.esri.core.geometry.MultiPoint)(sym_difference.Execute(multi_point_1, point_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(sym_differenced.IsEmpty()); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.Add(0, 0); multi_point_1.Add(0, 0); multi_point_1.Add(2, 2); polygon_2.StartPath(-1, -1); polygon_2.LineTo(-1, 1); polygon_2.LineTo(1, 1); polygon_2.LineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1.GetPointCount() == 1); NUnit.Framework.Assert.IsTrue(differenced_1.GetXY(0).x == 2 && differenced_1.GetXY(0).y == 2); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.Add(0, 0); multi_point_1.Add(0, 0); multi_point_1.Add(1, 1); polygon_2.StartPath(-1, -1); polygon_2.LineTo(-1, 1); polygon_2.LineTo(1, 1); polygon_2.LineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); } { // multi_point/envelope com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Envelope envelope_2 = new com.esri.core.geometry.Envelope(); multi_point_1.Add(-2, 0); multi_point_1.Add(0, 2); multi_point_1.Add(2, 0); multi_point_1.Add(0, -2); envelope_2.SetCoords(-1, -1, 1, 1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, envelope_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty() && differenced_1 == multi_point_1); } { // multi_point/polygon com.esri.core.geometry.MultiPoint multi_point_1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); multi_point_1.Add(2, 2); multi_point_1.Add(2, 2); multi_point_1.Add(-2, -2); polygon_2.StartPath(-1, -1); polygon_2.LineTo(-1, 1); polygon_2.LineTo(1, 1); polygon_2.LineTo(1, -1); com.esri.core.geometry.MultiPoint differenced_1 = (com.esri.core.geometry.MultiPoint)(difference.Execute(multi_point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty() && differenced_1 == multi_point_1); } { // point/polygon com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); point_1.SetXY(0, 0); polygon_2.StartPath(-1, -1); polygon_2.LineTo(-1, 1); polygon_2.LineTo(1, 1); polygon_2.LineTo(1, -1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); polygon_2.SetEmpty(); polygon_2.StartPath(1, 1); polygon_2.LineTo(1, 2); polygon_2.LineTo(2, 2); polygon_2.LineTo(2, 1); differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } { // point/polygon com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polygon polygon_2 = new com.esri.core.geometry.Polygon(); point_1.SetXY(0, 0); polygon_2.StartPath(1, 0); polygon_2.LineTo(0, 1); polygon_2.LineTo(1, 1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); point_1.SetEmpty(); point_1.SetXY(0.5, 0.5); polygon_2.SetEmpty(); polygon_2.StartPath(1, 0); polygon_2.LineTo(0, 1); polygon_2.LineTo(1, 1); differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polygon_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); } { // point/envelope com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Envelope envelope_2 = new com.esri.core.geometry.Envelope(); point_1.SetXY(0, 0); envelope_2.SetCoords(-1, -1, 1, 1); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, envelope_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); envelope_2.SetEmpty(); envelope_2.SetCoords(1, 1, 2, 2); differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, envelope_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } { // point/polyline com.esri.core.geometry.Point point_1 = new com.esri.core.geometry.Point(); com.esri.core.geometry.Polyline polyline_2 = new com.esri.core.geometry.Polyline(); point_1.SetXY(0, 0); polyline_2.StartPath(-1, 0); polyline_2.LineTo(1, 0); com.esri.core.geometry.Point differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polyline_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(differenced_1.IsEmpty()); polyline_2.SetEmpty(); polyline_2.StartPath(1, 0); polyline_2.LineTo(2, 0); differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polyline_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); polyline_2.SetEmpty(); polyline_2.StartPath(-1, -1); polyline_2.LineTo(-1, 1); polyline_2.LineTo(1, 1); polyline_2.LineTo(1, -1); differenced_1 = (com.esri.core.geometry.Point)(difference.Execute(point_1, polyline_2, com.esri.core.geometry.SpatialReference.Create(4326), null)); NUnit.Framework.Assert.IsTrue(!differenced_1.IsEmpty()); NUnit.Framework.Assert.IsTrue(differenced_1 == point_1); } }
public static void testClipGeometries() { // RandomTest(); com.esri.core.geometry.OperatorFactoryLocal engine = com.esri.core.geometry.OperatorFactoryLocal .getInstance(); com.esri.core.geometry.OperatorClip clipOp = (com.esri.core.geometry.OperatorClip )engine.getOperator(com.esri.core.geometry.Operator.Type.Clip); com.esri.core.geometry.Polygon polygon = makePolygon(); com.esri.core.geometry.SimpleGeometryCursor polygonCurs = new com.esri.core.geometry.SimpleGeometryCursor (polygon); com.esri.core.geometry.Polyline polyline = makePolyline(); com.esri.core.geometry.SimpleGeometryCursor polylineCurs = new com.esri.core.geometry.SimpleGeometryCursor (polyline); com.esri.core.geometry.MultiPoint multipoint = makeMultiPoint(); com.esri.core.geometry.SimpleGeometryCursor multipointCurs = new com.esri.core.geometry.SimpleGeometryCursor (multipoint); com.esri.core.geometry.Point point = makePoint(); com.esri.core.geometry.SimpleGeometryCursor pointCurs = new com.esri.core.geometry.SimpleGeometryCursor (point); com.esri.core.geometry.SpatialReference spatialRef = com.esri.core.geometry.SpatialReference .create(3857); com.esri.core.geometry.Envelope2D envelope = new com.esri.core.geometry.Envelope2D (); envelope.xmin = 0; envelope.xmax = 20; envelope.ymin = 5; envelope.ymax = 15; // Cursor implementation com.esri.core.geometry.GeometryCursor clipPolygonCurs = clipOp.execute(polygonCurs , envelope, spatialRef, null); com.esri.core.geometry.Polygon clippedPolygon = (com.esri.core.geometry.Polygon)clipPolygonCurs .next(); double area = clippedPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 25) < 0.00001); // Single Geometry implementation clippedPolygon = (com.esri.core.geometry.Polygon)clipOp.execute(polygon, envelope , spatialRef, null); area = clippedPolygon.calculateArea2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(area - 25) < 0.00001); // Cursor implementation com.esri.core.geometry.GeometryCursor clipPolylineCurs = clipOp.execute(polylineCurs , envelope, spatialRef, null); com.esri.core.geometry.Polyline clippedPolyline = (com.esri.core.geometry.Polyline )clipPolylineCurs.next(); double length = clippedPolyline.calculateLength2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(length - 10 * System.Math.sqrt(2.0) ) < 1e-10); // Single Geometry implementation clippedPolyline = (com.esri.core.geometry.Polyline)clipOp.execute(polyline, envelope , spatialRef, null); length = clippedPolyline.calculateLength2D(); NUnit.Framework.Assert.IsTrue(System.Math.abs(length - 10 * System.Math.sqrt(2.0) ) < 1e-10); // Cursor implementation com.esri.core.geometry.GeometryCursor clipMulti_pointCurs = clipOp.execute(multipointCurs , envelope, spatialRef, null); com.esri.core.geometry.MultiPoint clipped_multi_point = (com.esri.core.geometry.MultiPoint )clipMulti_pointCurs.next(); int pointCount = clipped_multi_point.getPointCount(); NUnit.Framework.Assert.IsTrue(pointCount == 2); // Cursor implementation com.esri.core.geometry.GeometryCursor clipPointCurs = clipOp.execute(pointCurs, envelope , spatialRef, null); com.esri.core.geometry.Point clippedPoint = (com.esri.core.geometry.Point)clipPointCurs .next(); NUnit.Framework.Assert.IsTrue(clippedPoint != null); // RandomTest(); com.esri.core.geometry.Polyline _poly = new com.esri.core.geometry.Polyline(); _poly.startPath(2, 2); _poly.lineTo(0, 0); com.esri.core.geometry.Envelope2D _env = new com.esri.core.geometry.Envelope2D(); _env.setCoords(2, 1, 5, 3); com.esri.core.geometry.Polyline _clippedPolyline = (com.esri.core.geometry.Polyline )clipOp.execute(_poly, _env, spatialRef, null); NUnit.Framework.Assert.IsTrue(_clippedPolyline.isEmpty()); { com.esri.core.geometry.Polygon poly = new com.esri.core.geometry.Polygon(); poly.addEnvelope(new com.esri.core.geometry.Envelope2D(0, 0, 100, 100), false); poly.addEnvelope(new com.esri.core.geometry.Envelope2D(5, 5, 95, 95), true); com.esri.core.geometry.Polygon clippedPoly = (com.esri.core.geometry.Polygon)clipOp .execute(poly, new com.esri.core.geometry.Envelope2D(-10, -10, 110, 50), spatialRef , null); NUnit.Framework.Assert.IsTrue(clippedPoly.getPathCount() == 1); NUnit.Framework.Assert.IsTrue(clippedPoly.getPointCount() == 8); } }
public static com.esri.core.geometry.MultiPoint MakeMultiPoint3() { com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.Point2D pt1 = new com.esri.core.geometry.Point2D(); pt1.x = 1.0; pt1.y = 1.0; com.esri.core.geometry.Point2D pt2 = new com.esri.core.geometry.Point2D(); pt2.x = 5.0; pt2.y = 5.0; mpoint.Add(pt1.x, pt1.y); mpoint.Add(pt2.x, pt2.y); return mpoint; }
public virtual void TestMultiPointMultiPointOverlaps() { com.esri.core.geometry.OperatorOverlaps overlaps = (com.esri.core.geometry.OperatorOverlaps)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Overlaps)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(102100); double tolerance = sr.GetTolerance(com.esri.core.geometry.VertexDescription.Semantics.POSITION); com.esri.core.geometry.MultiPoint multipoint1 = new com.esri.core.geometry.MultiPoint(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); multipoint1.Add(4, 4); multipoint1.Add(6, 4); multipoint2.Add(6, 2); multipoint2.Add(2, 6); bool res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); multipoint1.Add(10, 10); multipoint2.Add(6, 2); res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); multipoint1.Add(6, 2); res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); multipoint1.Add(2, 6); res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); multipoint2.Add(1, 1); res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(10, 10); multipoint2.Add(4, 4); multipoint2.Add(6, 4); res = overlaps.Execute(multipoint1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = overlaps.Execute(multipoint2, multipoint1, sr, null); NUnit.Framework.Assert.IsTrue(!res); }
/// <exception cref="org.codehaus.jackson.JsonParseException"/> /// <exception cref="System.IO.IOException"/> internal virtual bool testMultiPoint() { bool bAnswer = true; com.esri.core.geometry.MultiPoint multiPoint1 = new com.esri.core.geometry.MultiPoint (); multiPoint1.add(-97.06138, 32.837); multiPoint1.add(-97.06133, 32.836); multiPoint1.add(-97.06124, 32.834); multiPoint1.add(-97.06127, 32.832); { string s = com.esri.core.geometry.GeometryEngine.geometryToJson(spatialReferenceWGS84 , multiPoint1); org.codehaus.jackson.JsonParser mPointWgs84Parser = factory.createJsonParser(s); com.esri.core.geometry.MapGeometry mPointWgs84MP = com.esri.core.geometry.GeometryEngine .jsonToGeometry(mPointWgs84Parser); NUnit.Framework.Assert.IsTrue(multiPoint1.getPointCount() == ((com.esri.core.geometry.MultiPoint )mPointWgs84MP.getGeometry()).getPointCount()); NUnit.Framework.Assert.IsTrue(multiPoint1.getPoint(0).getX() == ((com.esri.core.geometry.MultiPoint )mPointWgs84MP.getGeometry()).getPoint(0).getX()); NUnit.Framework.Assert.IsTrue(multiPoint1.getPoint(0).getY() == ((com.esri.core.geometry.MultiPoint )mPointWgs84MP.getGeometry()).getPoint(0).getY()); int lastIndex = multiPoint1.getPointCount() - 1; NUnit.Framework.Assert.IsTrue(multiPoint1.getPoint(lastIndex).getX() == ((com.esri.core.geometry.MultiPoint )mPointWgs84MP.getGeometry()).getPoint(lastIndex).getX()); NUnit.Framework.Assert.IsTrue(multiPoint1.getPoint(lastIndex).getY() == ((com.esri.core.geometry.MultiPoint )mPointWgs84MP.getGeometry()).getPoint(lastIndex).getY()); NUnit.Framework.Assert.IsTrue(spatialReferenceWGS84.getID() == mPointWgs84MP.getSpatialReference ().getID()); if (!checkResultSpatialRef(mPointWgs84MP, 4326, 0)) { bAnswer = false; } } { com.esri.core.geometry.MultiPoint p = new com.esri.core.geometry.MultiPoint(); p.addAttribute(com.esri.core.geometry.VertexDescription.Semantics.Z); p.addAttribute(com.esri.core.geometry.VertexDescription.Semantics.M); string s = com.esri.core.geometry.GeometryEngine.geometryToJson(spatialReferenceWebMerc1 , p); NUnit.Framework.Assert.IsTrue(s.Equals("{\"hasZ\":true,\"hasM\":true,\"points\":[],\"spatialReference\":{\"wkid\":102100,\"latestWkid\":3857}}" )); p.add(10.0, 20.0, 30.0); p.add(20.0, 40.0, 60.0); s = com.esri.core.geometry.GeometryEngine.geometryToJson(spatialReferenceWebMerc1 , p); NUnit.Framework.Assert.IsTrue(s.Equals("{\"hasZ\":true,\"hasM\":true,\"points\":[[10,20,30,null],[20,40,60,null]],\"spatialReference\":{\"wkid\":102100,\"latestWkid\":3857}}" )); } { string points = "{\"hasM\" : false, \"hasZ\" : true, \"uncle remus\" : null, \"points\" : [ [0,0,1], [0.0,10.0,1], [10.0,10.0,1], [10.0,0.0,1, 6666] ],\"spatialReference\" : {\"wkid\" : 4326}}"; com.esri.core.geometry.MapGeometry mp = com.esri.core.geometry.GeometryEngine.jsonToGeometry (factory.createJsonParser(points)); com.esri.core.geometry.MultiPoint multipoint = (com.esri.core.geometry.MultiPoint )mp.getGeometry(); NUnit.Framework.Assert.IsTrue(multipoint.getPointCount() == 4); com.esri.core.geometry.Point2D point2d; point2d = multipoint.getXY(0); NUnit.Framework.Assert.IsTrue(point2d.x == 0.0 && point2d.y == 0.0); point2d = multipoint.getXY(1); NUnit.Framework.Assert.IsTrue(point2d.x == 0.0 && point2d.y == 10.0); point2d = multipoint.getXY(2); NUnit.Framework.Assert.IsTrue(point2d.x == 10.0 && point2d.y == 10.0); point2d = multipoint.getXY(3); NUnit.Framework.Assert.IsTrue(point2d.x == 10.0 && point2d.y == 0.0); NUnit.Framework.Assert.IsTrue(multipoint.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .Z)); NUnit.Framework.Assert.IsTrue(!multipoint.hasAttribute(com.esri.core.geometry.VertexDescription.Semantics .M)); double z = multipoint.getAttributeAsDbl(com.esri.core.geometry.VertexDescription.Semantics .Z, 0, 0); NUnit.Framework.Assert.IsTrue(z == 1); com.esri.core.geometry.SpatialReference spatial_reference = mp.getSpatialReference (); NUnit.Framework.Assert.IsTrue(spatial_reference.getID() == 4326); } return(bAnswer); }
public virtual void TestPolygonMultiPointWithin() { com.esri.core.geometry.OperatorWithin within = (com.esri.core.geometry.OperatorWithin)(com.esri.core.geometry.OperatorFactoryLocal.GetInstance().GetOperator(com.esri.core.geometry.Operator.Type.Within)); com.esri.core.geometry.SpatialReference sr = com.esri.core.geometry.SpatialReference.Create(102100); double tolerance = sr.GetTolerance(com.esri.core.geometry.VertexDescription.Semantics.POSITION); com.esri.core.geometry.Polygon polygon1 = new com.esri.core.geometry.Polygon(); com.esri.core.geometry.MultiPoint multipoint2 = new com.esri.core.geometry.MultiPoint(); polygon1.StartPath(0, 0); polygon1.LineTo(0, 10); polygon1.LineTo(10, 10); polygon1.LineTo(10, 0); multipoint2.Add(5, 0); multipoint2.Add(5, 10); multipoint2.Add(5, 5); bool res = within.Execute(polygon1, multipoint2, sr, null); NUnit.Framework.Assert.IsTrue(!res); res = within.Execute(multipoint2, polygon1, sr, null); NUnit.Framework.Assert.IsTrue(res); multipoint2.Add(5, 11); res = within.Execute(multipoint2, polygon1, sr, null); NUnit.Framework.Assert.IsTrue(!res); }