好的,试着画一面美国国旗
我只是手动完成整个事情,但不想手动输入每个星星的点数,我想用一个循环来逐行设置它们
有可能更简单的方法,但我的想法是使用for循环,使用控制变量作为添加剂来放置每个星(所以当循环控制增加5,首先启动,然后第二个放置5个点,然后10个直到该行有6个星)
根据我的逻辑,我没有任何问题,IDE没有错误并且它成功符合...........除了星星没有显示。完全没有。
在我实施for-loop之前,我出现了一颗星。有了它,没有。甚至不是一星级的
似乎没有任何错误但是它不起作用,那么我的想法是根本错误还是什么?
重要的是:
double StarX[] = {13.0, 15.0, 21.0, 16.0, 18.0, 13.0, 8.0, 11.0, 5.0, 11.0};
double StarY[] = {50.0, 57.0, 57.0, 61.0, 68.0, 64.0, 68.0, 61.0, 57.0, 57.0};
for (int i = 0; i < 30; i = i + 5) {
Polygon Star = new Polygon();
Star.getPoints().addAll(new Double[]{
StarX[0] + i, StarY[0] + i,
StarX[1] + i, StarY[1] + i,
StarX[2] + i, StarY[2] + i,
StarX[3] + i, StarY[3] + i,
StarX[4] + i, StarY[4] + i,
StarX[5] + i, StarY[5] + i,
StarX[6] + i, StarY[6] + i,
StarX[7] + i, StarY[7] + i,
StarX[8] + i, StarY[8] + i,
StarX[9] + i, StarY[9] + i,
});
Star.setFill(Color.BLACK);
pane.getChildren().add(Star);
}