2

我有一组n点,我想n-sided用这些点绘制一个多边形。

我尝试使用 android.graphics.path (请参见下文)。

Path path = new Path();
Vertex currVtx;

for (int j = 0; j < vertices.size(); j++) {
 currVtx = vertices.get(j);

 if (!currVtx.hasLatLong())
  continue;

 Point currentScreenPoint = getScreenPointFromGeoPoint(
   currVtx, mapview);
 if (j == 0)
  path.moveTo(currentScreenPoint.x, currentScreenPoint.y); 
          // vertex.
 else
  path.lineTo(currentScreenPoint.x, currentScreenPoint.y);

}

目前,我正在使用此代码获得一个实心(填充画布颜色)多边形。有没有办法可以得到一个未填充的多边形。有一个替代方案android.graphics.Path

谢谢。

4

1 回答 1

8

定义一个 Paint 对象:

Paint mPaint = new Paint();
mPaint.setStrokeWidth(2);  //2 pixel line width
mPaint.setColor(0xFF097286); //tealish with no transparency
mPaint.setStyle(Paint.Style.STROKE); //stroked, aka a line with no fill
mPaint.setAntiAlias(true);  // no jagged edges, etc.

然后绘制路径:

yourCanvas.drawPath(path,mPaint);

您可以查看绘图文档,但有很多选项可以控制其绘制方式。

于 2010-05-12T00:53:35.197 回答