/* TODO: Replace these file comments with a description of what your program
* does.
*/
import acm.graphics.*;
import acm.program.*;
public class Pyramid extends GraphicsProgram {
/** Width of each brick in pixels */
private static final double BRICK_WIDTH = 30;
/** Height of each brick in pixels */
private static final double BRICK_HEIGHT = 12;
/** Number of bricks in the base of the pyramid */
private static final int BRICKS_IN_BASE = 20;
/** Coordinates of the bricks in the leftmost every row*/
private static double originalX,originalY;
public void run() {
for(int i=BRICKS_IN_BASE;i>0;i--){
createBrickRow(i);
}
}
// create a row of bricks
private void createBrickRow(int i) {
//First get the original coordinates
getOriginalCoordinate(i);
//Then create a row of bricks;
for(int j=0;j<i;j++){
double x,y;
x = originalX + j * BRICK_WIDTH;
y = originalY;
GRect brick = new GRect(x,y,BRICK_WIDTH,BRICK_HEIGHT);
add(brick);
}
}
private void getOriginalCoordinate(int i) {
// get the original coordinates(x,y);
originalX = (getWidth() - i*BRICK_WIDTH)/2;
originalY = getHeight() - (BRICKS_IN_BASE -i)*BRICK_HEIGHT;
}
}
CS106A assignment3 --problem4 Pyramid
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...