在顶部和底部创建六角形



我很长一段时间没有做任何几何形状,以至于我无法弄清楚如何做。

我创建了此方法:

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;
    }

这会产生像这样的等边六角形:

  _
 / 
 _/

我需要这样的旋转,等边的六角形:

   /
  |  |
   / 

有人可以帮助我记住数学吗?谢谢

i * 2更改为 (1 + i * 2),它将通过pi/6旋转所有要点,这应该可以解决问题!

最新更新