我想创建一个环境地图,即。我的房间。我想使用 2D Array 对我的房间进行 2D 表示。
我正在尝试映射一个房间,其坐标从 (5,5)、(10,5)、(5,10) 和 (10,10) 开始。如果您想知道,这是一个 5x5 的正方形。我想将其映射到 100x100 单元格的 2D 网格中。
我用来映射的数学是,
X' = (maxRangeX - minRangeX)*(X - minX)/(maxX - minX) + minRangeX
Y' = (maxRangeY - minRangeY)*(Y - minY)/(maxY - minY) + minRangeY
在哪里
maxRangeX 100 maxX 10 maxRangeY 100 maxY 10
minRangeX 0 minX 5 minRangeY 0 minY 5
如您所知,Array 的工作方式是从左上角开始 (0,0),从右下角开始 (100,100),在这种情况下,我的意思是。但是,通过使用我上面显示的数学,它似乎将房间映射到一个二维数组,其中 (0,0) 从左下角开始, (100,100) 在右上角结束,(0,100) 在左上角和 (100, 0) 在右下角。
我想将房间映射,以便结果按数组结构的结构排序。
任何帮助是极大的赞赏。
更新:
思路还是如上,这里放一张图来进一步说明。