TileMill-カートグラフィックデザインスタジオ

画像



TileMillは、さまざまなデータソースを使用して、Web用のマップをすばやく簡単に作成および描画できる地図製作者向けのツールです。 これは、強力なオープンソースライブラリであるMapnikに基づいています。 TileMillは汎用のマッピングツールではなく、狭いタスクセットを解決するように設計されています。



TileMillの動作原理は非常に簡単です。 ベクターデータをスタジオにインポートします。 TileMillはESRIシェープファイル、KML、GeoJSON、GeoTIFFをサポートし、最近ではPostGISのサポートが発表されました。 Carto言語などのCSSですべてを作成し、いずれかの形式(PNG、PDF、またはMBTiles)にエクスポートします。



特徴







詳細については、猫に招待します。



システム要件








マプニック


Mapnikは、ベクターデータからラスターマップをレンダリングするためのオープンライブラリです。 これは、同胞のArtem PavlenkoによってOpenStreetMapプロジェクト用に開発されたもので、現在では多くのリソースで使用されていますが、その中でもロシアのコスモスに注目する価値があります。 OpenStreetMapおよびMapQuestプロジェクトも、一部のマップにこのライブラリを使用しています。 MapnikはC ++およびPythonで記述されています。 AGGライブラリを使用し、サブピクセルの精度でマップ上のオブジェクトを滑らかにすることができます。 ESRIシェープファイル、PostGIS、TIFFラスター、.osmファイル、およびGDALおよびOGR形式をサポートします。 パッケージはほとんどのLinuxディストリビューションで利用でき、バイナリはMac OS XおよびWindowsで利用できます。



Mapnikをインストールする


svn checkout -r 2898 svn.mapnik.org/trunk mapnik2

cd mapnik2

python scons/scons.py configure

python scons/scons.py

sudo python scons/scons.py install











地図作成について少し


GISまたはマッピングに精通している人にとっては、TileMillのマップは常にWebメルカトル(EPSG:900913)に投影されるとすぐに言います。 Microsoft Bing Maps、Google Maps、およびESRI ArcGIS Onlineもこの投影法を使用します。



空間参照システムproj4 SRS(空間参照システム)の形式は広く普及しています。 このシステムは、1つのレコード(SRS文字列(SRS文字列))でデータソースの投影と座標系を記述する機能を提供します。 たとえば、WGS84を説明するSRS行は次のようになります。



+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs







ほとんどの場合、TileMillはロード可能なシェープファイルおよびその他のデータソースのSRSを決定できます。 ただし、TileMillが自分でSRSを特定できない場合に備えて、SRSを自分で指定する必要がある場合があります。



タイルとは何ですか?


画像

タイルは、PNG / JPEG形式の256x256ピクセルのビットマップです。



TileMillは、さまざまなレベルのプレゼンテーションをサポートしています。 プレゼンテーションレベルは、事前に設定されたマップ表示スケールです。 OpenStreetMap、Google Maps、およびその他の地図作成Webサービスは、表現のゼロレベルで256x256ピクセルのサイズのタイルを提供し、後続の各レベルでサイズを2倍にします。 たとえば、表現のゼロレベルでは、全世界が表示され、6番目のレベルでは中規模の国、11番目ではメトロポリスが表示されます。 16レベルでは、個々の家を見ることができます。



さらに、TileMillは、MBTiles形式へのマップのエクスポートをサポートしています。 この形式は、カードを保存し、オンラインとオフラインの両方でカードにアクセスするために特別に開発されました。



MBTiles


MBtilesは、SQLite DBMSでタイルに切り分けられたカードを格納して、すぐに戻ることができるようにするための仕様です。 このデータ形式を使用すると、1つのファイルで数千、数十万、さらには数百万ものタイルを転送できます。

MBTilesのアップロード速度は、USB、モバイルデバイスへのダウンロード時、またはネットワーク経由での転送時の数百万個の個々のタイルのアップロード速度よりも高速です。 MBTilesを使用する場合のデータベースまたはファイルシステムへのアクセスの速度の違いはわずかです。

MBTilesは埋め込みSQLite DBMSを使用するため、インターネットに接続せずに使用できます。

タイルはBLOB(バイナリラージOBject-大量のバイナリデータを格納するための形式)として格納されるため、ほとんどのSQLiteクライアントで使用できます。



TileMillをインストールする


TileMillソースコードはGithubで入手できます。



git://github.com/mapbox/tilemill.git

cd tilemill

./ndistro









./tilemill.js



実行します。 ここでブラウザを起動します。デフォルトではTileMillは localhost:8889



localhost:8889







インターフェースの概要




リンクをたどる localhost:8889



localhost:8889



プレインストールされた一連のプロジェクトにアクセスできます。 それらのいずれかを選択すると、編集ページに移動します。



画像

  1. ツールバー
  2. 地図
  3. レイヤーリスト
  4. フォント選択とカラーピッカー
  5. コードエディター






画像

ツールバー
  1. 設定
  2. プロジェクト名
  3. プロジェクトを保存
  4. 輸出する
  5. プロジェクト設定
  6. プロジェクトを閉じる






画像

地図インターフェース
  1. 地図
  2. スケール
  3. 全画面を展開する






画像

レイヤーリスト
  1. レイヤーを追加
  2. レイヤーを並べ替える
  3. レイヤージオメトリアイコン
  4. 識別子とクラス
  5. レイヤーの属性テーブルを表示する
  6. レイヤーを編集
  7. レイヤーを削除






画像

属性テーブルを表示



画像

スタイルエディター
  1. アクティブなタブ
  2. スタイルを削除
  3. 非アクティブなタブ
  4. 新しいスタイルを作成する
  5. MSS構文のヘルプ
  6. 行番号
  7. テキストエリア






Cartoのケーススタディ




Cartoは、TileMillで使用されるCSSのようなマップレイアウト言語です。 次のコードは、レイヤー識別子を使用してレイヤーのラインの色とサイズを設定し、それにglowプロパティを追加します。

#layer {

line-color: #C00;

line-width: 1;

}



#layer::glow {

line-color: #0AF;

line-opacity: 0.5;

line-width: 4;

}









画像

これが最終的に得られるものです。



まとめ




このトピックは膨大なものでしたが、まだ伝えたいことがあります。 この記事に興味がある場合は、TileMillをさらに詳しく検討していきます。 さらに、TileMillと組み合わせて使用​​される別の製品があります-これはTileStreamです。 それを考慮することも理にかなっています。 ご清聴ありがとうございました。



便利なリンク


  1. 公式サイト
  2. ソースコード
  3. Mapbox
  4. 開発チーム
  5. GIS Lab-ロシアのGISコミュニティ
  6. コスモス
  7. マプニク
  8. 機能の概要(ビデオ)
  9. MBTiles
  10. カルト




PS: FreenodeネットワークのIRCチャネル#mapboxでサポートを見つけることができます。



PPS:残念ながら、関連するブログが見つからなかったので、オープンソースで投稿しました。 私が覚えている限りでは、HabréでGIS専用のブログを作成するというトピックが何度か取り上げられました。 調査から判断すると、これは読者にとって興味深いものです。 たぶん、このトピックの後、UFOはGISに興味を持ちますか?



更新ここで続けました



All Articles