mirror of
https://github.com/rastapasta/mapscii.git
synced 2025-06-02 00:05:43 +02:00
🎨 clearing screen right before first draw
This commit is contained in:
parent
043e271985
commit
d2f182c2b2
@ -19,6 +19,9 @@ module.exports = class Renderer
|
|||||||
|
|
||||||
labelMargin: 5
|
labelMargin: 5
|
||||||
|
|
||||||
|
tileSize: 4096
|
||||||
|
projectSize: 256
|
||||||
|
|
||||||
#"poi_label", "water",
|
#"poi_label", "water",
|
||||||
drawOrder: [
|
drawOrder: [
|
||||||
"admin"
|
"admin"
|
||||||
@ -78,7 +81,6 @@ module.exports = class Renderer
|
|||||||
draw: (@view, @zoom, @degree) ->
|
draw: (@view, @zoom, @degree) ->
|
||||||
return if @isDrawing
|
return if @isDrawing
|
||||||
@isDrawing = true
|
@isDrawing = true
|
||||||
@lastDrawAt = Date.now()
|
|
||||||
|
|
||||||
@notify "rendering..."
|
@notify "rendering..."
|
||||||
|
|
||||||
@ -93,16 +95,23 @@ module.exports = class Renderer
|
|||||||
@canvas.translate @view[0], @view[1]
|
@canvas.translate @view[0], @view[1]
|
||||||
@_drawLayers()
|
@_drawLayers()
|
||||||
|
|
||||||
|
unless @lastDrawAt
|
||||||
|
@_clearScreen()
|
||||||
|
|
||||||
@output.write "\x1B[?6h"
|
@output.write "\x1B[?6h"
|
||||||
@output.write @canvas.frame()
|
@output.write @canvas.frame()
|
||||||
|
|
||||||
@isDrawing = false
|
@isDrawing = false
|
||||||
|
@lastDrawAt = Date.now()
|
||||||
|
|
||||||
featuresAt: (x, y) ->
|
featuresAt: (x, y) ->
|
||||||
@labelBuffer.featuresAt x, y
|
@labelBuffer.featuresAt x, y
|
||||||
|
|
||||||
|
_clearScreen: ->
|
||||||
|
@output.write "\x1B[2J"
|
||||||
|
|
||||||
_write: (output) ->
|
_write: (output) ->
|
||||||
process.stdout.write output
|
@output.write output
|
||||||
|
|
||||||
_drawLayers: ->
|
_drawLayers: ->
|
||||||
for layer in @config.drawOrder
|
for layer in @config.drawOrder
|
||||||
@ -114,7 +123,7 @@ module.exports = class Renderer
|
|||||||
|
|
||||||
continue unless @features?[layer]
|
continue unless @features?[layer]
|
||||||
|
|
||||||
scale = ((4096/256)<<4)/Math.pow(2, @zoom+4)
|
scale = (@config.tileSize/@config.projectSize)/Math.pow(2, @zoom)
|
||||||
|
|
||||||
if @config.layers[layer]?.minZoom and @zoom > @config.layers[layer].minZoom
|
if @config.layers[layer]?.minZoom and @zoom > @config.layers[layer].minZoom
|
||||||
continue
|
continue
|
||||||
|
Loading…
x
Reference in New Issue
Block a user