绘制圆形,方法一(Canvas,drawOval)

 

这个方法挺有趣的。

   1: private int mRadius=6;
   2: /*假设有一个GeoPoint gp,存储着卫星坐标对*/
   3:  
   4: /*设置笔刷*/
   5: Paint paint = new Paint();
   6: paint.setAntiAlias(true);//抗锯齿
   7: paint.setColor(Color.BLUE);
   8:  
   9: Projection projection = mapView.getProjection();
  10: Point point = new Point();
  11: projection.toPixels(gp,point);//把gp转换成point,int类型
  12:  
  13: /*定义RectF对象*/
  14: RectF oval = new RectF(point.x - mRadius, point.y - mRadius,
  15:                        point.x + mRadius, point.y + mRadius);
  16: /*绘制起点的圆形*/
  17: canvas.drawOval(oval.paint);

取得point的坐标后,将x,y分别加上,减去半径,那么这两个新的点的坐标距离是直径,然后canvas一下,就画出来了。

当然,还可以设定paint.的其他方法,改变绘制效果。

posted @ 2011-09-18 14:01  Reaver21  阅读(1805)  评论(0编辑  收藏  举报