将位图加载到数组(Java)

时间:2010-11-26 09:40:43

标签: java arrays image map bitmap

对于一个项目,我需要用Java制作机器人可以浏览的地图。最好,我想将地图存储在2D数组中,但我不知道如何从1位位图转换为Java中的数组。你能救我一下吗?

2 个答案:

答案 0 :(得分:2)

您可以使用ImageIO.read()方法在BufferedImage实例中加载位图。然后,调用BufferedImage.getRGB(int x, int y)以获取地图中特定像素的颜色值。

答案 1 :(得分:0)

假设一个10乘10的网格,那么你将创建一个数组,如

Image[][] grid = new Image[10][10];

然后

for (int x = 0; X < grid.length; X++) {
  for (int y = 0; y < grid[x].length; y++) {
     grid[x][y] = theImageForThisPosition;
  }
}

但是,当您存储1位位图时,存储Color对象而不是Image对象会更有效。