衡量我与lua的距离

时间:2013-02-12 20:48:14

标签: gps lua location

如何衡量 lua 计划的运行程度?优选地来自gps位置。我有经度和纬度。

1 个答案:

答案 0 :(得分:0)

我会使用闭包和毕达哥拉斯定理来做到这一点:

function odometer(curx, cury)
    local x = curx or 0
    local y = cury or 0
    local total = 0
    return function(newx, newy)
        local difx = math.abs(newx - x)
        local dify = math.abs(newy - y)
        total = total + math.sqrt(difx * difx + dify * dify)
        x, y = newx, newy
        return total
    end
end

在你的应用程序启动时,你会打电话给odometer并传入你当前的经度和纬度(或默认为0):

myodometer = odometer(longitude, latitude)

之后,您将应用程序设置为每隔1000毫秒调用myodometer,同时传递新的经度和纬度:

myodometer(newlongitude, newlatitude)

Here's a link to Lua closures