' * Convert an integer to a hex string *
function ConvertINTtoHEX(num as integer) as string
return rdINTtoBA(num).toHexString()
end function
' * Convert an integer to a (4 byte) roByteArray *
function fastINTtoBA(num as integer) as object
ba = CreateObject("roByteArray")
ba.setresize(4, false)
i% = num
ba[3] = i%
i% = i% / 256 : ba[2] = i% ' using % auto converts float from division to int
i% = i% / 256 : ba[1] = i% ' then assigning to bytes auto truncates (AND &h0ff)
i% = i% / 256 : ba[0] = i%
return ba
end function
function decToHex (dec as integer) as string
hexTab = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"]
hex = ""
while dec > 0
hex = hexTab [dec mod 16] + hex
dec = dec / 16
end while
if hex = "" return "0" else return hex
end function
"MSGreg" wrote:
Easiest way, I think, is to go through a byte array.
BrightScript Debugger> ba = CreateObject("roByteArray"):ba.push(255):?ba.toHexString()
FF
Function addOpacityToHexColor(color as String, opacity as float) as String opacityHex = StrI(Cint(opacity * 255), 16) ' Converting Float / Integer to Hex return "#" + color + opacityHex End Function