diff options
author | Philipp Gesang <phg@phi-gamma.net> | 2017-02-01 08:18:28 +0100 |
---|---|---|
committer | Philipp Gesang <phg@phi-gamma.net> | 2017-02-01 08:18:28 +0100 |
commit | 19ba6b14e20738c82ad539b2a4b0690e7880e3cb (patch) | |
tree | fa23bc0113f3a8f141e2ecd06a1d352665f408d7 /lualibs-number.lua | |
parent | 12d27922f7bb7f466b5d476fa2c1ddc08a300513 (diff) | |
download | lualibs-19ba6b14e20738c82ad539b2a4b0690e7880e3cb.tar.gz |
sync with Context as of 2017-02-01
Diffstat (limited to 'lualibs-number.lua')
-rw-r--r-- | lualibs-number.lua | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lualibs-number.lua b/lualibs-number.lua index 001ca31..c6f1e33 100644 --- a/lualibs-number.lua +++ b/lualibs-number.lua @@ -13,6 +13,7 @@ local tostring, tonumber = tostring, tonumber local format, floor, match, rep = string.format, math.floor, string.match, string.rep local concat, insert = table.concat, table.insert local lpegmatch = lpeg.match +local floor = math.floor number = number or { } local number = number @@ -205,3 +206,25 @@ end function number.bits(n) return { bits(n,1) } end + +function number.bytetodecimal(b) + local d = floor(b * 100 / 255 + 0.5) + if d > 100 then + return 100 + elseif d < -100 then + return -100 + else + return d + end +end + +function number.decimaltobyte(d) + local b = floor(d * 255 / 100 + 0.5) + if b > 255 then + return 255 + elseif b < -255 then + return -255 + else + return b + end +end |