当前位置: 代码迷 >> Android >> android百度舆图半径画圆
  详细解决方案

android百度舆图半径画圆

热度:84   发布时间:2016-05-01 20:23:17.0
android百度地图半径画圆
import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Paint.Style;import android.graphics.Path;import android.graphics.Point;import android.os.Bundle;import com.baidu.mapapi.BMapManager;import com.baidu.mapapi.GeoPoint;import com.baidu.mapapi.MapActivity;import com.baidu.mapapi.MapController;import com.baidu.mapapi.MapView;import com.baidu.mapapi.Overlay;import com.baidu.mapapi.Projection;public class BaiduMapActivity extends MapActivity {        private Context mContext;        private MapView mapView;        @Override        protected boolean isRouteDisplayed() {                // TODO Auto-generated method stub                return false;        }        @Override        protected void onCreate(Bundle arg0) {                super.onCreate(arg0);                setContentView(R.layout.baidumap_layout);                BaseApplication baseApp = (BaseApplication) this.getApplication();                if (baseApp.mBMapManage == null) {                        baseApp.mBMapManage = new BMapManager(mContext);                        baseApp.mBMapManage.init(baseApp.mStrKey,                                        new BaseApplication.MyGeneralListener());                }                baseApp.mBMapManage.start();                super.initMapActivity(baseApp.mBMapManage);// 初始化map sdk                mapView = (MapView) findViewById(R.id.bmapView);                mapView.setBuiltInZoomControls(true);                // 设置在缩放动画过程中也显示overlay,默认为不绘制                mapView.setDrawOverlayWhenZooming(true);                // RouteLine routeLine =                // (RouteLine)getIntent().getSerializableExtra("routeLine");                //这里画点和连接线                MyOverlay myOverlay = new MyOverlay();                mapView.getOverlays().add(myOverlay);                                MapController mapController = mapView.getController();                mapController.zoomIn();                          mapController.animateTo(new GeoPoint((int) (2259316 * 10),                                (int) (11396279 * 10)));//设置一个起点        }        class MyOverlay extends Overlay {                public void draw(Canvas canvas, MapView mapView, boolean shadow) {			super.draw(canvas, mapView, shadow);			Paint paint = new Paint();			paint.setColor(Color.BLUE);			paint.setDither(true);			paint.setStyle(Paint.Style.STROKE);			paint.setStrokeCap(Paint.Cap.ROUND);			paint.setStrokeJoin(Paint.Join.ROUND);			paint.setStrokeWidth(5);			Projection projection = mapView.getProjection();			Point p1 = new Point();			projection.toPixels(gpoint1 = new GeoPoint((int) (2259316 * 10), (int) (11396279 * 10)), p1);			canvas.drawCircle(p1.x, p1.y, projection.metersToEquatorPixels(500), paint);		}        }}
  相关解决方案