在向量的向量中创建轮廓(框)
Creating an outline (box) within a vector of vectors
我在二维向量中存储了值,并进行了一系列循环和 if 语句来勾勒出向量黑色。我该如何修改它以产生更粗的轮廓?
这是我的
int NumberOfRows = 49;
int NumberOfColumns = 36;
for (int k = 0; k < x; k++)
{
for (double i = results[k][1]; i < NumberOfRows + results[k][1]; i++)
{
for (double j = results[k][2]; j < NumberOfColumns + results[k][2]; j++)
{
if ((i == results[k][1]) || (i == results[k][1] + 48)) {
a.matrix[i][j] = 1.00;
}
else
{
if ((j == results[k][2]) || (j == results[k][2] + 35))
a.matrix[i][j] = 1.00;
}
}
}
}
像这样
if (i - results[k][1] < 2 || i - results[k][1] > NumberOfRows - 2) {
a.matrix[i][j] = 1.00;
}
else if (j - results[k][2] < 2 || j - results[k][2] > NumberOfColumns - 2)) {
a.matrix[i][j] = 1.00;
}
其中 2
是所需的宽度。
所以这可以通过从左边缘减去坐标来实现,i - results[k][1]
。如果那是 < 2
那么我们就在左边缘附近,或者如果那是 > NumberOfRows - 2
那么我们就在右边缘附近。顶部和底部边缘的类似过程。
我在二维向量中存储了值,并进行了一系列循环和 if 语句来勾勒出向量黑色。我该如何修改它以产生更粗的轮廓?
这是我的
int NumberOfRows = 49;
int NumberOfColumns = 36;
for (int k = 0; k < x; k++)
{
for (double i = results[k][1]; i < NumberOfRows + results[k][1]; i++)
{
for (double j = results[k][2]; j < NumberOfColumns + results[k][2]; j++)
{
if ((i == results[k][1]) || (i == results[k][1] + 48)) {
a.matrix[i][j] = 1.00;
}
else
{
if ((j == results[k][2]) || (j == results[k][2] + 35))
a.matrix[i][j] = 1.00;
}
}
}
}
像这样
if (i - results[k][1] < 2 || i - results[k][1] > NumberOfRows - 2) {
a.matrix[i][j] = 1.00;
}
else if (j - results[k][2] < 2 || j - results[k][2] > NumberOfColumns - 2)) {
a.matrix[i][j] = 1.00;
}
其中 2
是所需的宽度。
所以这可以通过从左边缘减去坐标来实现,i - results[k][1]
。如果那是 < 2
那么我们就在左边缘附近,或者如果那是 > NumberOfRows - 2
那么我们就在右边缘附近。顶部和底部边缘的类似过程。