2012年06月22日

カシミール3DのマップカッターでKMZ作成→GIS用のJpeg作成

注意!この記事はかなり古い情報です。

カシミール3Dでネットに接続していれば使える「電子国土」の地図ですが、

なんとかGISで簡単に使えないかと、いろいろ考えて、

次の方法を考えました。

手順としては、

カシミール3DのマップカッターでKMZファイルを作る

  ↓

KMZファイルを解凍し、中からJpegファイルと、KMLファイルを取り出す

  ↓

エクセルで自作したワールドファイルの座標を計算するファイルでワールドファイルを作る

  ↓

Jpegと同じファイル名の拡張子Jgwのファイルをテキストファイルで作りJpegと同じフォルダに入れる

  ↓

JpegをGISで表示する


こんな感じです。

ワールドファイルとは、JpegやビットマップをGISで表示するための、

座標が記録されたファイルのことです。


まずは、カシミール3Dで範囲を指定し、マップカッターを起動します。

保存するフォルダを選択して、

保存形式を「GARMIN/Google KMZ形式」を選択します。

分割数は、縦1枚、横1枚にします。

Image 2012_06_22_005304.jpg

「OK」ボタンで地図が出力されます。


作成されたKMZファイルは、ZIPファイルと同じ形式なので、解凍ソフトで解凍できます。

解凍後は、次のExcelファイルに書かれた手順でワールドファイルを作成してください。




QGISで使用する場合には、オンザフライCRS変換を有効にしておくと、違う座標参照系でも綺麗につながります。

Jpegをジオレファレンサーで位置合わせしてもいいのですが、たくさんあると大変なので、

楽する方法を考えました。
posted by kouichi at 01:05| Comment(0) | カシミール3D | このブログの読者になる | 更新情報をチェックする

2012年06月15日

Openlayersプラグインでの縮尺 【記事修正あり】

注意!この記事はかなり古い情報です。現在のQGISとは操作方法が違いますので注意してください

昨日の記事のつづき。

職場でOpenlayersプラグインでGoogleの空中写真を表示し、

林小班を重ねて10000分の1で印刷してみた。

すると普通に印刷した基本図と比べると縮尺が違う。

明らかに空中写真の方が大きい縮尺になっている。

ためしに200mのメッシュを作成(ベクタメニューのベクタグリッドで作成できる)し、

印刷すると、2cmのメッシュが3cmくらいある。

Openlayersプラグインで使われる「Google Mercator(EPSG:900913)」にすると、縮尺がおかしくなる。

Openlayersプラグインは、この座標系を指定しないと使えないと思っていたのだが、

試しにプロジェクトの座標系を、林小班の座標系(JGD2000 11系)に変更し

オンザフライCRS変換を有効もチェックをはずして、設定してみた。

当然空中写真は表示されない。(エラーメッセージも何度か表示される)

なにげに、座標系はそのまま(JGD2000 11系)で、もう一度オンザフライCRS変換を有効にしてみた。

すると、空中写真が重なっているではないか。

10000分の1で印刷してみると、縮尺もバッチリ!
プラグインのバージョンが新しくなってオンザフライに対応したのか、
以前から可能だったのかはわからないけど、なんにしてもよかった。

【記事修正】

縮尺はバッチリでしたが、印刷すると空中写真が500mくらいズレて表示されていました。

いくら調べてもこのズレは直らないので、やはりGoogleメルカトルで使うしかないようです。

プロジェクトの座標参照系をGoogleメルカトルにすると、印刷時に縮尺が1.3倍くらいに大きくなります。

ベクタメニューの<ベクタグリッド>をつかって、200mとかのマスをShapeファイルで作り、

それを印刷して、比率を計算するしかないようですね。

地図上で距離を測るときには、「楕円体」にチェックが付いていると正しく距離が計算されるので、

印刷時に楕円体の計算がされていないようです。

カスタムCRSで何とかならないのかな。

posted by kouichi at 00:37| Comment(0) | QGIS | このブログの読者になる | 更新情報をチェックする

2012年06月13日

QGISのOpenlayersプラグイン

注意!この記事はかなり古い情報です。現在のQGISとは操作方法が違いますので注意してください

同じ職場の方から、GoogleEarthに林小班を重ねたものを印刷できないかとの相談を受けた。

シェープファイルをGoogleEarthのKMLにするのは、「山仕事」ブログさんで紹介している「Shape2KML」を使えば出来るのだが、いかんせんGoogleEarthでの印刷は、縮尺も指定できないし、画像も荒くなってしまう。

QGISのOpenlayersプラグインで以前印刷したときは、こちらも写真が荒くなってしまって印刷された。

Googleが高画質を印刷できないように、なにか仕掛けているのかなと思っていたが。


今回の相談もあって、久しぶりにQGISの「Pythonプラグインを呼び出す」でプラグインの更新を確認してみると、Openlayersプラグインが0.92にバージョンアップしていた。(0.90をQGISの1.7.4で使用するとエラーが出ていたような気がする)

早速ダウンロードして、印刷を試してみた。

職場のパソコンは非常に非力で、印刷時にエラーになる時があったが、プリントコンポーザーでPDFに出力すると画面の見た目通り綺麗に印刷できた。

この時、「一般情報」→「紙と品質」の「ラスタとして印刷」にチェックを付けて、品質を300dpiくらいにしておくと、比較的綺麗に印刷できる。


ここまで綺麗に印刷できると、Googleの空中写真の使用許諾範囲が気になった。(使用許諾についてはこちら

調べてみると、書き方は曖昧な感じがするが、個人利用はOK。

では、仕事で工事の位置図や森林の位置図として、市町村役場や請負業者に印刷物を渡すのはどうなのか?

私の解釈としては次のとおり。(間違っていれば、コメント欄で指摘してください。)

◎空中写真のみではダメ。

◎マップと合成されたハイブリッドの写真で、Googleのロゴや写真の「権利帰属表示」がされていればOKだと思われる。

◎GISなどで表示できるラスタデータとしての提供はダメ。

こんなところでしょうか。

まあ、印刷物であれば、使用しても良いと思われます。
posted by kouichi at 23:39| Comment(0) | QGIS | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。