package renderer import ( "math" ) var ascii = map[string]float64{ " ":0, "`":0.0751, ".":0.0829, "-":0.0848, "'":0.1227, ":":0.1403, "_":0.1559, ",":0.185, "^":0.2183, "=":0.2417, ";":0.2571, ">":0.2852, "<":0.2902, "+":0.2919, "!":0.3099, "r":0.3192, "c":0.3232, "*":0.3294, "/":0.3384, "z":0.3609, "?":0.3619, "s":0.3667, "L":0.3737, "T":0.3747, "v":0.3838, ")":0.3921, "J":0.396, "7":0.3984, "(":0.3993, "|":0.4075, "F":0.4091, "i":0.4101, "{":0.42, "C":0.423, "}":0.4247, "f":0.4274, "I":0.4293, "3":0.4328, "1":0.4382, "t":0.4385, "l":0.442, "u":0.4473, "[":0.4477, "n":0.4503, "e":0.4562, "o":0.458, "Z":0.461, "5":0.4638, "Y":0.4667, "x":0.4686, "j":0.4693, "y":0.4703, "a":0.4833, "]":0.4881, "2":0.4944, "E":0.4953, "S":0.4992, "w":0.5509, "q":0.5567, "k":0.5569, "P":0.5591, "6":0.5602, "h":0.5602, "9":0.565, "d":0.5776, "4":0.5777, "V":0.5818, "p":0.587, "O":0.5972, "G":0.5999, "b":0.6043, "U":0.6049, "A":0.6093, "K":0.6099, "X":0.6465, "H":0.6561, "m":0.6595, "8":0.6631, "R":0.6714, "D":0.6759, "#":0.6809, "$":0.6816, "B":0.6925, "g":0.7039, "0":0.7086, "M":0.7235, "N":0.7302, "W":0.7332, "Q":0.7602, "%":0.7834, "&":0.8037, "@":0.9999, } func GetChar(brightness float64) string { var char string = " " var delta float64 = 1 for k, v := range ascii { otherDelta := math.Abs(v - brightness) if (otherDelta < delta) { delta = otherDelta char = k } } return char }