Eva*_*ovi 2 android canvas points
当我绘制很多线条时,应用程序需要很长时间才能完成绘制。我的目标是连接a1 []中的点以形成一条线。有更快的方法吗?请帮忙!
> $ for (int i = 0; i < x.length - 1; i++) {
> _canvas.drawLine(a1[i].x, a1[i].y, a1[i + 1].x, a1[i + 1].y,_paint);}
Run Code Online (Sandbox Code Playgroud)
使用画线。将点打包到float []中,行中的每个点都有2个点,然后执行以下操作:
if (count >= 4) {
if ((count & 2) != 0) {
canvas.drawLines(pointlist, 0, count-2, linePaint);
canvas.drawLines(pointlist, 2, count-2, linePaint);
}
else {
canvas.drawLines(pointlist, 0, count, linePaint);
canvas.drawLines(pointlist, 2, count - 4, linePaint);
}
}
Run Code Online (Sandbox Code Playgroud)
其中count是点的float []中可用的数字长度。绘制线每段有4个浮点数,但是如果您将它们交错,则可以得到想要的结果,而无需浪费2倍的内存,并且可以在需要时有效地移动点。
归档时间: |
|
查看次数: |
5565 次 |
最近记录: |