mirror of
https://github.com/rastapasta/mapscii.git
synced 2024-11-25 09:33:48 +01:00
📖 updating readme, cleaning up finished ToDos
This commit is contained in:
parent
c206055596
commit
73a56dce9d
84
README.md
84
README.md
@ -1,15 +1,19 @@
|
|||||||
# MapSCII - The Whole World In Your Console.
|
# MapSCII - The Whole World In Your Console.
|
||||||
|
|
||||||
MapSCII is a node.js based [Vector Tile](https://github.com/mapbox/vector-tile-spec) to [Braille](http://www.fileformat.info/info/unicode/block/braille_patterns/utf8test.htm) renderer for [xterm](https://en.wikipedia.org/wiki/Xterm)-compatible terminals.
|
A node.js based [Vector Tile](http://wiki.openstreetmap.org/wiki/Vector_tiles) to [Braille](http://www.fileformat.info/info/unicode/block/braille_patterns/utf8test.htm) and [ASCII](https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange) renderer for [xterm](https://en.wikipedia.org/wiki/Xterm)-compatible terminals.
|
||||||
|
|
||||||
<img src="http://i.imgur.com/yYVt7No.png" width="100%" />
|
<img src="http://i.imgur.com/yYVt7No.png" width="100%" />
|
||||||
|
|
||||||
* Discover the globe or zoom in to explore your neighbourhood
|
## Features
|
||||||
* See Point-of-Interest around any given location
|
|
||||||
* Highly customizable layer styling with [Mapbox Styles](https://www.mapbox.com/mapbox-gl-style-spec/)
|
* Use your mouse to drag and zoom in and out
|
||||||
* Compatible with Linux and OSX terminals, Windows support via [PuTTY](http://www.putty.org/)
|
* Discover Point-of-Interests around any given location
|
||||||
* Connect to any vector tile server - or just use my custom [OpenStreetMap](https://en.wikipedia.org/wiki/OpenStreetMap) based one
|
* Highly customizable layer styling with [Mapbox Styles](https://www.mapbox.com/mapbox-gl-style-spec/) support
|
||||||
* Work offline and discover local VectorTile/MBTiles
|
* Connect to any public or private vector tile server
|
||||||
|
* Or just use the supplied and optimized [OpenStreetMap](https://en.wikipedia.org/wiki/OpenStreetMap) based one
|
||||||
|
* Work offline and discover local [VectorTile](https://github.com/mapbox/vector-tile-spec)/[MBTiles](https://github.com/mapbox/mbtiles-spec)
|
||||||
|
* Compatible with most Linux and OSX terminals
|
||||||
|
* Highly optimizied algorithms for a smooth experience
|
||||||
* 100% pure Coffee-/JavaScript! :sunglasses:
|
* 100% pure Coffee-/JavaScript! :sunglasses:
|
||||||
|
|
||||||
## How to install
|
## How to install
|
||||||
@ -67,73 +71,33 @@ If your terminal supports mouse events you can drag the map and use your scroll
|
|||||||
### TODOs
|
### TODOs
|
||||||
* MapSCII
|
* MapSCII
|
||||||
* [ ] CLI support
|
* [ ] CLI support
|
||||||
* [X] global linking for npm install -g
|
|
||||||
* [ ] startup parameters
|
* [ ] startup parameters
|
||||||
* TileSource
|
* [ ] TileSource
|
||||||
* [ ] VectorTile
|
|
||||||
* [ ] MBTile
|
|
||||||
* [ ] Tileserver
|
|
||||||
* [ ] Style
|
* [ ] Style
|
||||||
* [ ] center position
|
* [ ] center position
|
||||||
* [ ] POI filter?
|
* [ ] zoom
|
||||||
* [ ] Viewport
|
* [ ] demo mode?
|
||||||
* [x] start with zoom level which shows full
|
|
||||||
* [X] world
|
|
||||||
* [ ] vector tile
|
|
||||||
* [X] boundary based on current zoom & size
|
|
||||||
* [X] determain tiles to show
|
|
||||||
* [X] zoom while keeping center
|
|
||||||
* [ ] calculate tile areas
|
|
||||||
* [X] center based on mercator
|
|
||||||
* [x] handle console resize
|
|
||||||
* [ ] mapscii-server
|
|
||||||
* [ ] telnet
|
|
||||||
* [ ] ssh
|
|
||||||
* [x] handle console resize
|
|
||||||
* [ ] mouse control
|
* [ ] mouse control
|
||||||
* [x] accurate mouse drag&drop with instant update
|
* [ ] accurate mouse drag&drop with instant update
|
||||||
* [x] hover POIs/labels
|
* [ ] hover POIs/labels
|
||||||
* [ ] hover maybe even polygons/-lines?
|
* [ ] hover maybe even polygons/-lines?
|
||||||
* [ ] get hover lat/lng
|
* [ ] get hover lat/lng
|
||||||
* [ ] zoom into mouse pos
|
* [ ] zoom into mouse pos
|
||||||
* [ ] API
|
|
||||||
* [ ] setCenter
|
|
||||||
* [ ] setZoom
|
|
||||||
|
|
||||||
* Styler
|
* Styler
|
||||||
* [x] compile filters to function chains
|
* [ ] respect zoom based style stops
|
||||||
* [x] support constants
|
|
||||||
* [x] respect minzoom
|
|
||||||
|
|
||||||
* Renderer
|
* Renderer
|
||||||
* [x] position tiles accordingly
|
* [ ] polygons
|
||||||
* [ ] line drawing
|
* [ ] holes
|
||||||
* [x] support for stroke width
|
* [ ] use rbush?
|
||||||
* [ ] support for dashed/dotted lines?
|
|
||||||
* [ ] feature selection for priority rerendering (roads -> warter -> roads:bridges)
|
|
||||||
|
|
||||||
* [ ] label drawing
|
* [ ] label drawing
|
||||||
* [x] support for point labels
|
* [ ] multi line label?
|
||||||
* [x] dynamic decluttering of labels
|
|
||||||
* [x] centering text labels
|
|
||||||
* [x] clipping fix when x<0 after repositioning
|
|
||||||
* [ ] multi line label
|
|
||||||
* [x] label margin to avoid POI overlap?
|
|
||||||
* [ ] translatable raster fonts
|
|
||||||
|
|
||||||
* [x] filled polygons
|
* TileSource
|
||||||
* [x] convert polygons to triangles
|
* [ ] implement single vector-tile handling
|
||||||
* [x] use triangulation for filling
|
|
||||||
* [x] respect fill/line style file based setting
|
|
||||||
|
|
||||||
* Tile
|
|
||||||
* [x] directly throw away features that aren't covered by any style
|
|
||||||
* [x] TileSource class (abstracting URL, mbtiles, single vector tile source)
|
|
||||||
* [x] tile request system
|
|
||||||
* [ ] from single vector-tile
|
|
||||||
* [x] from local mbtiles
|
|
||||||
* [x] from remote url
|
|
||||||
* [x] permanent caching of received files
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
#### The MIT License (MIT)
|
#### The MIT License (MIT)
|
||||||
|
Loading…
Reference in New Issue
Block a user