/** * Creates a new KmlLineString object * * @return KmlLineString object */ private static KmlLineString createLineString(XmlPullParser parser) throws XmlPullParserException, IOException { ArrayList<LatLng> coordinates = new ArrayList<LatLng>(); ArrayList<Double> altitudes = new ArrayList<Double>(); int eventType = parser.getEventType(); while (!(eventType == END_TAG && parser.getName().equals("LineString"))) { if (eventType == START_TAG && parser.getName().equals("coordinates")) { List <LatLngAlt> latLngAlts = convertToLatLngAltArray(parser.nextText()); for (LatLngAlt latLngAlt : latLngAlts) { coordinates.add(latLngAlt.latLng); if (latLngAlt.altitude != null) { altitudes.add(latLngAlt.altitude); } } } eventType = parser.next(); } return new KmlLineString(coordinates, altitudes); }
public void testGetKmlGeometryObject() throws Exception { kmlLineString = createSimpleLineString(); assertNotNull(kmlLineString); assertNotNull(kmlLineString.getGeometryObject()); assertEquals(kmlLineString.getGeometryObject().size(), 3); assertEquals(kmlLineString.getGeometryObject().get(0).latitude, 0.0); assertEquals(kmlLineString.getGeometryObject().get(1).latitude, 50.0); assertEquals(kmlLineString.getGeometryObject().get(2).latitude, 90.0); kmlLineString = createLoopedLineString(); assertNotNull(kmlLineString); assertNotNull(kmlLineString.getGeometryObject()); assertEquals(kmlLineString.getGeometryObject().size(), 3); assertEquals(kmlLineString.getGeometryObject().get(0).latitude, 0.0); assertEquals(kmlLineString.getGeometryObject().get(1).latitude, 50.0); assertEquals(kmlLineString.getGeometryObject().get(2).latitude, 0.0); }
public void testLineStringAltitudes() throws Exception { //test linestring without altitudes kmlLineString = createSimpleLineString(); assertNotNull(kmlLineString); assertNull(kmlLineString.getAltitudes()); //test linestring with altitudes kmlLineString = createSimpleLineStringWithAltitudes(); assertNotNull(kmlLineString); assertNotNull(kmlLineString.getAltitudes()); assertEquals(kmlLineString.getAltitudes().get(0), 100.0); assertEquals(kmlLineString.getAltitudes().get(1), 200.0); assertEquals(kmlLineString.getAltitudes().get(2), 300.0); } }
public void testGetType() throws Exception { kmlLineString = createSimpleLineString(); assertNotNull(kmlLineString); assertNotNull(kmlLineString.getGeometryType()); assertEquals("LineString", kmlLineString.getGeometryType()); kmlLineString = createLoopedLineString(); assertNotNull(kmlLineString); assertNotNull(kmlLineString.getGeometryType()); assertEquals("LineString", kmlLineString.getGeometryType()); }
public KmlLineString createSimpleLineStringWithAltitudes() { ArrayList<LatLng> coordinates = new ArrayList<LatLng>(); ArrayList<Double> altitudes = new ArrayList<Double>(); coordinates.add(new LatLng(0, 0)); coordinates.add(new LatLng(50, 50)); coordinates.add(new LatLng(100, 100)); altitudes.add(new Double(100)); altitudes.add(new Double(200)); altitudes.add(new Double(300)); return new KmlLineString(coordinates, altitudes); }
public KmlLineString createSimpleLineString() { ArrayList<LatLng> coordinates = new ArrayList<LatLng>(); coordinates.add(new LatLng(0, 0)); coordinates.add(new LatLng(50, 50)); coordinates.add(new LatLng(100, 100)); return new KmlLineString(coordinates); }
public KmlMultiGeometry createMultiGeometry() { ArrayList<Geometry> kmlGeometries = new ArrayList<Geometry>(); ArrayList<LatLng> coordinates = new ArrayList<LatLng>(); coordinates.add(new LatLng(0, 0)); coordinates.add(new LatLng(50, 50)); coordinates.add(new LatLng(100, 100)); Geometry kmlGeometry = new KmlLineString(coordinates); kmlGeometries.add(kmlGeometry); return new KmlMultiGeometry(kmlGeometries); }
public KmlLineString createLoopedLineString() { ArrayList<LatLng> coordinates = new ArrayList<LatLng>(); coordinates.add(new LatLng(0, 0)); coordinates.add(new LatLng(50, 50)); coordinates.add(new LatLng(0, 0)); return new KmlLineString(coordinates); }