2012年02月08日

カシミール3Dに林小班界を表示(KMLデータの利用)

以前の記事で、地名ファイルを使用して、林小班のラベルを表示しました。
そこで使用していた林小班界、実はあれは「E00」ファイルではなく、
KMLファイルを利用して作成したものでした。
Image 2012_01_29_000104.jpg

カシミール3DではGISツールプラグインで、
E00形式のファイルを表示できますが、
現在、フリーソフトでシェープファイルを、
E00形式のファイルに変換できるものは全くありません。
(あったら教えて下さい)

なので、シェープファイルをQGISでKMLファイルにし、
GoogleEathで保存しなおして、林小班界をカシミール3Dに表示します。

QGISで林小班界のシェープファイルを開きます。
ラインのシェープファイルを開いてください。
Image 2012_02_08_225347.jpg
ラインのシェープファイルがない場合には、
「ベクタ」→「ジオメトリツール」→「ポリゴンをラインにする」で、
ラインのシェープファイルを作成します。

レイヤを右クリックして、「名前をつけて保存」で
KMLファイルに保存します。
この時、CRSは「WGS84」に指定してください。
(カシミール3Dの測地系がWGS84の場合)
Image 2012_02_08_225446.jpg

QGISで作ったKMLファイルを直接カシミール3Dに表示すると、
なんかすごいことになります。
Image 2012_02_08_230050.jpg

これを修正するために、一度GoogleEarthに読み込んで、
再度KMLファイルで保存します。
Image 2012_02_08_230349.jpg

Image 2012_02_08_230402.jpg

Image 2012_02_08_230438.jpg
間違って「KMZ」で保存しないように注意してください。

カシミール3Dに、作成したKMLデータをドロップします。
Image 2012_02_08_230907.jpg
このように地図に表示されました。
線の太さや、色は、GPSデータの編集で行なってください。
Image 2012_02_08_231143.jpg
Image 2012_02_08_231213.jpg

<地図画像として保存してしまう>

GPSデータのまま林小班界を使用していると、
地図移動時にポップアップが出たり、
点を間違って移動してしまったりします。
Image 2012_02_08_231642.jpg

すこし煩わしいので、新たな地図データとして保存してしまいましょう。
地図データとして保存すると、1枚の画像になってしまうので、
線のスタイルの変更はできません。
地図を保存する前に、林小班界の線を、
自分の好きなスタイルに変更してください。

地図にしたい範囲を選択します。
Image 2012_02_08_231858.jpg

Image 2012_02_08_231936.jpg

選択後に、地図で表示したい縮尺まで拡大します。
Image 2012_02_08_232013.jpg
小さい縮尺のままだと、ファイルサイズは小さいですが、画像が荒くなります。

「ツール」→「マップカッター」→「切り出し」で、
マップカッタープラグインの画面を表示させます。
マップカッタープラグインが表示されない場合には、
プラグインをインストールしてください。
Image 2012_02_08_232749.jpg

カシミール形式で保存します。
圧縮する場合には、「圧縮する」にチェックを付けます。
圧縮すると「cmp」で、圧縮しなければ「bmp」で保存します。
「地図を等倍表示で切り出す」のチェックを外すと、
現在の表示倍率で保存します。
分割数は、好みで良いです。
カシミールだけで画像を使用するなら、640x480などでいいです。
Image 2012_02_08_232958.jpg
「OK」をクリックすると、地図を作成します。

地図データを開くで、新しく作成した地図を指定し開きます。
Image 2012_02_08_233515.jpg

これで、画像データとしての新しい地図データを作成できました。

林小班ラベルも地名ファイルの場合、間違って移動したりしてしまうので、
林小班ラベルも表示した状態で、地図を作成すると、ラベルありの
新しい地図が作れます。

posted by kouichi at 23:18| Comment(3) | カシミール3D | このブログの読者になる | 更新情報をチェックする

2012年01月29日

カシミール3Dの地名ファイルを利用し、林小班ラベルを表示する(その2)

カシミール3Dの地名ファイルを利用し、林小班名をラベル表示する方法です。

イメージはこんな感じです。
Image 2012_01_27_222358.jpg

まずは準備。
必要なものは次のとおりです。
・林小班のシェープファイル(ポリゴンのデータ)
・QuantumGIS(以下QGIS)
・カシミール3D
・私の作ったデータ変換ファイル KML→地名ファイル変換.vbs
(vbsファイルは、クリックするとコードが表示されます。そのコードをコピーして、テキストエディタに貼り付け、拡張子を「vbs」にして保存してもいいですし、リンクを右クリックし、「名前をつけてリンク先を保存」を選択し、ファイル名を入力して保存しても構いません。)

