永发信息网

急求 Android 百度地图 绘制多条折线方法

答案:1  悬赏:40  手机版
解决时间 2021-02-20 06:39
现在部分代码贴上 求高人指点 目前该代码只能实现第一条折线的绘制
在线 苦等。。。。

public void addCustomElementsDemo(){
GraphicsOverlay graphicsOverlay = new GraphicsOverlay(mMapView);
mMapView.getOverlays().add(graphicsOverlay);

//添加折线
graphicsOverlay.setData(drawLine());
//执行地图刷新使生效
mMapView.refresh();
}

public Graphic drawLine(){

String file = getSDPath()+"/pn.xls";

InputStream is = null;
try {
is = new FileInputStream(new File(file));
Workbook wb = Workbook.getWorkbook(is);// 打开Excel文件
Sheet sheet = wb.getSheet(0);// 第一张工作表
int row = sheet.getRows();
for (int i = 1; i < row; ++i) {
Cell calllatA = sheet.getCell(11, i); // 自加获取纬度
Cell calllanA = sheet.getCell(12, i); // 自加获取经度

Cell calllatB = sheet.getCell(13, i); // 自加获取纬度
Cell calllanB = sheet.getCell(14, i); // 自加获取经度

// Cell name = sheet.getCell(1, i);
if(calllatA.getContents() == ""||calllatB.getContents() == "") continue; //判断如果遇空值重新循环
double mlat1 = Double.parseDouble(calllatA.getContents());
double mlon1 = Double.parseDouble(calllanA.getContents());
double mlat2 = Double.parseDouble(calllatB.getContents());
double mlon2 = Double.parseDouble(calllanB.getContents());
GeoPoint p1 = new GeoPoint((int) (mlat1*1E6), (int) (mlon1*1E6));
GeoPoint p2 = new GeoPoint((int) (mlat2*1E6), (int) (mlon2*1E6));

//构建线
Geometry lineGeometry = new Geometry();
//设定折线点坐标
GeoPoint[] linePoints = new GeoPoint[2];
linePoints[0] = p1;
linePoints[1] = p2;
lineGeometry.setPolyLine(linePoints);
//设定样式
Symbol lineSymbol = new Symbol();
Symbol.Color lineColor = lineSymbol.new Color();
lineColor.red = 255;
lineColor.green = 0;
lineColor.blue = 0;
lineColor.alpha = 255;
lineSymbol.setLineSymbol(lineColor, 2);
//生成Graphic对象
Graphic lineGraphic = new Graphic(lineGeometry, lineSymbol);
return lineGraphic;

}
mMapView.refresh(); //刷新地图
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
更多0
最佳答案
加://设定折线点坐标
GeoPoint[] linePoints = new GeoPoint[4];
linePoints[0] = p1;
linePoints[1] = p2;
lineGeometry.setPolyLine(linePoints);
YOHU.(Exception f)]
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
倔强和执着有什么区别?
中国邮政储蓄银行存款到期不取怎么办
LINUX 系统有一个后台进程老自己消失
睫毛膏哪个牌子最好用
鸿运当头冬季应该注意什么,能嗮太阳吗?
某小七年纪一班开展一次成长的烦恼为主题的综
姜黄色毛衣内搭什么颜色衬衫好看。
生以死聚,始以散终 是什么意思
气象街水族超市在什么地方啊,我要过去处理事
七亩丘在什么地方啊,我要过去处理事情
请高手帮忙查下广东江门市电信ip 116.27.138.
普通洗车机出水压力是多少?
UPS出了问题是否有维修的价值?
谁有西安是318路,328路公交车的票价表?
滨海新区锦州道菜市场地址在哪,我要去那里办
推荐资讯
奔腾双核E5700和AMD3800+
歌手是谁1017全部歌曲
世界上有几个国家用筷子
文言文中的通假字怎么判断?
这个怎么解答
【中国地热城】我省咸阳市被称为中国的地热城
衡南梦东方诈骗
Do you think a cat is a better pet than a
你好我想问一下你家狗在宠乐道做髌骨脱位手术
苹果6sPlus怎么在桌面建文件夹
铃木新骏威GSX125有没有限速?
梭飞士尼龙 PK YGK尼龙 哪个好用
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?