Εμφάνιση αναρτήσεων με ετικέτα Openstreetmap. Εμφάνιση όλων των αναρτήσεων
Εμφάνιση αναρτήσεων με ετικέτα Openstreetmap. Εμφάνιση όλων των αναρτήσεων

Τετάρτη 4 Νοεμβρίου 2015

Mapzen shows crazy web map projections



By Aleks Buczkowski




Every GeoGeek knows that Mercator projection lies. It has been created by the Flemish geographer and cartographer Gerardus Mercator in 1569 with the purpose to help sailors navigate. The idea behind it was that sailors don’t care about shapes of a land or metric distances, what is important is a course towards which they sail. In practice Mercator had to create a projection which would preserve angles (and by that means distort shapes and distances). Mercator decided to go for the easiest and the most useful solution, he created a map with perpendicular meridians and parallels, so that courses of ships would be represented on a map as straight lines.

But placing a globe on a flat surface always comes with a price. With this approach we get an easy to sail and navigate map but the map distortions increase with latitudes, as the north and south poles are at positive and negative infinity. In order to avoid infinitely tall map mapping services select an arbitrary cutoff point typically somewhere around 80 degrees.

Over the last 20 years Mercator projection has been brought to a global awareness by web mapping portals. There are a couple of reasons why they decided to go for that option. First of all the perpendicular grid of parallels and meridians is elegant and easy to use for programmers (it is easy to cut into smaller tiles). Mercator projection is also favorable to rich western countries as it makes northern countries look biggest than they actually are.

Mapzen a NY-based, open source mapping lab is also aware of it and decided to show that web mapping is not all about Mercator. They’ve used their Tangram engine which allows for crazy dynamic transformations of OpenStreetMap and show cased couple of unique map projection concepts. We can read on the project’s website:

“Tangram draws maps in real-time in your web browser, using a hotline to your graphics card called OpenGL. Small programs called “shaders” allow the position and coloring of anything onscreen to be modified instantly, according to your own design.”

First of all you need to be patient as it make take a minute or two to load all the maps below. The first one presents Albers projection which is an equal-area conic projection focused mainly on the US.


Another cool thing done using Tangram engine is 3D-2D transformation to from the globe to plain Mercator projection.

But the most impressive things are yet to come. Below you see the Inception-alike horizonless projection.
“This bendy map is a mix of two views of the same data: the top part of the map is a standard top-down web map view (plus 3D buildings), and the bottom part is a tilted view of the same scene.”

The last example showcased by Mapzen is visualization of New York on a globe. It wraps the city tiles into a sphere of constant size and trims away whatever is left over.






These are only experimental projection concepts and there are not quite ready to take over the dominant position of Mercator but it shows that a lot of awesome things can be done. Great job Mapzen!

Δευτέρα 5 Οκτωβρίου 2015

Customization and support for arbitrary feature types in iD



By Sajjad Anwar

The OpenStreetMap iD editor provides powerful map editing in the browser with an emphasis on great user experience. It’s a great tool in its own right, so the Moabi initiative decided to use it. Moabi is a collaborative map of environmental data built on OpenStreetMap software (that’s right,not the data).

To use iD on other data than OpenStreetMap, you’ll be looking for two main customization aspects: presets and imagery. Presets capture map features - in OpenStreetMap that would be streets, parks, buildings - in the case of Moabi these could be mining or logging concessions. In terms of imagery, OpenStreetMap uses Bing, Mapbox Satellite and a variety of other providers where Moabi uses a combination of sources like the University of Maryland forest cover.

To make iD easier to customize I spent two weeks working closely with Aaron Lidman and John Firebaugh with the support from the Moabi initiative. We implemented simple preset and imagery customization and as Moabi frequently deals with very large features, we’ve made it easier to edit them.

Custom presets

iD now makes it really easy to load custom presets. You simply load presets together with the editor:

var iD = iD() 
    .presets(customPresets);


The format for presets is defined in the iD documentation. An example declaration for custom presets would look like this:


 mining: 
{ "name": "Mining Concession", 
 "geometry":  [ 
        "point", 
        "line", 
        "area"
 ], 

 "tags": { 

         "concession":"mining" 
             },

      }

}


To supply inline help and autocomplete functionality for presets you can also specify your own tag info service like OpenStreetMap TagInfo like:

var iD = iD() 
     .presets(customPresets) 
     .taginfo(iD.taginfo());

Custom imagery


Just like custom presets, to overwrite the default imagery selection in iD with your own, use the .imagery() accessor like here:

var iD = iD()
    .imagery(customImagery);


The expected format for imagery options is specified in the editor-imagery index documentation. An example would look like this:


   "name": "Bing aerial imagery", 
   "type": "bing", 
   "description": "Satellite and aerial imagery.", 
   "template": "http://www.bing.com/maps/", 
   "scaleExtent":  [ 
          0, 
          22 
    ], 

   "id": "Bing", 
   "default": true 

}

Editing large features

Editing data that contains very large and very small features in the same areas is challenging. To address this issue we have enabled a locking mechanism that limits access to very large features at high zoom levels.



For optimum performance, the minimum zoom level for editing is set at 16 by default. Depending on your data and use case, the minimum editable zoom level can now be configured like:

var iD = iD().
     .minEditableZoom(12);




The Moabi initiative is using these features today. If this type of work is exciting for you - Moabi is hiring.

Source: Mapbox