如何从二维数组为 QHeightMapSurfaceDataProxy 创建高度图以显示二维傅里叶变换结果

How can I create heightmap for QHeightMapSurfaceDataProxy from 2D array to show 2D Fourier transform results

我有数据 - 二维离散傅里叶变换结果。我想获得高度图,但我不知道如何形成高度图。我需要通过高度图(不仅仅是二维数组)将这些数据绘制为 Q3DSurface 中的表面。

QHeightMapSurfaceDataProxy 的构造函数将图像或图像文件作为参数。您需要做的就是创建此图像并加载它。

图像可以很容易地从二维数组生成,因为用于指向存储在其中的特定值的索引可以解释为 X、Y,而特定索引对处的值作为 Z 坐标。

示例:

如果您有以下作业

myarr[2][10] = 200;

您可以将其读作 X=2、Y=10 和 Z=200,这意味着位置 [2;10] 处的像素的值为 200。

图像的大小是通过获取数组的维度来计算的。如果您有 10x15 个元素,您的图像将是 10x15 像素。检查如何填充 QImage 以获得更准确的代码,而不是我上面的伪代码。