問題タブ [tilecache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Openlayers + Mapnik + Tilecache 構成の問題
Mapnik + tilecache をセットアップしようとしていますが、Tilecache.cfg と Openlayers の両方で bbox パラメーターを設定するとブラウザーにタイルが表示されませんが、bbox を指定しないとすべて正常に動作し、実際のマップ タイルが表示されます。
誰かがコードの問題を指摘できるかどうか疑問に思っていました。私は(限られた能力で)すべてを試したと思いますが、なぜうまくいかないのか本当に理解していません。ちなみに、すべてのマップ レイヤー (mapnik スタイリング用) は PostGIS データベースから取得され、さまざまな投影法があり、Mapnik によってオンザフライで変換されます。
OpenLayers コード:
Tilecache.cfg:
[mapnik24]
type=マップニク
mapfile=/somedit/map24.xml
bbox=-2.0,50.0,2.0,54.0
レベル=20
srs=EPSG:4326
投影=+proj=緯度経度+データム=WGS84
-- ありがとう、A
gis - Mapnik を使用して Tilecache がタイルを生成できない
オーストラリアの OSM 抽出物をダウンロードし、osm2pgsql を使用して gis というデータベースに移動しました。
オーストラリアのタイルのみを生成するように generate_tiles.py を変更しました。
タイルを生成しようとすると: export MAPNIK_MAP_FILE="osm.xml" && export MAPNIK_TILE_DIR="/tmp/tilecache/" && ./z0generate_tiles.py
/tmp/tilecache に png タイルを含む多くのディレクトリが作成されます。タイルには州の境界と国名があり、高速道路があるように見えます。しかし.. アドレスに移動すると: http://localhost/osm/tilecache-2.11/index.html 国と州しか表示されず、ラベルも通りも表示されません。おそらくpostgisデータへのアクセスに関する権限の問題だと思います。私はpsqlに入って発行しました:GRANT ALL PRIVILEGES ON DATABASE gis TO PUBLIC
/etc/tilecache.cfg には次のものがあります。
mapnik は postgis と通信できないようです。postgres にログインして実行しました:
GRANT ALL PRIVILEGES ON DATABASE gis TO PUBLIC
次のように my_osm.xml ファイルを生成しました。
エラーなしで生成されました。
それは私がそれを取ることができる限りです。Web 経由でアクセスすると新しいファイルが作成されますが、それらには道路情報がまったく含まれていません。何か案は?
mapping - OpenStreetMap 用の Mapnik を使用した TileCache
TileCache を使用してタイルを提供する OpenStreetMap サーバーがあります。タイルは Mapnik で生成されます。Mapnik XML スタイルシートを構成し、OSM Mapnik ツール 'generate_image.py' で画像を生成できます。そのイメージは正しく、見栄えがします。
私の TileCache サーバーは、私の OSM レイヤーからタイルを提供します。ただし、取得できるのは背景/水色のタイルだけです。地形も街路データも得られません。誰でもこれを手伝ってもらえますか?
タイルキャッシュ構成:
OpenLayers を使用してマップを表示しています。TMS レイヤーを使用して TileCache サーバーを呼び出しています。私が言ったように、私はタイルを返します。それらはただの青です。
openlayers - TileCache レイヤーのマージ
この構成の TileCache サーバーがあります。
OpenLayers を使用してデータを表示していますが、現在、OpenLayers.Layer.TMS オブジェクトを使用して「osm」レイヤーを要求し、OpenLayers.Layer.WMS オブジェクトを使用して「oge」レイヤーを要求しています。2 つをマージして同時に要求する方法はありますか? これまでのところ、TMS で「osm」レイヤーしか取得できませんでした。
編集:物事を明確にするための私のJavascript:
cordova - OpenLayers と TileCache を使用した PhoneGap のオフライン マップ
TileCache を使用してマップの既知の部分を事前にキャッシュし、それらを PhoneGap モバイル アプリ データベースに保存し、OpenLayers を使用してロードする方法についての良いチュートリアルはありますか?
私は多くのチュートリアルを経験しましたが、これらすべてを一緒に行う方法をまだ見つけていません。
javascript - ローカル マップ タイル キャッシュを設定する必要があります - 完全なタイル セットを取得するにはどうすればよいですか?
OpenLayers Javascript ライブラリを使用して、Web アプリのマップ ビューを提供しています。これは、外部インターネット アクセスが不可能な環境に展開される場合があります。したがって、理想的には、ローカル Web サーバーに事前に入力されたマップ タイルの完全なセットが必要です。とはいえ、かなりのデータ量になると思います。
これまでは、TileCacheを使用して、マップ タイルをディスクにローカルにフェッチして保存していました。これは問題ありませんが、明らかに、マップ上で探索するエリアのタイルのみをフェッチします。さらに、ターゲット領域に関連するタイルがまだローカル ディスク キャッシュにない場合、このソリューションは前述の展開環境では機能しません。
完全なタイル セットがどれだけのデータ量になるかについてはよくわかりませんが、この考えは完全に非現実的ですか? タイルセットはどこで入手できますか?
ios - Open Street Map ベースのアプリケーションに地形を追加する
Web、iPad、および iPhone での観光情報の表示をサポートするために、約 20 km x 20 km の小さな都市エリアの Open Street Map .png ファイルの事前に読み込まれたタイル キャッシュを正常に使用するアプリケーションがあります。HTML5 で記述され、MoSync を使用してラッパーを作成し、モバイル デバイスに配信します。
このアプローチは都市ではうまく機能しますが、アプリを拡張して地方 (最初は英国) で機能するようにしたいと考えています。アクセスできれば、Ordnance Survey マッピング 25000、50000、および 250000 がはるかに優れたユーザー エクスペリエンスを提供します。
私の具体的な質問は次のとおりです。
- 地形タイルを入手するにはどうすればよいですか?
- OSM と同じスリッピー マップ構造を持つタイルを取得できますか?
- Ordnance Survey を英国の情報源として使用できますか? その場合、1 回限りのライセンス料となりますか?
- どのズームレベルが利用可能ですか? 25000、50000、250000 を期待しています。100000 は利用できますか?
- 緯度と経度のペアから特定のタイルを識別するには、どの式を使用すればよいですか?
- 指定されたズーム レベルのすべてのタイルは、デルタ緯度とデルタ経度が同じになりますか? そうでない場合、どうすればそれらをタイル表示できますか?
parameters - tilecache を介して openlayer から mapsever に動的パラメータを渡す
形状と色が次のパスに沿って移動するマッピング アプリケーションを構築しています。
PostGIS > Mapserver > TileChache > OpenLayers
すべてのパラメーターがハードコードされている場合、すべてが正常に機能します。ただし、ユーザーがパラメーターを変更できるようにする必要があります。たとえば、人口が「X」よりも大きく、面積が「Y」よりも大きいフィーチャを選択するなどです。
パラメータは、次のように、mapfile に添付されたクエリとして Mapserver に渡すことができると思います。
しかし、TileCache を介してそれを渡す方法が見つかりません。今のところ、唯一の回避策は、tilechache.cfg で X と Y の可能な組み合わせに対して別のレイヤーを定義することですが、これは良い方法ではないようです。また、tilechache.cfg で定義されているレイヤーの数には制限が必要です。
解決策はありますか?
objective-c - RMTileCache 内の RMDatabaseCache のクリーンアップ
オフライン キャッシングを使用して、次を使用して MapBox から事前構成済みのマップをダウンロードしています。
これはすべて正常に機能し、結果は tileCache の tileCaches 配列内の RMDatabaseCache オブジェクトです。
私の質問は、この特定のキャッシュをクリーンアップするにはどうすればよいですか? これらのキャッシュを複数持ち、すべて異なるマップ ID を持ち、特定のものをクリーンアップできるようにしたいと考えています。mapID をクリーンアップ キーとして使用するメソッドが見つかりません。
(私の目的は複数のオフライン マップを用意することなので、このアプローチです)