当前位置: 代码迷 >> Android >> 百度android地图怎样只画屏幕范围内的点解决思路
  详细解决方案

百度android地图怎样只画屏幕范围内的点解决思路

热度:46   发布时间:2016-05-01 21:42:16.0
百度android地图怎样只画屏幕范围内的点
我要在百度android地图上画1千多个点,全部画的话会很卡,所以要循环判断各点有没超出屏幕范围,大概代码如下:
Java code
        for(int i=0;i<jarry.length();i++){                        try {                if(Double.parseDouble(jarry.getJSONObject(i).getString("w"))<24.811905 && Double.parseDouble(jarry.getJSONObject(i).getString("j"))<113.594293)                {                mMapView.getOverlays().add(new OverItemT(marker, this,jarry.getJSONObject(i).getString("j"),jarry.getJSONObject(i).getString("w"),jarry.getJSONObject(i).getString("gjxname"),jarry.getJSONObject(i).getString("Content")));                }            } catch (JSONException e) {                 //TODO Auto-generated catch block                e.printStackTrace();            }       } 

问题是怎么获取屏幕经纬范围,上面的数字是我自己写上去的,每个点怎么判断有没超出屏幕?求好心人提供代码,谢谢了

------解决方案--------------------
根据中心的坐标算出矩形的坐标范围,然后判断就行了吧
------解决方案--------------------
可以获取当前屏幕大小 长宽就都有了

------解决方案--------------------
正常思路应该是这样的:
你拿到屏幕左上角和右下角经纬度,根据经纬度从你那一千个点中取出符合条件的点,
在你画符合条件点之前,你把地图上所有的点全部清空后再把符合条件的点来上去,这样地图上只会有显示区域内的点
------解决方案--------------------
探讨

引用:
正常思路应该是这样的:
你拿到屏幕左上角和右下角经纬度,根据经纬度从你那一千个点中取出符合条件的点,
在你画符合条件点之前,你把地图上所有的点全部清空后再把符合条件的点来上去,这样地图上只会有显示区域内的点

楼上能不能给点代码,帮帮忙哦,谢谢了
  相关解决方案