读书人

动态加载map代码段

发布时间: 2012-09-04 14:19:30 作者: rapoo

动态加载地图代码段

// 得到GridNo图层eMyLayer layerGridNo = mapWnd.GetMap().GetLayerByName("GridNo");centerGeo = new eMyPoint2D();eMyPoint CenterPix2D = new eMyPoint(mapWnd.getWidth() / 2, mapWnd.getHeight() / 2);centerGeo = mapWnd.DevToGeo(CenterPix2D);// 查询centerGeo这个点附近100个单位的对象eMyResultSet rs = layerGridNo.QueryByPoint(centerGeo, 100);if (rs == null) {return;}if (rs.HasNext()) {GridNo2 = rs.GetString("GRIDNO");System.out.println("----GRIDNO2=" + GridNo2);// 当前显示的地图与屏幕中心点所在地图不一致,需要加载新的地图if (!GRIDNO.equals(GridNo2)) {System.out.println("----不相等,重新加载地图!");// 当比例超过1500时,地图加载的比较慢,切换时提示是否需要加载新地图。String message = "显示当前位置的地图需要加载新的地图文件:" + GridNo2+ "\n您确认要加载吗?";// if (mapWnd.GetZoom() > 1500) {// AlertDialog.Builder builder = new AlertDialog.Builder(// MapSelectView.this);// builder.setMessage(message).setTitle("提示")// .setCancelable(false).setPositiveButton("确定",// new DialogInterface.OnClickListener() {// public void onClick(// DialogInterface dialog,// int id) {// // 加载新地图// loadNewMap();// }// }).setNegativeButton("取消", null).show();// }}// GRIDNO相同else {}}// 获得大类图层eMyLayer catetoryLayer = mapWnd.GetMap().GetLayerByName(bigClassName);// 如果图层存在,就设置可见if (catetoryLayer.GetName().toString() != "")catetoryLayer.SetVisible(true);// 定位到已选择的位置点if (px != -1 && py != -1) {mapWnd.ZoomTo(px, py, radio);// 定位到该点mapWnd.reDraw();// 那个Ondraw在redraw就会触发mapWnd.repaint(0, 0);}System.out.println("相等");

?

读书人网 >移动开发

热点推荐