1

我想画三角形和多边形

为了画一个三角形,我使用了我在互联网上找到的这个方法:

this.p.setStyle(Paint.Style.STROKE);
    int triangleColors[] = {
            this.p.getColor(), this.p.getColor(), this.p.getColor(),
            this.p.getColor(), this.p.getColor(), this.p.getColor()
        };

    float verts[] = {
            ptsFloat.get(0).x, ptsFloat.get(0).y,
            ptsFloat.get(1).x, ptsFloat.get(1).y,
            ptsFloat.get(2).x, ptsFloat.get(2).y
    };
    c.drawVertices(Canvas.VertexMode.TRIANGLES, 
        verts.length, 
        verts, 
        0, 
        null,
        0,
        triangleColors,
        0,
        null, 
        0,
        0,
        this.p);

但是结果是空的,我什么都没画……而drawLine,drawCircle工作得很好,你知道为什么这个方法不起作用吗?此外,我的 logcat 控制台中没有任何帮助我的痕迹!

4

1 回答 1

1

好的,所以在自己尝试之后,我意识到问题出在你的颜色阵列上。如果您对每个点使用相同的颜色,那么您不需要该数组。getColor() 函数没有返回您需要的 int 值。如果您需要不同的颜色,请使用 Color.X 将该颜色分配给三角形的该部分。

于 2012-05-14T08:03:14.320 回答