Satoshi Masuda 様
こんにちは
先ほどはお役に立てず申し訳ありませんでした。m(__)m
変換するのであれば、ポリゴンの重心からポイントの地物を生成し、そのポイントのデータから先ほどの手順に進むことになると思います。
ただそうすると、中間生成物ができるので管理が大変かもしれません。
そこでフィールド計算機を使って、属性テーブルに書き込む方法を試してみました。
結果を確認ましたが、正しく数値が出力されていると思います。
まず「フィールド計算機」を立ち上げます。真ん中のそろばんの形をしたアイコンです。
以下は設定例です。フィールドの名前やフィールド長、精度は都合の良い設定にしてください。
出力するフィールドの名前:longitude
フィールド型:小数点付き数値(real)
フィールド長:12 精度:8
式:x( transform( make_point( "X" , "Y" ), 'EPSG:6670', 'EPSG:6668'))
式の意味を追いかけてみます。
まず属性テーブルのXとYを使って、ポイントのジオメトリを作ります(make_point)。
次にJGD2011平面直角座標2系(EPSG:6670)からJGD2011地理座標(EPSG:6668)へ変換します(transform)。
変換した地物からx座標の値を得ます(x)。
同様にして、y座標の値を属性テーブルに書き込みます。
出力するフィールドの名前:latitude
フィールド型:小数点付き数値(real)
フィールド長:12 精度:8
式:y( transform( make_point( "X" , "Y" ), 'EPSG:6670', 'EPSG:6668'))
フィールド計算機を実行すると、自動的に鉛筆マークのアイコンがアクティブになります(編集モード)。
アイコンをクリックして編集モードを終了し、shapeファイルを保存してください。
後は、属性テーブルのデータを表計算ソフトへ貼り付けるのが簡単かと思います。
属性テーブルを開いて「Ctrl + A」で全てのデータを選択し、「Ctrl + C」でコピー。
表計算ソフトのA1セルに「Ctrl + V」で貼り付け。
A列に空間情報がWKTで書き込まれるので、列ごと削除。
少し長くなりましたが、この方法が1番楽かと思います。よろしければお試しください。
2021年6月24日木曜日 13:01:42 UTC+9 Satoshi Masuda: