如何在Android中组装位图?

时间:2016-08-01 13:56:11

标签: java android bitmap

我正在开发一个(非常)简单的Android应用程序,它在屏幕上绘制Mandelbrot设置,并允许用户放大该组的指定区域。到目前为止,我所做的显示集合的方法是在两个嵌套for循环的帮助下计算屏幕每个像素的颜色(在适当的坐标转换下):

int mandelPixels[] = new int[ canvas.width() * canvas.height() ];
index = 0;

for(int i = 0; i <= canvas.getHeight(); i++){
  for(int j = 0; j <= canvas.getWidth(); j++){

  // *** do the calculations to decide color of the pixel in question ***
  mandelPixels[index] = some color;      

  index++;
  }

}

正如你所看到的,我正在使用索引变量作为连续填充mandelPixels数组的方法(它保存了图中每个Pixel的颜色int)。这里隐含的假设是,当使用

 bc = Bitmap.Config.ARGB_8888
 Bitmap.createBitmap(mandelPixels, canvas.getWidth(), canvas.getHeight(), bc);

将从数组逐行创建位图,即颜色int的索引[0]到索引[canvas.getWidth()]构成第一行,依此类推。< / p>

这实际上有效。但是,我有点疑惑为什么在android文档中永远不会提到这一点。这是从头开始组装位图的常用方法吗?

0 个答案:

没有答案