首先,感谢您只需点击此:)我是一个业余学生编码器,我创建了一个(可怕的)版本的Pacman。我试图在我的1000x650小应用程序屏幕上为每个点创建矩形,因此我可以在包命中框触及它们时创建if语句,它们消失。一次创建多个矩形对象(Java)
我的问题是,我想创建一个类,所以我可以轻松地创建矩形,并只有1个if语句,而不是一个对每个点的矩形(努力学习是有效的:P)
如果我没有详细说明,我会警惕根据您的回复进行修改,谢谢!
(编辑1:修复了句子的xD运行)
首先,感谢您只需点击此:)我是一个业余学生编码器,我创建了一个(可怕的)版本的Pacman。我试图在我的1000x650小应用程序屏幕上为每个点创建矩形,因此我可以在包命中框触及它们时创建if语句,它们消失。一次创建多个矩形对象(Java)
我的问题是,我想创建一个类,所以我可以轻松地创建矩形,并只有1个if语句,而不是一个对每个点的矩形(努力学习是有效的:P)
如果我没有详细说明,我会警惕根据您的回复进行修改,谢谢!
(编辑1:修复了句子的xD运行)
如果您需要在X和Y(矩阵)上填充矩形,则很可能需要嵌套循环。 让你想一个5 * 5的矩形每100个像素宽度有50个像素高度间距的考虑:
for(int x = 0;x<1000;x+= 100)
{
for(int y=0;y<650; y+= 50)
{
drawRectangle(x, y, 5, 5); // Considering drawRectangle(x, y, width, height)
}
}
试试这个代码,当它与碰撞点它将返回true。
Object pacman = new Object();
pacman.xcoord = null;
pacman.ycoord = null;
final int dotsInStage = 50;
// add other properties
int xcoords[] = new int[dotsInStage];
int ycoords[] = new int[dotsInStage];
调用此布尔:
public boolean dotCollison (int xcoords[], int ycoords[], Object pacman) {
loop = 0;
while (loop <= dotsInStage) {
if (pacman.xcoord = xcoords[loop] && pacman.ycoord = ycoords[loop]) {
return true;
break;
}
}
}
要添加矩形,请尝试:
int loop = 0;
while (loop <= dotsInStage) {
Graphics.drawRectangle (xcoord[loop] , ycoord[loop] , xcoord[loop] + 10 , ycoord[loop] + 10);
}
希望工程快乐编码!
我不完全理解你的问题。但是 难道你只是创建一个2维数组使用嵌套for循环
For(int I = 0; I<array.length;i++){
For (int j = 0; j <array[0].length;I++){
//fill w/ rectangles
array[I][j]= ;
}}
你的问题是非常含糊。当您需要特定答案时,请认真表明您已经拥有什么,并提出具体问题。 – BlacKow