SSブログ

Excel 平面直角座標XYからgeojsonファイル作成 [VBA/VBS]

 Excel表で作成された平面直角座標XYのデータをGoogle Mapに簡単に登録することができるGeojson形式にする機会があり、GeoJson fileを作成するExcel VBAを作成してみました。

【使用方法】
ここからExcel(Excel2geojson.xlsm)ファイルをダウンロートする。
・直角平面座標→緯度経度変換(xy2geojsonシート)
 -geojsonファイル名を入力
 -直角座標系を選択
 -X、Y列に入力して「変換」ボタンをオンするとgeojsonファイルが作成される。
・緯度経度座標→直角平面変換(latLng2geojsonシート)
 -geojsonファイル名を入力
 -直角座標系を選択
 -緯度、経度列に入力して「変換」ボタンをオンするとgeojsonファイルが作成される。

【geojsonファイル】
・geojsonファイルはExcelがあるフォルダー内に出力される。
・Excel表の先頭行と最終行の座標値が等しい場合はPolygon、等しくない場合はLinestringとなる。
・geojsonファイルはUTF-8文字コード、改行コードはLF、BOM付きで出力される。

excel2geojson.png
nice!(0)  コメント(0) 

平面直角座標XY⇔緯度経度 変換Excelプログラム [VBA/VBS]

 先日「Excelで写真のExif情報を読み取りKLM ファイルを作成し、GoogleEarthに貼付」で作成したExcelから緯度・経度⇔直角平面座標XY変換の部分のみを抜き取り、緯度・経度を直角平面座標に直角平面座標を緯度・経度に変換するExcelを作成してみました。

【使用方法】
ここからExcel xyLatlngTran.xlsmファイルをダウンロートする。
・平面直角座標→緯度経度変換(xy->latlngシート)
 -直角座標系を選択
 -X、Y列に入力して「変換」ボタンをオンすると、緯度、経度列に出力
・緯度経度座標→直角平面変換(latlng->xyシート)
 -直角座標系を選択
 -緯度、経度列に入力して「変換」ボタンをオンすると、X、Y列に出力

xyLatlngTran.jpg
nice!(1)  コメント(2) 

Excelで写真のExif情報を読み取りKMLファイルを作成し、GoogleEarthに貼付 [VBA/VBS]

 Google Earthに写真のExif情報を利用して写真を貼付るためのkmlファイルをExcelで作成しててみました。

【処理内容】
・Excelで写真(JPEG)を読み込み
・Exif情報を抽出(抽出方法はこちらを参照)
・写真中心座標をExif GPSで取得
・中心座標(緯度・経度)を直角平面座標(XY)に変更(変更はこちらを参照)
・Exif情報の焦点距離(mm)、高度(m)、方向(度)を取得
・Exif情報に高度・方向が無い場合を想定してマニアル入力も可能とする
・イメージセンサー幅(mm)・高さ(mm)をマニアル入力
・焦点距離(mm)、高度(m),イメージセンサー幅(mm)・高さ(mm)から
  写真撮影範囲を計算(計算方法はこちらを参照)
・写真左上座標(XY)、右下座標(XY)を計算(計算方法はこちらを参照)
・写真左上座標(XY)、右下座標(XY)を緯度・経度に変換
 (計算方法はこちらを参照)
・写真左上座標、右下座標の緯度・経度をdoc.klmに書き込み

【使用方法】
ここからklm.xlsmをダウンロードする。
・klm.xlsmを開く
  -イメージセンサ(W x H)mmを入力する(必須)
  -直角平面座標系番号(プルダウン選択)
  -高度・写真傾きがExifに無い場合、補正が必要な場合は入力する
・「写真貼付ボタン」をオンして貼付る写真を選択する
・Excel表に写真、Exif情報が表示されexcelが置いてあるフォルダーに
 doc.klmファイル、filesフォルダーが作成される
 注)高度、撮影方向がマニアルで入力された場合は赤文字で表示される
・作成されたdoc.klm,filesを圧縮プログラムを使用して圧縮して
 {適当な名前.kmz}で保存する
・作成したkmzファイルのダブルクリックでGoogle Earthを起動する。

注意:
・本プログラムはエラー処理を一切していません!

nice!(0)  コメント(0) 

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。