Coder Social home page Coder Social logo

enzet / map-machine Goto Github PK

View Code? Open in Web Editor NEW
359.0 8.0 21.0 40.06 MB

Python renderer for OpenStreetMap with custom icons intended to display as many map features as possible

License: MIT License

Python 99.68% Shell 0.23% Dockerfile 0.08%
openstreetmap icons openstreetmap-renderer python svg svg-icons svg-map map maps osm

map-machine's People

Contributors

aklofas avatar enzet avatar not-my-profile avatar phillies avatar strubbl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

map-machine's Issues

Display lane tagging

Hello, this is a really exciting project to see! I'm curious if you're thinking of showing details along roads, such as number of lanes, dedicated cycle/transit space, parking, turn lanes, and such. If so, I may be able to help a bit -- I work on A/B Street and have been struggling for a while to render OSM roads in high detail. A quick demo:
Screenshot from 2021-05-25 06-19-53

Possible ways to collaborate:

  • I have a function that tries to turn the key/values for a single OSM way into a left-to-right sequence of lane specifications, including width, type, and direction. The code is in Rust, but it would be relatively straightforward to port the logic to any language. I also have some unit tests encoding some of the trickier cases I've hit.
  • Brainstorming about design

Thanks, and keep up the awesome work with this renderer!

Add setup.py

To allow easy upload to PyPI and installation without cloning repository.

Create icons for tourism and accommodation tags, supported by OSM standard tile layer

License?

Interesting work! :)

What's the license of these icons?

Fix icon outline drawing

Icon outlines are now drawn for each shape separately. Overlapping part are therefore visible if outlines are partially transparent. Transparency parameter should be applied to the SVG <g> tag that wraps icon shapes.

Allow to use Roentgen as a library

It will be great to have the opportunity to use Roentgen as a library for other projects such as web-viewers, etc.
So it should have a high-level API, not only the "main" function that does all the stuff.

Fix time and user modes

There are two modes, time and user-coloring, to visualize creation time of elements and element authors.

Create icons for shops and services tags, supported by OSM standard tile layer

Add portal icons

Add icons for nodes with tags power=tower + design=portal (design=portal_two-level, design=portal_three-level), and power=portal.

Fix double shape drawing

Sometimes two identical shapes are used as extra icons for a point. E.g. for highway=bus_stop, public_transport=platform, bus=yes will draw two bus extra icons (for the first and the third tag). Obviously, it's redundant.

Create icons for historical tags, supported by OSM standard tile layer

Review icon identifiers

Icons should have names that describe what is depicted and not what it means. E.g. the waving flag icon is used for an embassy, but should have waving_flag ID, not embassy ID.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.