shpファイルのDXF形式のエキスポートでz情報付与について

767 views
Skip to first unread message

Yoshihito Kawashima

unread,
Dec 26, 2023, 9:03:51 PM12/26/23
to QGIS初心者質問グループ
お世話になります。
QGISでshp形式のファイルを読み込み、希望の座標系でDXFにエクスポートして等深線図の出力を試みております。
XYデータはエキスポートされ、狙った座標系で図面として見えるのですが
それぞれの位置にZデータ(高さ、水深値)が付いておりません。
変換元のshpファイルにはZデータは付いているので、設定の問題と考えております。
そこで
Zデータの反映のさせ方をご教示頂きたく、質問させて頂きます。

師走でご多忙の折、お手数お掛け致しますが宜しくお願い致します。

ありた

unread,
Dec 29, 2023, 3:27:58 AM12/29/23
to QGIS初心者質問グループ
こんにちは

まず、元の ESRI Shapefile 形式のデータに、ちゃんと Z 座標が付与されているか
確認してください。
レイヤのプロパティを開き、情報タブのジオメトリ形式の箇所が Z 座標付きの
PointZ / LineStringZ / PolygonZ あるいはこれらの Multi 形式になっていますか。

レイヤを編集モードにし、頂点ツールを選択し、地物を右クリックすることで
表示される頂点エディタ上で Z 座標の欄がありますでしょうか。
また Z 座標の値が0以外でしょうか。

なお、属性テーブルで表示される属性情報は、たとえ「Z」やら「Height」やら
「標高」などの名前の情報があったとしても座標値とは無関係ですので、
位置情報として Z 値をもっている必要があります。

最後に、 DXF へのエクスポートですが、メニューバーからプロジェクトの
エクスポートを行う方法と、レイヤパネルから選択レイヤのエクスポートの
大きくふたつの方法がありますが、どちらを行っていますでしょうか。
上記を確認しても、うまくいかない場合は、サンプルデータを作成し
添付等をお願いします。

Yoshihito Kawashima

unread,
Jan 8, 2024, 6:37:26 PM1/8/24
to QGIS初心者質問グループ
ありた様
あけましておめでとうございます。
返信が大変遅くなりました事、誠に申し訳御座いません。
また真摯に御丁寧にご説明頂きました事、感謝申し上げます。
小職、超初心者で分からない事ばかりで御座いますので、頂きましたアドバイスを確認しながら進めさせて頂きます。
使用するデータは海上保安庁(水路協会)が販売している海底地形図データとなります。
不明点等々御座いましたら申し訳御座いませんが改めて質問させて頂くかと思います。

大変遅くなり申し訳御座いませんが、先ずは遅くなりましたお詫びとお礼まで。
有難う御座います。

2023年12月29日金曜日 17:27:58 UTC+9 ありた:

Yoshihito Kawashima

unread,
Mar 29, 2024, 5:18:07 AM3/29/24
to QGIS初心者質問グループ
有田様
ご無沙汰しております。
首記の件、近しい方に伺いまして解決致しました。
変換データは日本水路協会(海上保安庁)が販売している海底地形デジタルデータ(水深・等深線データ)です。
これはシェープファイル若しくはアスキーファイルで販売されており、小職はシェープファイル形式で入手しております。
近しい方は海外のQGISサイトとやり取りしておりましたので一部英文表記で有る事、ご容赦願います。
私の理解ではシェープファイルをDXF等のCADファイル形式に変換後に改めて任意の座標系へ変換可能ですが
今回は旨く行かず、Z値の付与と座標変換は別々に行っております。
既にほかの個所でご説明されている方がおられるかもしれませんが
ご参考までに一応下記致します。

Processing→Vector general→Reproject Layer
Target CRSには希望の(今回は平面直角座標系)を選択し、変換。
Run をクリックすると完了しますが、『Reprojected』と言うレイヤーが作成されているので“SHP”形式で保存しました。
このSHPファイルを開き、Processingを選択しました。
“Vector geometry ” を選択し、サブメニューを開き、“Set Z value”を開きました。
Z valueのプルダウンメニューの横のアイコンをクリックし、水深値の入っているフィールドを選びました。
今回は“水深値”または“Depth”を選択しました。
Z valueの取得先が設定されたのでアイコンが黄色に変わり、Z valueが取得されるとTemporary Layerが作成され
Z Added というTemporary Layerが作成されました。
このレイヤーをDXFとしてエクスポートしました。
今回の対象は等深線ですので、“Geometry type ” を“Line stering(Polyline) ” とし
“Include-z-dimension ”にチェックを入れました。
必要に応じてOptionを選択し、Optionで選んだレイヤが―表示されます。
これで作成されたDXFファイルにZ値が含まれている事を確認出来ました。

2024年1月9日火曜日 8:37:26 UTC+9 Yoshihito Kawashima:
Reply all
Reply to author
Forward
0 new messages