Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local blits = {}
- function getBlitRepresentation(r, g, b)
- local pixCompVal = r*r*2 + g*g*4 + b*b*3
- local minimumDiff = 999999
- local diffNum = 0
- for i=1, #blits, 1 do
- if math.abs(pixCompVal-blits[i]) <= minimumDiff then
- diffNum = i
- minimumDiff = blits[i]
- end
- end
- if diffNum < 11 then
- return tostring(diffNum)
- end
- if diffNum == 11 then
- return "a"
- end
- if diffNum == 12 then
- return "b"
- end
- if diffNum == 13 then
- return "c"
- end
- if diffNum == 14 then
- return "d"
- end
- if diffNum == 15 then
- return "e"
- end
- if diffNum == 16 then
- return "f"
- end
- end
- local monitor = peripheral.find("monitor")
- term.redirect(monitor)
- local xSize, ySize = term.getSize()
- local response = http.get("http://76.166.141.1/rest/mcImageConversion.php", {["Target-Image"] = "https://cataas.com/cat/cute", ["X"] = tostring(xSize), ["Y"] = tostring(ySize)})
- local str = response.readAll()
- local pixArr = {}
- for pixCol in string.gmatch(str, "[^%s]+") do
- table.insert(pixArr, pixCol)
- end
- blits[1] = tonumber(pixArr[1])*tonumber(pixArr[1])*2 + tonumber(pixArr[2])*tonumber(pixArr[2])*4 + tonumber(pixArr[3])*tonumber(pixArr[3])*3
- term.setPallateColor(colors.white, blits[1])
- blits[2] = tonumber(pixArr[4])*tonumber(pixArr[4])*2 + tonumber(pixArr[5])*tonumber(pixArr[5])*4 + tonumber(pixArr[6])*tonumber(pixArr[6])*3
- term.setPallateColor(colors.white, blits[2])
- blits[3] = tonumber(pixArr[7])*tonumber(pixArr[7])*2 + tonumber(pixArr[8])*tonumber(pixArr[8])*4 + tonumber(pixArr[9])*tonumber(pixArr[9])*3
- term.setPallateColor(colors.white, blits[3])
- blits[4] = tonumber(pixArr[10])*tonumber(pixArr[10])*2 + tonumber(pixArr[11])*tonumber(pixArr[11])*4 + tonumber(pixArr[12])*tonumber(pixArr[12])*3
- term.setPallateColor(colors.white, blits[4])
- blits[5] = tonumber(pixArr[13])*tonumber(pixArr[13])*2 + tonumber(pixArr[14])*tonumber(pixArr[14])*4 + tonumber(pixArr[15])*tonumber(pixArr[15])*3
- term.setPallateColor(colors.white, blits[5])
- blits[6] = tonumber(pixArr[16])*tonumber(pixArr[16])*2 + tonumber(pixArr[17])*tonumber(pixArr[17])*4 + tonumber(pixArr[18])*tonumber(pixArr[18])*3
- term.setPallateColor(colors.white, blits[6])
- blits[7] = tonumber(pixArr[19])*tonumber(pixArr[19])*2 + tonumber(pixArr[20])*tonumber(pixArr[20])*4 + tonumber(pixArr[21])*tonumber(pixArr[21])*3
- term.setPallateColor(colors.white, blits[7])
- blits[8] = tonumber(pixArr[22])*tonumber(pixArr[22])*2 + tonumber(pixArr[23])*tonumber(pixArr[23])*4 + tonumber(pixArr[24])*tonumber(pixArr[24])*3
- term.setPallateColor(colors.white, blits[8])
- blits[9] = tonumber(pixArr[25])*tonumber(pixArr[25])*2 + tonumber(pixArr[26])*tonumber(pixArr[26])*4 + tonumber(pixArr[27])*tonumber(pixArr[27])*3
- term.setPallateColor(colors.white, blits[9])
- blits[10] = tonumber(pixArr[28])*tonumber(pixArr[28])*2 + tonumber(pixArr[29])*tonumber(pixArr[29])*4 + tonumber(pixArr[30])*tonumber(pixArr[30])*3
- term.setPallateColor(colors.white, blits[10])
- blits[11] = tonumber(pixArr[31])*tonumber(pixArr[31])*2 + tonumber(pixArr[32])*tonumber(pixArr[32])*4 + tonumber(pixArr[33])*tonumber(pixArr[33])*3
- term.setPallateColor(colors.white, blits[11])
- blits[12] = tonumber(pixArr[34])*tonumber(pixArr[34])*2 + tonumber(pixArr[35])*tonumber(pixArr[35])*4 + tonumber(pixArr[36])*tonumber(pixArr[36])*3
- term.setPallateColor(colors.white, blits[12])
- blits[13] = tonumber(pixArr[37])*tonumber(pixArr[37])*2 + tonumber(pixArr[38])*tonumber(pixArr[38])*4 + tonumber(pixArr[39])*tonumber(pixArr[39])*3
- term.setPallateColor(colors.white, blits[13])
- blits[14] = tonumber(pixArr[40])*tonumber(pixArr[40])*2 + tonumber(pixArr[41])*tonumber(pixArr[41])*4 + tonumber(pixArr[42])*tonumber(pixArr[42])*3
- term.setPallateColor(colors.white, blits[14])
- blits[15] = tonumber(pixArr[43])*tonumber(pixArr[43])*2 + tonumber(pixArr[44])*tonumber(pixArr[44])*4 + tonumber(pixArr[45])*tonumber(pixArr[45])*3
- term.setPallateColor(colors.white, blits[15])
- blits[16] = tonumber(pixArr[46])*tonumber(pixArr[46])*2 + tonumber(pixArr[47])*tonumber(pixArr[47])*4 + tonumber(pixArr[48])*tonumber(pixArr[48])*3
- term.setPallateColor(colors.white, blits[16])
- local xCol = 1
- local yCol = 1
- term.setBackgroundColor(colors.black)
- term.clear()
- for i=49, table.getn(pixArr), 3 do
- term.setCursorPos(xCol, yCol)
- local blitChar = getBlitRepresentation(tonumber(pixArr[i]), tonumber(pixArr[i+1]), tonumber(pixArr[i+2]))
- term.blit(" ", " ", blitChar)
- xCol = xCol + 1
- if xCol > xSize then
- yCol = yCol + 1
- xCol = 1
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement