使用高德地图根据坐标点画出路线

来源:互联网 发布:宅男女神软件 编辑:程序博客网 时间:2024/05/18 03:41

原文地址:http://blog.csdn.net/mingyue_1128/article/details/30040545

随机生成点

目前使用的是随机生成的点来绘制拆线。

1,得到接口返回的坐标点,因为是GPS点还需要进行GPS的转换,才能将线准确的画在道路上,将得到的点存在 List<LatLng> locationList;数组中,之所以List的泛型是LatLng的是为了方便画线时直接用。


解析数据里的格式(我的是JSON解析)

[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1. JSONObject data=array.getJSONObject(i);  
  2. GeoPoint point=CoordinateConvert.fromGpsToAMap(data.getDouble("lat"),data.getDouble("lon"));  
  3. int x=point.getLatitudeE6();  
  4. int y=point.getLongitudeE6();  
  5. double x1 = ((double)x)/1000000;    
  6. double y1 = ((double) y) / 1000000;       
  7. LatLng  lat=new LatLng(x1,y1);    
  8. locationList.add(lat);  
2,将得到的点画成线
[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1. /** 
  2.      * 在地图上画线 
  3.      */  
  4.     public void setUpMap(List<LatLng> list){  
  5.   
  6.         if(list.size()>1){  
  7.       
  8.             PolylineOptions polt=new PolylineOptions();  
  9.               
  10.             for(int i=0;i<list.size();i++){        
  11.   
  12.                 polt.add(list.get(i));  
  13.                   
  14.             }  
  15.             polt.width(5).geodesic(true).color(Color.GREEN);  
  16.             aMap.addPolyline(polt);  
  17.   
  18.         }else{  
  19.   
  20.             Toast.makeText(this,"没有移动轨迹"500).show();  
  21.         }  
  22.       
  23.     }  

0 0