`
iaiai
  • 浏览: 2144452 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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);
		}
        }

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics