User:Mage Whopper/ortho with josm
Jump to navigation
Jump to search
オルソ化空中写真 WMSをJOSMのWMSプラグインで使用した例。
- 新宿御苑周辺
- 皇居周辺
とってから気づいたのですが、東京周辺は新しい航空写真も見えるようです。
- 鶴ヶ城周辺
仕様
標準的なWMSとやや異なっており、JOSMのWMSプラグインからそのままでは使えませんが、緯度と経度を逆順で指定することで使えるようになります。
localhostにHTTPサーバを立て、以下のようなスクリプトでURLを変換してあげます。
PHP JOSM(Location)版
$bbox=$_GET["bbox"];
list($uri, $req) = split("\?", $_SERVER['REQUEST_URI']);
list($minLon,$minLat,$maxLon,$maxLat) = explode(",",$bbox);
if($minLon < -180 || $maxLon > 180 || $minLat < -90 || $maxLat > 90 ){
die("400 Bad Request");
}
$rbbox="&bbox=$minLat,$minLon,$maxLat,$maxLon&";
header ("Location: $url".
'http://orthophoto.mlit.go.jp:8888/wms/service/wmsRasterTileMap?'.
preg_replace("/&bbox=[0-9,.]+&/", $rbbox, $req).
"\n\n");
これをortho.phpで保存してJOSMのプラグインで
http://localhost/ortho.php?VERSION=1.3.0&REQUEST=GetMap&LAYERS=ORTHO&STYLES=&CRS=EPSG:4612&FORMAT=image/png&BGCOLOR=OxFFFFFF&
を登録します。
あとは他のプラグインと同様にメニューから選んで少し待てば画像が読み込まれます。
1/25000より粗い解像度ではWMSとして動作しません。拡大率を大きくして読み込むようにしてください。失敗すると真っ白な画像を読み込みます(BGCOLORを0xFFFFFFにしているため)。そうなってしまったときは、一度WMSのレイヤーを削除して、拡大して読み込み直すようにする必要があります。
関東より東ではLAYER=ORTHO01〜ORTHO03も航空写真が表示できるようです。
PHP Merkaartor版
Merkaartor 0.14(MacOSX)で動作確認
<?php
/*
This software is provided 'as-is', without any express or implied warranty.
In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
ORTHO WMS for Merkaartor
*/
$bbox=$_GET["bbox"];
if($bbox==""){
$bbox=$_GET["BBOX"];
}
list($uri, $req) = split("\?", $_SERVER['REQUEST_URI']);
list($minLon,$minLat,$maxLon,$maxLat) = explode(",",$bbox);
if($minLon < -180 || $maxLon > 180 || $minLat < -90 || $maxLat > 90 ){
die("400 Bad Request");
}
$rbbox="&bbox=$minLat,$minLon,$maxLat,$maxLon&";
/* bbox入れ替えてURL生成 */
header ("Location: $url".
'http://orthophoto.mlit.go.jp/wms/service/wmsRasterTileMap?CRS=EPSG:4612&'.
preg_replace("/VERSION=[123.]+&/","VERSION=1.3.0&",
preg_replace("/&BBOX=[0-9,.]+/i", "&bbox=$minLat,$minLon,$maxLat,$maxLon", $req)).
"\n\n");
?>
Merkaartorでは、
- server url を http://localhost/orthom.php?
- image/format を image/png
- Seyles を 空欄
に設定します。測地系はオルソのWMSが見ていない様です。
- 注意事項 私の環境ではMerkaartorを安定動作させることができません。WMSのサーバを指定して適当な箇所を読み込む程度の動作を完了できたのは数回です。ぱっと見のレベルではズレはみえませんでしたが、要求する画像のサイズなどのお作法がJOSMと異なっていて、同じでいいだろ、と楽観するのはちょっと辛いレベルです。安定動作できる方がいらっしゃいましたら、詳細に書き込まれた地域で確認作業をしていただけると幸いです。m( )m
関連項目
- User:Tosihisa/ortho_php_server すばらしいです。ありがとうございます。
- User:Mage_Whopper/ortho_mod_proxy apacheのモジュールで動かしてエコにいきましょう