所以基本上我将数组索引转换为2d坐标。
我在尝试的是2D反向:https://softwareengineering.stackexchange.com/a/212813/199992
但是在x的除法部分(在我的情况下宽度是3),它返回一个double / float,这是有意义的,因为(2/3)不是一个整数。
我应该四舍五入吗?
我的代码(Lua)是:
for i=1, 9 do
local x = i % 3
local y = i / 3
end
答案 0 :(得分:1)
是的,你应该舍入x(向下),对于y来说是相同的:
local x = math.floor(i % 3)
local x = math.floor(i / 3)
但是你应该从0..8开始计数(并且将x加0加1为1),或者从i中减去1(这是我通常在lua中执行的操作):
for i=1, 9 do
local x = math.floor((i - 1) % 3) + 1 -- 1, 2 or 3
local y = math.floor((i - 1) / 3) + 1 -- 1, 2 or 3
end