মডিউল:মান রং
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg/50px-Test_Template_Info-Icon_-_Version_%282%29.svg.png)
আপনি চাইলে এই স্ক্রিবুন্তো মডিউলের জন্য একটি নথির পাতা তৈরি করতে পারেন (তৈরি করুন) সম্পাদনাকারীগণ খেলাঘর (সম্পাদনা | পার্থক্য) এবং পরীক্ষা পাতায় (তৈরি করুন) এই মডিউল সংক্রান্ত পরীক্ষা-নিরীক্ষা করতে পারেন। দয়া করে /নথি উপপাতায় বিষয়শ্রেণী যোগ করুন। এই মডিউলের উপপাতাসমূহ। |
local getArgs = require('Module:Arguments').getArgs
local p = {}
local function rgb(color)
local _, _, R, G, B = color:find('(%w%w)(%w%w)(%w%w)')
return tonumber(R, 16), tonumber(G, 16), tonumber(B, 16)
end
function p.main(frame)
local args = getArgs(frame)
local value, minValue, maxValue = tonumber(args[1]), tonumber(args[2]), tonumber(args[3])
if not (value and minValue and maxValue) then
return require('Module:Error').error{' পরিমিতি ১,২,৩ আবশ্যক এবং এটি অবশ্যই সংখ্যা হতে হবে'}
end
local minR, minG, minB = rgb(args[4] or 'FFFFFF')
local maxR, maxG, maxB = rgb(args[5] or '000000')
local percent = math.max(0, math.min(1, (value - minValue) / (maxValue - minValue)))
local red, green, blue = minR + (maxR - minR) * percent, minG + (maxG - minG) * percent, minB + (maxB - minB) * percent
return args['hex'] and string.format('#%x%x%x', red, green, blue) or string.format('rgb(%.0f,%.0f,%.0f)', red, green, blue)
end
return p