PostGISラインの開始と終了にZ値を割り当てます


9

PostGISデータベースにラインテーブルがあり、各ラインの開始と終了のレベルが反転しているテーブルがあります。

私の目標は、私の反転データから、テーブルに3Dラインを作成することです。st_makelineを使用して、始点と終点に3Dポイントを持つラインを再作成できることはわかっていますが、始点と終点のZ値だけで更新を実行できることを望んでいました。

これはできますか、それとも単にラインを再作成する方が簡単ですか。

回答:


2

-ST_SetPoint(geometry linestring、integer zerobasedposition、geometry point)とST_Translate()を使用して、ラインストリング内のポイントを更新できます。
-最初と最後のポイントを取得するには、st_endpoint()およびst_startpoint()を使用します。
-最後のポイントの「インデックス」を取得するには、ST_NumPoints(the_geom)-1を使用します。
-最初のポイントの「インデックス」は0です。

最初の点についてはそのようなSomethng:

  UPDATE table
  SET the_geom=
st_setpoint(the_geom,0,st_translate(st_firstpoint(the_geom),0,0,Z))  
   FROM ....
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.