OSM verilerine göre özel haritaları nasıl çizer ve görselleştiririm?


35

Belli bir bölge için openstreetmap verilerini kaynak olarak kullanabilmek ve altyapı iyileştirme haritasından - çoğunlukla yollardan "çizmek" yapmak istiyorum.

Kendini barındırmasını istiyorum (gerçek OSM sunucularında hiçbir veriyi bozmadım), düzenleme sürecinde oldukça büyük bir esneklik ve ayrıntı seviyesine sahip olmak istiyorum ve bunu güzel bir şekilde yapmak güzel olurdu.

Pek çok GIS yazılımı kullanmıyorum. Aslında OSM verilerinin kaynak olması o kadar önemli değil, uydu görüntüsü de olabilir. Önemli şeyler - esnek çizim gerçek koordinatlara ve haritanın görselleştirilmesine bağlı.

Nereden başlayabilirim?

Umarım bu soru burada mantıklı :)


Hangi platformda bakıyorsun? Şekil çizmek için Google Haritalar’ı kullanabilir misiniz?
Jared Updike

Jared, Google Haritalar'ın basit "Haritalarım" arayüzünü mü kastediyorsun? Bu benim için yeterli değil :) Çok daha fazla ayrıntıya ihtiyacım var. Yoksa başka bir şey mi demek istiyorsun?
arconaut

Bunu dünyanın hangi kısmı için yapmak istersin? Kamusal alanda, dünyanın bazı bölgelerinde çok fazla yol verisi var.
djq

Yanıtlar:


16

OpenStreetMap .osm XML veri türü, çeşitli yazılım paketlerinde ayrıştırılabilir ve işlenebilir. Bir miktar anahtar teslim özel harita döşeme çekmecesi için şunu öneriyorum: http://tiledrawer.com --- Amazon'un EC2'sini ve Michal Migurski'nin kullandığı bir ürün - bu konudaki diğer göstergeleri sağlayan :)

"Kendi OpenStreetMap Sunucunuzu Oluşturun" bölümüne de bakabilirsiniz http://weait.com/content/build-your-own-openstreetmap-server Bir Ubuntu 10.04 / PostGIS / Mapnik yığını kullanır.

Tabii ki, lütfen inşa etmeden önce OpenStreetMap lisansına bakın. http://wiki.openstreetmap.org/wiki/OpenStreetMap_License .


Teşekkürler, bir kez TileDrawer'a rastladım, ama anladığım kadarıyla bunun için bir Amazon EC2 örneğine ihtiyacım var. Şimdilik bunu yapmak istemiyorum, belki de sadece çok tembelim :)
arconaut

ECBox görüntüsünü VirtualBox kullanarak kendi makinenizde çalıştırabileceğinizi okudum.
James,

Tiledrawer'in web sitesi kaldırıldı, Github deposu hala orada ama aynı zamanda etkin değil: github.com/migurski/Tile-Drawer (ayrıca OSM Wiki'ye bakınız )
chrki

11

Tam olarak ihtiyacım olanı buldum: Maperitive . Bu uygulama OSM verilerini yükleyebilir (* .osm, JOSM fi tarafından kaydedilebilir) ve çok esnek ve özelleştirilebilir kurallara dayalı olarak güzel görüntüler oluşturabilir.


Bir .osm.bz2 dosyasını veya hatta bir .osm.pbf dosyasını yüklemeye çalışırsam Maperitive'in kilitlendiğini buldum. Denediğim dosyalar 185 MB civarındaydı, bu yüzden gerçekten ihtiyacım olan planet.osm.bz2 dosyasının (19GB!) Boyutuna yakın bir şey yok. Dosyaları nasıl yüklediniz?
Drew No:

Drew, sanırım daha küçük alanlar denedim.
arconaut

Maperitive kapalı kaynaktır, .NET'in üzerine kuruludur, linux üzerinde çalışmaz. Ancak kesinlikle Mapnik'e göre bir avantajı var: Daha kolay stil.
Vanuan

3
TileMill'i açık kaynaklı bir alternatif olarak öneriyorum.
Vanuan

9

OSM verilerinin kendisinin ne kadarını düzenlemek istediğinize bağlı olarak iki olasılık.

Bunlardan biri, kendi OSM sunucunuzu, serbestçe düzenleyebileceğiniz verilerin bir kopyası ile birlikte barındırmaktır. Bunun için "Rails Port" olarak bilinen yazılım burada bulunabilir: http://wiki.openstreetmap.org/wiki/The_Rails_Port

