创建一个六角形游戏需要帮助bord

时间:2011-03-26 23:31:54

标签: algorithm

我打算创建六边形游戏,我需要创建一个六边形板...... 我需要绘制一个有六个六边形的板子所以我需要一个简短的六角形公式我会很高兴如果有人会给我一个公式来快速创建:) 谢谢boaz

我在java编程.....

董事会需要有61个六边形......

1 个答案:

答案 0 :(得分:1)

去年我做了类似的事情,这是我的代码的简化版本,可能对您有所帮助:

public class MapPanel {

    int r = 30; // radius of hexagone
    int h = (int) Math.sqrt(r*r*3/4);
    int[] xPoints = {r/2,3*r/2,2*r,3*r/2,r/2,0};
    int[] yPoints = {0,0,h,2*h,2*h,h};
    int[] xp = new int[6];
    int[] yp = new int[6];

    public void paint(Graphics g){

        int xoffset = 0;
        int yoffset = 0;

        // display map
        for (int j = 0; j < /* put width here */; j++) {
            for (int i = 0; i < /* put height here */; i++) {
                for (int k = 0; k < 6; k++) {
                    xp[k] = xPoints[k]+xoffset;
                    yp[k] = yPoints[k]+yoffset;
                }
                g.setColor(Color.black);
                g.drawPolygon(xp, yp, 6);
                yoffset += 2*h;
            }
            yoffset = h-yoffset % (2*h);
            xoffset += 3*r/2;
        }   
    }
}

如果你想解释公式只是google“hexagon”......