Java 渲染等轴测栅格

Java 渲染等轴测栅格,java,swing,isometric,Java,Swing,Isometric,我正在为一个等轴测游戏制作一个地图编辑器,我有点执着于绘制一个等轴测引导网格(一个显示对象放置位置的网格)。也就是说,我需要在图形对象上画线,这样它就形成了一个网格,其中包含可变宽度和高度的单元格。我能做些什么来实现这一点 到目前为止,我已经: //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*c

我正在为一个等轴测游戏制作一个地图编辑器,我有点执着于绘制一个等轴测引导网格(一个显示对象放置位置的网格)。也就是说,我需要在图形对象上画线,这样它就形成了一个网格,其中包含可变宽度和高度的单元格。我能做些什么来实现这一点

到目前为止,我已经:

//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);
}
//每个方向上的单元格数
int nv=h/单元格;
int nh=w/单元w;

对于(int i=1;i这将按照您的预期工作:

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);
    }
}
公共组件(图形g){
超级组件(g);
g、 setColor(Color.GREEN);
int width=getWidth();
int height=getHeight();
int-sizeW=50;
int-sizeH=50;
int countW=宽度/尺寸;
int countH=高度/尺寸;

for(int i=0;我在纸上绘制网格,并用它来帮助找出绘制网格的算法。另请参见。气垫船,我已经尝试过了。这是一个逻辑问题。我不太理解for循环(或者可能我只是累了),但我会这样做:对于(单元格的每一行(或者列,如果您愿意)从(x,y)中绘制一条线从第一个单元格到最后一个单元格的端点。//无论如何,您应该有一个单元格数组。这是一个普通网格:/I我需要一个等距网格,即在图形对象上有1/2和-1/2的斜线交叉。我已将答案编辑为类似于上面的注释中的“1/2和-1/2的斜线”。