Bir diğeri ise OSM'nin döşenmiş kartografisini kendi verileriniz için bir arka plan olarak kullanmaktır. Buna cevap vermeye gerçekten yetkin değilim, ancak QGIS (http://www.qgis.org) gibi araçların OSM temel haritasına dayalı yeni şekillerin izlenmesini sağlayabildiğini görebilirsiniz.


8

Harita oluşturma birkaç adıma ayrılmıştır:

  • coğrafi veriye girme (uygun etiketlere sahip noktalar, çizgiler ve çokgenler)
  • stil (harita üzerinde özellik görünümünü belirtin)
  • görüntüyü raster görüntüye dönüştürün (coğrafi verileri ve stili, görüntü oluşturma yazılımını kullanarak görüntüye dönüştürün)

Kullanımı kolay bir kullanıcı arayüzü arkasındaki tüm tuhaflıkları yapan bir araç istersiniz. Ancak ne yazık ki, böyle bir araç yoktur (umarım, olacaktır). Bu nedenle, her adım için özel bir araç seçmelisiniz.

Aşağıdaki araçlar / iş akışı kombinasyonunu kullanıyorum:

Coğrafi verileri girme / indirme

  • JOSM editörü :
    • osm sunucusundan bir harita indir
    • bir haritayı düzenle
    • değişikliklerinizi osm sunucusuna yükleyin (neden çalışmanızı paylaşmıyorsunuz?)
    • haritayı bir * .osm dosyasına kaydet
  • PostGIS / osm2pgsql
    • gerekirse içe aktarma stil dosyasını güncelleyin
    • bir haritayı yerel sunucuya içe aktar

Çalışmanızı paylaşmak istemiyorsanız, yerel OSM sunucusunu ayarlayabilir ve JOSM'nin çalışmasını sağlayabilirsiniz (bir haritayı * .osm dosyasına kaydetme ve gereksiz yere osm2pgsql kullanarak). Yine de, OSM verilerinin bir bölümünü kullanıyorsanız, lisansın farkında olun.

Şekillendirme

Şekillendirme iki adımdan oluşur:

  • kurulum katmanları / datasource
  • Satırları / poligons / points / text çıktısını kişiselleştirin.

Bir haritayı stillendirmek için iki format vardır: "raw" mapnik stil dosyası ve CartoCSS.

  • Mapnik, OSM sitesine güç veren bir oluşturma kütüphanesidir.
    • Mapnik stil dosyasını kurun ve düzenleyin
    • stil dosyasını mapnik görüntüleyicide aç

"Ham" Mapnik stilinde bir dosya düzenlemek oldukça zordur ve CartoCSS ise daha basit bir uyarıdır. CartoCSS (daha önce Cascadenik) mapnik stil dosyasına dönüştürülebilir. Tilemill, CartoCSS'yi düzenlemek / önizlemek için kullandığım bir araçtır.

  • Tilemill .
    • Haritanızı tilemill'de stilleyin / önizleyin
    • mapnik * .xml dosyasına aktar.

sıva

  • Mapnik için özel python betiği
    • Sınırlama kutusunu / yakınlaştırma seviyesini / boyutunu güncelle
    • Haritayı * .png dosyasına dönüştürün.

[İsteğe bağlı] Haritanızı çevrimiçi duruma getirin

Tabii ki, haritanız için büyük bir * .png dosyası kullanabilirsiniz, ancak indirmenin ne kadar süreceğini hayal edin! Böylece haritanızı farklı yakınlaştırma seviyelerinde fayanslara bölersiniz.

  • Tilemill -> Mapnik -> MBTiles -> Mapbox

    • Haritanızı Tilemill ve MapBox kullanarak çevrimiçi duruma getirebilirsiniz.

Maalesef, haritanızı yeni OSM düzenlemelerine göre güncellemek için, yerel olarak indirmeniz ve görüntülemeniz gerekir.

Yani, daha iyi bir çözüm var: CartoDB. CartoDB, CartoCSS'yi destekler. Bununla beraber yerel bir şey yüklemeniz gerekmez. Verilerinizi içine aktarın, CartoCSS ile stil verin ve paylaş düğmesine tıklayın. Yine de ücretsiz bir db boyut sınırı var. Ancak açık kaynak kodlu olduğundan kendi başınıza barındırabilirsiniz. Başka bir sınırlama var: sadece noktaları veya çizgileri veya çokgenleri görselleştirebilirsiniz.

PS

Her aracın kendi sınırlamaları vardır, bu yüzden deneme yapmayı deneyin.



3

İyi bir özel harita düzenleyici arıyorsanız, OCAD'a bir göz atın , bu profesyonel bir harita çizim yazılımıdır. İndirme sayfasında ücretsiz eski bir sürümü var.

