1

我已经很长时间没有做过任何几何图形了,以至于我不知道该怎么做。

我创建了这个方法:

public Polygon getHex(int posX, int posY) {
        Polygon hex = new Polygon();
        for (int i = 0; i < 6; i++) {
            hex.addPoint((int) (posX + (50 * Math.cos(i * 2 * Math.PI / 6))),
                    (int) (posY + (50 * Math.sin(i * 2 * Math.PI / 6))));
        }
        return hex;
    }

这将创建一个等边六边形,如下所示:

  _
 / \
 \_/

我需要一个像这样的旋转等边六边形:

   /\
  |  |
   \/ 

谁能帮我记住数学?谢谢

4

1 回答 1

4

更改i * 2(1 + i * 2),这将使您的所有点旋转 pi/6,这应该可以解决问题!

于 2012-11-05T23:46:06.393 回答