呈现等轴测网格



我正在为等距游戏制作地图编辑器,我有点坚持渲染等距指南网格(显示对象放置位置的网格)。也就是说,我需要在 Graphics 对象上绘制线条,使其形成具有可变宽度和高度单元格的网格。我该怎么做才能完成此操作?

到目前为止,我有:

//The number of cells in each direction
int nv=h/cellh;
int nh=w/cellw;
for(int i=1;i<=nv;++i){
    g.drawLine(0,i*cellh,i*cellh*2,0);
}

但这只是从左侧开始绘制左下到右上角的线条。

这将按您的预期工作:

public void paintComponent(Graphics g) {
    super.paintComponent(g);
    g.setColor(Color.GREEN);
    int width = getWidth();
    int height = getHeight();
    int sizeW = 50;
    int sizeH = 50;
    int countW = width / sizeW;
    int countH = height / sizeH;
    for (int i = 0; i <= countW + countH; i++) {
        g.drawLine(0, i * sizeH, i * sizeH, 0);
        g.drawLine(width - i * sizeW, 0, width, i * sizeW);
    }
}

相关内容

  • 没有找到相关文章

最新更新