OSM için özel bir desteği yoktur, ancak her zaman OSM'den dışa aktarılan bir resmi arka plan olarak kullanabilirsiniz.


3

Sokak Haritasını Aç verileriyle OSM biçiminde oynamanız için daha basit bir seçenek var. FME'yi Güvenli Yazılımdan deneyebilirsiniz (www.safe.com)

Daha fazla bilgi için OSM desteği ile ilgili bilgileri buradan okuyabilirsiniz: http://blog.safe.com/2010/03/sharing-your-data-on-openstreetmap/

FME'yi, FME ve OSM verilerini kullanarak bölgem için eğitim için demo veri setleri oluşturmak amacıyla birkaç kez kullandım.

~ SRG


3

Varsayılan OSM döşemeleri "Google döşeme" biçimindedir ve bunlara Döşeme Haritası Hizmeti (TMS) denir. Şu anda, QGIS for TMS'yi kullanamazsınız. Ancak OSM kaynaklı WMS’e diğer üçüncü taraf servislere bakarak erişebilirsiniz. Bazıları burada bağlantılı: http://wiki.openstreetmap.org/wiki/WMS#Public_WMS_Servers


1
OSM döşemelerini çekmek için QGIS içindeki OpenLayers eklentisini ( github.com/sourcepole/qgis-openlayers-plugin ) kullanabilirsiniz .
mattwigway

2

Stil Düzenleyiciyi Cloudmade'den (OSM'nin ticari kolu) kullanabilirsiniz.

Birey olarak kaydolmak ve kullanmak için ücretsiz.

Çok iyi bir Kullanıcı Arayüzü ile kendi harita stilinizi oluşturabileceksiniz. Haritanızı renklerinizle vb. Özelleştirdiğinizde, özelleştirilmiş haritanızla sayfaya bağlantı oluşturmak veya oluşturmak için kullanabilirsiniz.

Blog gönderisine bakın http://mapperz.blogspot.com/2009/03/cloudmade-map-editor.html (daha fazla güncelleme var)


Cloudmade OpenStreetMap’in bir parçası değil: CloudMade OpenStreetMap’in bir parçası mı?
Ağustos'ta

1

Resmi OSM haritaları TileMill ile stilize edildi ve Mapnik ile hazırlandı. Her iki araç da son derece güçlü ve esnektir. OSM için neyin iyi, sizin için iyi olmalı!

Ne yazık ki, en azından OSM verilerini oluşturmak istiyorsanız, TileMill'in kurulum prosedürü karmaşık bir işlemdir. Ubuntu veya Mac için birçok açıklama var , ancak forumlardaki yorumlar, prosedürün Windows’ta zor olduğunu gösteriyor.

Sen hakkında detaylı açıklamasını bulabilirsiniz Harita Windows üzerinde TileMill ile render içinde TopoMapCreator arasında Wiki .

Klasik prosedürü takip eder:

  • Adım A: Gerekli yazılımı indirme ve yükleme (Temel olarak bir Postgresql / PostGis veritabanı)
  • B Adımı: OSM verilerini veritabanına indirme ve alma
  • Adım C: Arazi çokgenlerinin indirilmesi ve işlenmesi
  • D Adımı: Bir TileMill projesi oluşturma
  • Adım E: Haritayı TileMill ile şekillendirme ve dışa aktarma

TopoMapCreator Wiki hakkında daha fazla bilgi .


1

OSM verileriyle özel haritalar yapmanın başka bir yolu, Mapsense.js kütüphanesi ve Mapsense Earth vektör döşemeleridir. Http://styler.mapsense.co/ adresinde renk seçmek için bir UI var ve developer.mapsense.co/examples/ adresinde css ve javascript'i gösteren demolar var.

Bunun gibi bir API'nin bir avantajı, javascript / d3 (uydu görüntüleri, diğer geo / topojson, vb.) İle istediğiniz herhangi bir şeyi ekleyebilmenizdir.

Tam açıklama: Mapsense'te çalışıyorum. :)


0

Sadece statik bir harita görüntüsü oluşturmak istiyorsanız , .svg'den bir .svg inkscape dosyası oluşturmak için bu yolu kontrol etmek isteyebilirsiniz , yine de yavaş. Daha sonra .svg dosyasını açabilir veya başka bir formata (png?) Dönüştürmek istiyorsanız, hatta 3d studio ya da Blender:) 'a yükleyebilirsiniz ...

(Ayrıca, JOSM'in osmarender'ı çalıştıran bir eklentisi var gibi görünüyor, ancak denedim bir kere çalıştırmayı başaramadım ...)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.