Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android谷歌地图中绘制kml坐标_Android_Google Maps_Kml_Android Maps - Fatal编程技术网

在Android谷歌地图中绘制kml坐标

在Android谷歌地图中绘制kml坐标,android,google-maps,kml,android-maps,Android,Google Maps,Kml,Android Maps,我正在创建一个Android应用程序来绘制我们当地的山地自行车路线图。坐标来自KML文件。到目前为止,我已经绘制并创建了11个地质点的路径。然而,我有数百个坐标要绘制。这是我迄今为止所做工作的代码。这是可行的,但非常乏味,我还有数百件事要做。有更好的方法吗?有没有办法让我的overlay类从我的kml文件中读取坐标?任何其他想法或想法都将受到赞赏 public void draw(Canvas canvas, MapView mapView, boolean shadow) { sup

我正在创建一个Android应用程序来绘制我们当地的山地自行车路线图。坐标来自KML文件。到目前为止,我已经绘制并创建了11个地质点的路径。然而,我有数百个坐标要绘制。这是我迄今为止所做工作的代码。这是可行的,但非常乏味,我还有数百件事要做。有更好的方法吗?有没有办法让我的overlay类从我的kml文件中读取坐标?任何其他想法或想法都将受到赞赏

public void draw(Canvas canvas, MapView mapView, boolean shadow) {
     super.draw(canvas, mapView, shadow);
     Paint paint;
     paint = new Paint();
     paint.setDither(true);
     paint.setColor(Color.RED);
     paint.setStyle(Paint.Style.FILL_AND_STROKE);
     paint.setStrokeJoin(Paint.Join.ROUND);
     paint.setStrokeWidth(2);

     GeoPoint gp1 = new GeoPoint(43311836,-91777756);
     GeoPoint gp2 = new GeoPoint(43311718,-91777699);
     GeoPoint gp3 = new GeoPoint(43311718,-91777699);
     GeoPoint gp4 = new GeoPoint(43311666,-91777627);
     GeoPoint gp5 = new GeoPoint(43311624,-91777541);
     GeoPoint gp6 = new GeoPoint(43311582,-91777455);
     GeoPoint gp7 = new GeoPoint(43311533,-91777369);
     GeoPoint gp8 = new GeoPoint(43311489,-91777249);
     GeoPoint gp9 = new GeoPoint(43311445,-91777136);
     GeoPoint gp10 = new GeoPoint(43311404,-91776996);
     GeoPoint gp11 = new GeoPoint(43311410,-91776891);
     Point pt1 = new Point();
     Point pt2 = new Point();
     Point pt3 = new Point();
     Point pt4 = new Point();
     Point pt5 = new Point();
     Point pt6 = new Point();
     Point pt7 = new Point();
     Point pt8 = new Point();
     Point pt9 = new Point();
     Point pt10 = new Point();
     Point pt11 = new Point();

     Path path1 = new Path();
     Path path2 = new Path();
     Path path3 = new Path();
     Path path4 = new Path();
     Path path5 = new Path();
     Path path6 = new Path();
     Path path7 = new Path();
     Path path8 = new Path();
     Path path9 = new Path();

     projection.toPixels(gp1,pt1);
     projection.toPixels(gp2, pt2);
     projection.toPixels(gp3, pt3);
     projection.toPixels(gp4, pt4);
     projection.toPixels(gp5, pt5);
     projection.toPixels(gp6, pt6);
     projection.toPixels(gp7, pt7);
     projection.toPixels(gp8, pt8);
     projection.toPixels(gp9, pt9);
     projection.toPixels(gp10, pt10);
     projection.toPixels(gp11, pt11);

     path1.moveTo(pt1.x, pt1.y);
     path1.lineTo(pt2.x, pt2.y);

     path2.moveTo(pt3.x,pt3.y);
     path2.lineTo(pt4.x, pt4.y);

     path3.moveTo(pt4.x,pt4.y);
     path3.lineTo(pt5.x,pt5.y);

     path4.moveTo(pt5.x, pt5.y);
     path4.lineTo(pt6.x, pt6.y);

     path5.moveTo(pt6.x, pt6.y);
     path5.lineTo(pt7.x, pt7.y);

     path6.moveTo(pt7.x, pt7.y);
     path6.lineTo(pt8.x, pt8.y);

     path7.moveTo(pt8.x, pt8.y);
     path7.lineTo(pt9.x, pt9.y);

     path8.moveTo(pt9.x,pt9.y);
     path8.lineTo(pt10.x, pt10.y);

     path9.moveTo(pt10.x, pt10.y);
     path9.lineTo(pt11.x, pt11.y);

     canvas.drawPath(path1, paint);
     canvas.drawPath(path2, paint);
     canvas.drawPath(path3, paint);
     canvas.drawPath(path4, paint);
     canvas.drawPath(path5, paint);
     canvas.drawPath(path6, paint);
     canvas.drawPath(path7, paint);
     canvas.drawPath(path8, paint);
     canvas.drawPath(path9, paint);

  }
}

难道你不能读入KML文件并循环浏览这些点吗?

对不起,我对应用程序编程不熟悉。你会怎么做?这真的超出了这里的答案。你真的应该买一本关于Java的书来学习它。我同意,你有什么可以参考的资料吗?我建议你去书店浏览一下这些书,找到一本与你产生共鸣的书。你也可以在亚马逊上浏览它们。