2010-11-26 87 views
2

對於一個項目,我需要製作一個機器人可以導航的Java地圖。最好是,我想將地圖存儲在2D數組中,但我不知道如何從1位位圖到Java中的數組。你能幫我嗎?將位圖加載到數組中(Java)

回答

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對象。

2

您可以使用ImageIO.read()方法在BufferedImage實例中加載位圖。然後,請致電BufferedImage.getRGB(int x, int y)以獲取地圖的特定像素的顏色值。

+0

嗨,網格我要使用措施800x600所以手動添加不是一個選項。我認爲尼古拉斯的回答是我目前正在嘗試的。但是,我試圖讀取DataBuffer銀行,但它只給了我6000個條目。而應該有480.000條目,;圖像中的像素數量。目前只有1家銀行,所以我不知道爲什麼我只獲得6000個參賽作品。 – user521183 2010-11-28 11:48:20