C#简单网格填充算法

时间:2017-03-27 13:40:56

标签: c#

我试图找到一种有效的方法来填充网格(2个数组),其中数字代表网格中单元格所占的区域。例如:

数字与根区域相关。问题是如何使用与根区相关的值随机填充矩阵

// Grid could look something like this 
// 22333
// 22333
// 11333
// or
// 33311
// 33322
// 33322
// What i have currently

int numRows = 4;
int numColums = 5;
int cellSize = Random.Range(0,4);

for (int iRow = 0; iRow < numRows; iRow++) {

    for (int iCol = 0; iCol <numColums ; iCol++) {

        // Fill value
        test.gridData.rows[iRow].colum[iCol] = cellSize;
    }
}

1 个答案:

答案 0 :(得分:0)

int numRows = 4;
int numColums = 5;
int cellSize = Random.Range(0,4);

for (int iRow = 0; iRow < numRows; iRow++) {
    for (int iCol = 0; iCol <numColums ; iCol++) {
        // HERE
        test.gridData[iRow][iCol].MyVal= val;
    }
}

假设您的实际代码反映了问题中的代码,位置MyVal的{​​{1}}矩阵的Test属性现在等于[row][column]的值。< / p>

您可以访问2D数组的各个元素:

假设你的网格是:

cellSize

您可以使用0 1 2 3 4 1 1 2 3 4 2 1 2 3 4 3 1 2 3 4 之类的内容访问单个单元格(假设上面的网格):

test.GridData[2][4] =&gt;处的值row[2]

2

⬇ 0 1 2 3 4 1 1 2 3 4 2 1 2 3 4 3 1 2 3 4 =&gt; 4:

column[4]
相关问题