ヤマレコの登山計画でGPXファイルエクスポートができなくなったため、国土地理院地図でGPXファイルを作成することにした。
国土地理院地図でルートのCSVファイルを作成
最終ノードを左ダブルクリックで終えると、断面図ダイアログが表示される
「グラフを保存」をクリックし、さらに「CSVファイルに保存」をクリック
次のようなCSVファイルが作成される
「断面図」の「グラフを保存」で出力したCSVデータ
lat,lng,elevation,distance
34.718870,135.644706,43.71,0
34.718996,135.644716,43.98,13
34.719121,135.644726,48.33,27
34.719246,135.644736,48.69,41
34.719372,135.644746,63.54,55
〜 以下省略 〜
CSVファイルをGPXファイルに変換する
AIに変換スクリプトを作ってもらう
Microsoft Copilot AIへの指示
地理院地図Vectorで作成した断面図グラフCSVファイルを、GPXファイルに変換したい。 断面図グラフCSVの書式は次のようなものである。
lat,lng,elevation,distance
34.719034,135.644501,44.6,0
34.719161,135.644496,48.68,14
34.719287,135.644491,51.05,28
34.719400,135.644524,55.68,42
34.719480,135.644643,64.37,56
変換スクリプトのコア部分だけの回答が示されるので...
Microsoft Copilot AIへの指示
command.py [入力ファイル.CSV] として、出力は標準出力としてスクリプトを実行可能な形に完成してください
次に示すのが、Microsoft Copilot AIが作成したPythonスクリプト
command.py [Pythonスクリプトファイルをダウンロードする ]
import csv
import sys
def csv_to_gpx(csv_filename):
with open(csv_filename, newline='', encoding='utf-8') as csvfile:
reader = csv.DictReader(csvfile)
print('<?xml version="1.0" encoding="UTF-8"?>')
print('<gpx version="1.1" creator="CSV to GPX Converter">')
print(' <trk>')
print(' <trkseg>')
for row in reader:
print(f' <trkpt lat="{row["lat"]}" lon="{row["lng"]}">')
print(f' <ele>{row["elevation"]}</ele>')
print(' </trkpt>')
print(' </trkseg>')
print(' </trk>')
print('</gpx>')
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Usage: python command.py [input_file.csv]")
sys.exit(1)
csv_to_gpx(sys.argv[1])