(方法は同じなので、小班データで説明します)
まず、QGISでシェープファイルを読み込み、小班を表示させます。
Image 2012_01_28_232551.jpg

このポリゴンデータを元に、ラベルを表示する位置のポイントデータを作成します。
「ベクタ」→「ジオメトリツール」→「ポリゴンの重心」を選択します。
(ベクタメニューは「fToolプラグイン」が有効になっていなければ表示されません。)
Image 2012_01_28_232713.jpg

ファイル名を指定して、シェープファイルを作成します。
Image 2012_01_28_232952.jpg

日本語のファイル名を使用していると、変換直後にプロジェクトに追加しようとするとエラーが出ますが、
ベクタレイヤの追加で、追加してください。
追加したポイントレイヤを右クリックし、「名前をつけて保存」を選択します。
Image 2012_01_28_233207.jpg

「形式」を「Keyhole Markup Language[KML]」を選択。
保存先を指定し、「CRS」に「WGS84」を選択します。(カシミール3D側が「Tokyo」なら「Tokyo」を選択)
「OK」ボタンをクリックすると、KMLファイルが作成されます。

つぎに、このKMLファイルを地名ファイルに変換するのですが、
その前に、シェープファイルの何というフィールドに、ラベルに表示したいデータが入っているか確認します。
小班データの属性データを表示し、フィールド名を確認し、メモします。
Image 2012_01_28_234035.jpg

KMLデータをカシミール3D用の地名ファイルに変換します。
上でダウンロードした「KML→地名ファイル変換.vbs」に作成したKMLファイルをドロップします。
Image 2012_01_28_234639.jpg

ラベルに表示したいデータのあるフィールド名を聞かれるので、
先ほどメモしたフィールド名を入力します。
Image 2012_01_28_234908.jpg

地名の種類を聞かれます。
これは適当に入力していいです。
Image 2012_01_28_235200.jpg

次に表示するレイヤレベルを入力します。
上に表示したいものほど数字を小さくします。
林班は「1」、小班は「3」などと入力します。
Image 2012_01_28_235721.jpg

処理が行われ、KMLファイルと同じフォルダに同じ名前の「ndb」ファイルができています。
これが地名ファイルです。

林班データも同じように変換し、地名ファイルを作成します。

カシミール3Dを起動し、「ファイル」→「開く」→「地名ファイル」または、地名ファイルを地図にドロップします。
Image 2012_01_29_000104.jpg

すると、作成した地名ファイルが表示されます。
2つ目の地名ファイルは、「ファイル」→「開く」→「地名ファイル」で「現在開いているデータに追加して読み込み」
にチェックを付けて読み込みます。
ドロップすると、先に読み込んだ地名ファイルが消えてしまいますので注意してください。
Image 2012_01_29_000303.jpg

文字のフォントや大きさ、色の変更は、「編集」→「地名の属性とレイヤ編集」
で変更します。
Image 2012_01_29_000436.jpg

Image 2012_01_29_000701.jpg

これで、ラベル表示が行えるようになります。

次回は、GISファイル「E00」の代わりにKMLファイルを使って林小班の区画線を表示する方法を行いたいと思います。







posted by kouichi at 00:13| Comment(3) | カシミール3D | このブログの読者になる | 更新情報をチェックする

2012年01月25日

カシミール3Dの地名ファイルを利用し、林小班ラベルを表示する

カシミール3Dという地図ソフトがあります。
まあ有名なので皆さん知っていると思いますが。

で、このカシミール3Dで、GISデータを表示できるプラグイン
GISツールプラグインというのがあります。
このプラグインで、GISデータ(E00形式)のデータを地図に表示することができます。
しかし、地図情報として利用するためには、ラベルが不可欠ですが、
GISデータを使ってラベルを表示することはできません。

そこで、なんとか、山の林小班の名称を地図に表示できないか考えました。
そして見つけました。
カシミール3Dには地名ファイルというものがあります。
この地名ファイルは、テキストファイルのため、簡単に編集を行うことができます。

なので、QGISでシェープファイルをKMLファイルにします。
そして、KMLファイルを地名ファイルに変換するプログラムなら、
私でも作れるかなと思い、作って見ました。

また今度の更新の時に、用意しておきます。
posted by kouichi at 23:21| Comment(0) | カシミール3D | このブログの読者になる | 更新情報をチェックする