JA:レンダリング
英語版の記事の内容が分かる方は、翻訳の完成にご協力ください。このウィキの翻訳方法についての説明をお読みください。
現時点では、誰もこの記事の翻訳に取り組んでいないようですので、あなたが取り組めます。
地図をレンダリングするプロセスは、一般に生の地理空間データを取得し、視覚的な地図を作ることです。しばしば、ラスターイメージやラスターセットの作成に適用されますが、ベクタベースの形式でマップ出力を作成することもできます。タイル地図データを入力して「3Dレンダリング」も可能です。 新しく面白いスタイルでマップをレンダリングする機能、または特別な関心のある機能を強調する機能は、地理データにオープンアクセスできる最もエキサイティングな側面の1つです。 OpenStreetMapコミュニティ内およびその周辺の開発者は、OpenStreetMapデータをレンダリングするためのさまざまなソフトウェアを作成しました。 既存のレンダリングソフトウェアで使用するために、データを他のデータ形式に変換することもできます。
OpenStreetMap サーバーでのレンダリング
OpenStreetMap データのレンダリングの最もわかりやすい例は、openstreetmap.org ホームページ に表示されている地図です。ページの右側にあるレイヤー選択ボタンをクリックすると、異なるレンダリングスタイルのレイヤーを切り替えることができます。デフォルトの 'Standard' を含めたいくつかのレイヤーは Mapnik ソフトウェアで生成されています。これらのタイルのマップスタイルをレンダリングして提供するインフラストラクチャについて詳しくは、 Component overview とMapnik Renderingを参照してください。
レンダリングには柔軟性の面で無限の次元があります。 ほとんどのレンダリングソフトウェアは、色、線幅、テキストの向き、興味のある点のアイコン、および非常に微妙な視覚的要素の多くを制御するためのstylesheetをサポートしています。
サーバ及びコマンドラインツール
名前 | 対称プラットフォーム | 対象言語 | ライセンス | 備考 |
---|---|---|---|---|
AlaCarte | Windows, Linux | N/A | AGPL | |
Kartograph | Cross-platform | Python | AGPL | Python フレームワーク、SVG 地図作成に使う。 |
Kothic | Cross-platform | Python | Unknown | MapCSS/0.2 の python レンダリング用エンジン。 |
LunaRender | Windows | Lua | MIT | XML2SVG レンダラ |
Mapnik | Windows, macOS, Linux | C++, JavaScript, Python, Ruby, Java | LGPL | いちばん普及しているサーバー側の 2D 地図レンダラ。PostgreSQL とその他の C++ lライブラリが必要。高速性を設計してあり、高機能のサーバーを使ったタイル生成に適合。ただし設定は必ずしもかんたんではない。 |
MapOSMatic | Cross-platform | Python | AGPLv3 | グリッドとストリートの索引付き地図の処理が可能。Python/Django + mapnik で記述してある。 |
MapSurfer.NET | Windows, Linux | C# | MIT | マップのスタイル付けと、地理空間データを Web 空間に公開(レンダリング、キャッシュ)するフレームワーク。 |
node-mapbox-gl-native | Node.js | JavaScript | BSD | Node.js パッケージ。OpenGL を使い、Mapbox ベクタータイルを処理。 |
osmCache | Java EE | Java | Proprietary | Java EE servlet で、レンダリングの調整と、 Mapnik でタイルを再レンダリングする。 |
Smrender | Cross-platform | C | GPLv3 | 規則ベースのレンダリングエンジン。C 言語で記述してある。 |
vector-tile-ascii | Node.js | JavaScript | BSD | OpenStreetMap のベクトルタイルのための ASCII レンダラ |
クライアント側 GUI アプリケーション
名称 | 対応するプラットフォーム | ライセンス | 備考 |
---|---|---|---|
Hardware accelerated real-time rendering | .Net | Proprietary | 画像カードを使い、前処理したタイルを表示するのではなく、リアルタイムに画像表示を処理 |
Kendzi3d | Java SE | BSD | JOSM 向けのプラグイン。編集したデータの 3D 表示が可能 |
Kosmtik | Node.js | WTFPL | |
Maperitive | Windows, macOS, Linux | Proprietary | local file (.osm, .osm.bz2 and GPX) desktop rendering application, with rendering rules defined in a text file. Generates BMP, PNG and SVG output. Not designed for high performance rendering or huge volumes of data, but easy to set up and flexible, and a good option for one-off rendering (e.g. a map of your city). It also has a tile generator, hillshading, elevation colouring and lots of other features. |
OSM2World | Java SE | LGPL | Tool that creates 3D models from OSM data files |
TileMill | Windows, macOS, Linux | Mapbox license (somehow similar to MIT) | CartoCSS editor and development tool based on Mapnik. |
TopoMapCreator | Windows | GPLv2 | Desktop application based on Mapnik. It creates automatically topographic maps from OSM, NASA and ESA data. Select a map extent (by dragging over a world map), click on the start button and wait for the GeoTIFF, ECW, GALILEO, ORUXMAPS or NAVIMAP output. |
XNavigator | Java SE | GPLv2 | OSM in 3D |
クライアント用ライブラリ
- 主な記事:Frameworks
名前 | 対象プラットフォーム | プログラミング言語 | ライセンス | 備考 |
---|---|---|---|---|
Cartagen | Web | JavaScript | MIT | HTML5 Canvas/JavaScript ベースのレンダラ |
CartoType | Windows, iOS, Android, macOS, Unix | C++ | Proprietary | レンダリングと経路探索のライブラリ |
Halcyon | Flash | ActionScript | WTFPL | Richard Fairhurst が開発し、Potlatch 2 でも使われているレンダリングライブラリ |
Kartograph | Web | JavaScript | LGPL | あらゆるブラウザでベクトルデータとして生成された地図を表示する JavaScript ライブラリ |
Kothic JS | Web | JavaScript | BSD | JavaScript の地図レンダリング向けエンジンで多機能、HTML5 Canvas を使用。当初は Kothic. JavaScriptのポートとして開発を開始。 |
libosmscout | Linux, macOS, iOS, Windows, Android, Qt | C++, Java | LGPL | 簡略でありながらレベルの高いインターフェースを提供、OpenStreetMap データに基づくオフラインのレンダリングとルート記録の機能性を発揮。 |
Mapbox Android SDK | Android | Java | BSD | Mapbox ベクターのタイルを slippy map で表示するため、OpenGL ES を使う |
Mapbox GL JS | Web | JavaScript | BSD | Displays Mapbox Vector Tiles in a slippy map using WebGL |
Mapbox iOS SDK | iOS | Objective-C, Swift, Interface Builder | BSD | Displays Mapbox Vector Tiles in a slippy map using OpenGL ES |
Mapbox macOS SDK | macOS | Objective-C, Swift, Interface Builder, AppleScript | BSD | Displays Mapbox Vector Tiles in a slippy map using OpenGL |
Mapbox Qt SDK | Qt | C++ | BSD | Displays Mapbox Vector Tiles in a slippy map using OpenGL |
Mapsforge | Android, Java ME | Java | LGPLv3 | free and open toolbox that enables the community to easily create new OpenStreetMap-based applications. Provided tools and APIs include solutions for map rendering, route planning and navigation, POI indexing and search, map overlays and more. |
Nutiteq Maps SDK | Android, iOS, Windows Phone | Java, Objective-C, Swift, C# | Proprietary | Cross-platform SDK for mobile maps with vector rendering by Carto. Supports 3D city overlays, editable vector overlays and is highly customizable. |
osm2x3d | Web | JavaScript | LGPLv3 | OSM 3D converter using native WebGL rendering (x3dom JS library) |
Tangram | Web | JavaScript | MIT | WebGL を使用した 2D および 3D の地図レンダラー |
Tangram ES | Android, iOS, Linux, macOS | C++ | MIT | OpenGL ES を使用した 2D および 3D の地図レンダラー |
過去のもの
以下のレンダラは現在はメンテナンスされていませんが、歴史的に重要なものです。
- Kosmos – ローカルのファイル (.osm) を描画するエンジンで、GDI/.NET に依拠 (Windows)、レンダリングの規則は個別のウィキページに定義がある。高度な処理のレンダリングあるいは巨大なデータ量には非対応ではあるが、たいへん柔軟で一発処理のレンダリングに使いやすい選択肢。後継機能は、 by Maperitive
- Mapweaver - Perl レンダリングでは mapgen.pl の後継で、OSM → SVG に対応、Inkscape では PNG もしくは PDF 形式に対応する自動マップキー。道路と POI リスト、グリッド、緯度経度オーバーレイに対応。OSM ファイルから希望のプレース place を抽出する手順を自動化。ただし Windows 環境には非対応。
- Memphis – OpenStreetMap 用の地図レンダリングのアプリでライブラリ。記述は C 言語で eXpat、Cairo、GLib. を採用。適用するライセンスは、GNU Lesser General Public License。
- Osm2pov - OSM data を使い、等大の地図を作成するツール
- Osmarender - osm.org では2012年3月1日時点でメインマップから撤収。XSLT のうち、OSM XML から SVG への変換を扱った。かつて tiles@home というプロジェクトで Osmarender を使用したタイルセット作成を手がけており、Mapnik のマップレイヤーと連動するものを目指した。Osmarender も一発レンダリングに向く選択肢とされた。SVG フォーマットにより、利用者はポストプロセス処理による清書の tweak が可能だった(下記にその他の選択肢あり。)
- osmbrowser – OSM データの広いエリアを読み込み、ベクター画像として表示できる。
- osmrender.pl - Perl プログラムで楽に描画できる簡単な地図。入力には拡張子 *.osm を使用。
- Pyrender – Python で書いたアイデアやコード集。レンダリング・サーバーの処理段階ごとに提示。
- TileMill とはフロントエンドの手法で、Mapnik を個人が定義したレンダリングに従って処理するときに使える。Mapnik XML よりも簡単な CartoCSS 言語を使う。
- VTM – プラットフォーム共通型のベクター地図タイルのレンダリング機能。開発担当は OpenScienceMap プロジェクト
関連項目
- Creating your own tiles - 選択肢とそれぞれの簡単な説明
- List of OSM based Services - さまざまな地図レンダリングの一覧など
- Category:Renderers - レンダリング機能を説明したページのウィキのカテゴリ
- 3D Development - 立体地図の開発
- OpenWhateverMap - 地図レンダリングのさまざまなスタイルを組み合わせてみた見本。遊んだり、説明に使ったりしてみてください!
- OSM on Paper - 紙に落とした地図
This page has been cleaned by the Cleanup Team. |