Author: simoneg
Date: Wed Sep 14 16:53:42 2011
New Revision: 1170710

URL: http://svn.apache.org/viewvc?rev=1170710&view=rev
Log:
Added some basic shape geometry calcs tests

Added:
    labs/magma/trunk/beans-map/src/test/java/org/
    labs/magma/trunk/beans-map/src/test/java/org/apache/
    labs/magma/trunk/beans-map/src/test/java/org/apache/magma/
    labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/
    
labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/TestGeomery.java

Added: 
labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/TestGeomery.java
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/TestGeomery.java?rev=1170710&view=auto
==============================================================================
--- 
labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/TestGeomery.java
 (added)
+++ 
labs/magma/trunk/beans-map/src/test/java/org/apache/magma/beans/TestGeomery.java
 Wed Sep 14 16:53:42 2011
@@ -0,0 +1,84 @@
+package org.apache.magma.beans;
+
+import static org.junit.Assert.*;
+
+import java.util.List;
+
+import org.junit.Test;
+
+public class TestGeomery {
+
+       
+       
+       @Test
+       public void testDistance() throws Exception {
+               MapCoordinate from = new MapCoordinate();
+               from.setLatitude(41.9116146f);
+               from.setLongitude(12.5099185f);
+               
+               MapCoordinate to = new MapCoordinate();
+               to.setLatitude(41.9113917f);
+               to.setLongitude(12.50954219f);
+               
+               MapSegment seg = new MapSegment(from, to);
+               
+               assertEquals(40f, seg.getDistance(),0.5f);
+       }
+       
+       @Test
+       public void median() throws Exception {
+               MapCoordinate from = new MapCoordinate();
+               from.setLatitude(41.9116146f);
+               from.setLongitude(12.5099185f);
+               
+               MapCoordinate to = new MapCoordinate();
+               to.setLatitude(41.9113917f);
+               to.setLongitude(12.50954219f);
+               
+               MapSegment seg = new MapSegment(from, to);
+
+               MapCoordinate pointAt = seg.findPointAt(20);
+
+               
+               MapSegment seg1 = new MapSegment(from, pointAt);
+               assertEquals(20.0f, seg1.getDistance(), 0.1f);
+               
+               seg1 = new MapSegment(pointAt, to);
+               assertEquals(seg.getDistance() - 20.0f, seg1.getDistance(), 
0.1f);
+       }
+       
+       @Test
+       public void pointInLine() throws Exception {
+               MapCoordinate p1 = new MapCoordinate();
+               p1.setLatitude(41.9116146f);
+               p1.setLongitude(12.5099185f);
+               
+               MapCoordinate p2 = new MapCoordinate();
+               p2.setLatitude(41.9113917f);
+               p2.setLongitude(12.50954219f);
+               
+               MapCoordinate p3 = new MapCoordinate();
+               p3.setLatitude(41.911202f);
+               p3.setLongitude(12.5092689f);
+               
+               
+               MapShape shape = new MapShape();
+               shape.addCoordinates(p1,p2,p3);
+               shape.setType(MapShape.TYPE_LINE);
+               
+               List<MapSegment> segs = shape.getSegments();
+               assertEquals(2, segs.size());
+               assertEquals(40f, segs.get(0).getDistance(),0.5f);
+
+               MapCoordinate pointAt = shape.findPointAt(20);
+               assertNotNull(pointAt);
+               MapSegment seg1 = new MapSegment(p1, pointAt);
+               assertEquals(20.0f, seg1.getDistance(), 0.1f);
+               
+               pointAt = shape.findPointAt(segs.get(0).getDistance() + 20);
+               assertNotNull(pointAt);
+               seg1 = new MapSegment(p2, pointAt);
+               assertEquals(20.0f, seg1.getDistance(), 0.1f);
+               
+       }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to