在鼠标按键生成三角形

时间:2016-03-18 22:02:52

标签: javafx polygon

我正在尝试基于鼠标按下生成随机形状。我的所有形状都在工作,除了我的三角形。我使用了Polygon和一个数组来创建它。但是,它会不断向数组添加更多的点,因此当我尝试生成另一个三角形时,它会扭曲三角形。我试图清除阵列,但它没有用。这是我的代码:

      case "t":
                Double[] array;

                t.setFill(Color.rgb(fill, fill2, fill3));

                t.getPoints().addAll(array = new Double[]{
                    (double)coordinate, (double)coordinate2, 
                    (double)coordinate3, (double)coordinate4,
                    (double)coordinate5, (double)coordinate6});

                for(int i = 0; i < array.length; i++)
                {
                    array[i] = null;
                }

                pane.getChildren().add(t);

                break;

1 个答案:

答案 0 :(得分:1)

每次要创建新三角形时,都必须实际创建一个新三角形。要执行此操作,您必须致电new Polygon(),而您当前没有这样做。

case "t":
    Polygon t = new Polygon();

    t.setFill(Color.rgb(fill, fill2, fill3));
    t.getPoints().addAll(new Double[]{
      (double)coordinate, (double)coordinate2, 
      (double)coordinate3, (double)coordinate4,
      (double)coordinate5, (double)coordinate6}
    );

    pane.getChildren().add(t);

    break;