【发布时间】:2025-12-06 08:50:02
【问题描述】:
有人告诉我,矩阵的坐标不一定要用中心点表示,也可以用角点表示。然而,我真的不知道该怎么做。尽管如此,我有这些信息与中心点和角点的矩阵符号相关,如下所示。
[Nr, Nc] = size(Img);
还有:
Nr = ny+1; % which is total no. of centre rows
Nc = nx+1; % which is total no. of center columns
还有,
ny = Nr – 1; % which is total no. of line rows
nx = Nc – 1; % which is total no. of line columns
T = ny * nx; % where T = Total no. of internal nodes
nodeCount = nx(iy – 1) + jx;
计数顺序是逐行的,即从节点开始:(1,1) to (1,nx),然后是(2,1) to (2, nx),等等。请注意,在给定的图像(6x6 矩阵)中,nodeCount 有 25 个数组元素。
现在,我需要获取 nodeCount 以便它包含从 1 到 T 按指定计数顺序计数的所有内部节点的数组。然后,我将从 nodeCount 中的每个索引中获取 x 和 y 坐标。
请,我需要有关如何解决此问题的帮助/建议/建议。非常感谢。
【问题讨论】:
-
你的描述有点模糊,是
[x,y] = meshgrid(1:nx,1:ny); coords = [x(:),y(:)]你需要的吗? -
非常感谢@Florian。抱歉这么晚才回复。是的,您的代码让我得到
x and y coords,这是问题的第二部分。然而,我仍然需要找到nodeCount。感谢您的帮助。 -
如果我理解正确的话,nodeCount 应该是
nodeCount = nx*(coords(:,2)-1) + coords(:,1)。 -
是的,没错。我确实从中得到了 nodeCount,但是从整个代码的工作方式来看,我需要拥有 nodeCounts,然后从 nodeCount 中提取 x 和 y 坐标以进行进一步的计算。我希望你明白我的意思?
-
我希望我明白你的意思:我做了一个回复,显示了所有 4 个变体:从头开始创建
nodeCount和coords并将一个转换为另一个。您问的最后一个是数字 4):将 nodeCount 转换为坐标。