mirror of
https://github.com/rastapasta/mapscii.git
synced 2024-11-21 23:53:08 +01:00
🎨 moving poiMarker to config, improving asciiMap
This commit is contained in:
parent
7e255edc53
commit
7edde3b30f
@ -18,14 +18,15 @@ utils = require './utils'
|
|||||||
module.exports = class BrailleBuffer
|
module.exports = class BrailleBuffer
|
||||||
brailleMap: [[0x1, 0x8],[0x2, 0x10],[0x4, 0x20],[0x40, 0x80]]
|
brailleMap: [[0x1, 0x8],[0x2, 0x10],[0x4, 0x20],[0x40, 0x80]]
|
||||||
asciiMap:
|
asciiMap:
|
||||||
#"▬": [2+32, 4+64]
|
# "▬": [2+32, 4+64]
|
||||||
# "▌": [1+2+4+8]
|
# "▌": [1+2+4+8]
|
||||||
# "▐": [16+32+64+128]
|
# "▐": [16+32+64+128]
|
||||||
|
#"¯": [1+16]
|
||||||
"▀": [1+2+16+32]
|
"▀": [1+2+16+32]
|
||||||
"▄": [4+8+64+128]
|
"▄": [4+8+64+128]
|
||||||
"■": [2+4+32+64]
|
"■": [2+4+32+64]
|
||||||
#"▓": [1+4+32+128, 2+8+16+64]
|
|
||||||
"█": [255]
|
"█": [255]
|
||||||
|
#"▓": [1+4+32+128, 2+8+16+64]
|
||||||
|
|
||||||
pixelBuffer: null
|
pixelBuffer: null
|
||||||
charBuffer: null
|
charBuffer: null
|
||||||
@ -86,15 +87,14 @@ module.exports = class BrailleBuffer
|
|||||||
continue unless bits instanceof Array
|
continue unless bits instanceof Array
|
||||||
masks.push mask: mask, char: char for mask in bits
|
masks.push mask: mask, char: char for mask in bits
|
||||||
|
|
||||||
reducer = (best, mask) ->
|
|
||||||
covered = utils.population(mask.mask&i)
|
|
||||||
return if not best or best.covered < covered
|
|
||||||
char: mask.char, covered: covered
|
|
||||||
else
|
|
||||||
best
|
|
||||||
|
|
||||||
for i in [1..255]
|
for i in [1..255]
|
||||||
@asciiToBraille[i] = masks.reduce(reducer, undefined).char
|
@asciiToBraille[i] = masks.reduce(((best, mask) ->
|
||||||
|
covered = utils.population mask.mask&i
|
||||||
|
if not best or best.covered < covered
|
||||||
|
char: mask.char, covered: covered
|
||||||
|
else
|
||||||
|
best
|
||||||
|
), undefined).char
|
||||||
|
|
||||||
_termColor: (foreground, background) ->
|
_termColor: (foreground, background) ->
|
||||||
background = background or @globalBackground
|
background = background or @globalBackground
|
||||||
|
@ -175,9 +175,8 @@ module.exports = class Renderer
|
|||||||
@canvas.polygon points, feature.color
|
@canvas.polygon points, feature.color
|
||||||
|
|
||||||
when "symbol"
|
when "symbol"
|
||||||
genericSymbol = null
|
|
||||||
text = feature.label or
|
text = feature.label or
|
||||||
genericSymbol = "◉"
|
genericSymbol = config.poiMarker
|
||||||
|
|
||||||
return false if @_seen[text] and not genericSymbol
|
return false if @_seen[text] and not genericSymbol
|
||||||
|
|
||||||
@ -192,8 +191,8 @@ module.exports = class Renderer
|
|||||||
break
|
break
|
||||||
|
|
||||||
else if config.layers[feature.layer]?.cluster and
|
else if config.layers[feature.layer]?.cluster and
|
||||||
@labelBuffer.writeIfPossible "◉", point.x, point.y, feature, 3
|
@labelBuffer.writeIfPossible config.poiMarker, point.x, point.y, feature, 3
|
||||||
@canvas.text "◉", point.x, point.y, feature.color
|
@canvas.text config.poiMarker, point.x, point.y, feature.color
|
||||||
placed = true
|
placed = true
|
||||||
break
|
break
|
||||||
|
|
||||||
|
@ -36,4 +36,6 @@ module.exports =
|
|||||||
|
|
||||||
headless: false
|
headless: false
|
||||||
|
|
||||||
delimeter: "\n\r"
|
delimeter: "\n\r"
|
||||||
|
|
||||||
|
poiMarker: "◉"
|
Loading…
Reference in New Issue
Block a user