Giter VIP home page Giter VIP logo

touch-mapper's Introduction

Touch Mapper

Tactile map maker. Creates files for 3D or embossing printing from OpenStreetMap data. See https://touch-mapper.org

Development

Install dependencies

./init.sh

Setup AWS CLI

aws configure

Create AWS resources

make dev-aws-install

API Gateway for accessing email sending Lambda is for now not created automatically. The same API GW endpoints can be used by all Touch Mapper instances.

Install static website to S3

make dev-web-s3-install

Last line of output gives the URL (https://something.cloudfront.net) where the web UI can be accessed.

Run OSM -> STL converter service

In a tab of its own:

install/run-dev-converter.sh

Local web development

In web dir, in separate tabs:

make watch
make serve

You can now access the web UI in http://localhost:9000

Feature roadmap

List is in a rough priority order.

  • Allow printing a QR sticker that points to touch-mapper.org/?map=deadbeef
  • Allow inspecting maps on a touch device.
    • APH's Nearby Explorer, and other apps
  • Describe map contents in the web UI (in progress).
  • Describe map contents in audio
    • Could perhaps crowd source production of the descriptions
  • Print labels for roads and/or points of interest
    • Maybe use short labels, and offer a separate legend that maps the labels to longer descriptions. The legend could be electronic.
  • Replace spinning 3D preview with one or more larger static images, create using Blender Render, using ambient occlusion
    • 3D preview is too small and unclear, and doesn't work on all devices
  • Remember user's past maps
  • Avoid significant overlaps between roads and buildings. This would enable reliable two-color 3D printing.
  • Print a compass star into corner of the map
  • Indicate map scale using small dots on map borders
  • Smaller scale modes: only show water/land/green areads; N largest roads; city borders
  • Non-square maps
  • Indoor areas

Technical TODO:

  • Move converter from EC2 to Lambda
  • Do all the work in a Java application that could be based on the first stages of OSM2World transformation pipeline. Benefits:
    • Do road processing mostly when they are still line segments rather than 2D objects
    • Better performance
    • Simpler processing pipeline

touch-mapper's People

Contributors

skarkkai avatar matkoniecz avatar dkager avatar

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.