PostGIS 라인의 시작과 끝에 Z 값을 할당


9

PostGIS 데이터베이스에 라인 테이블과 각 라인의 시작과 끝에 대한 반전 레벨이있는 ​​테이블이 있습니다.

내 목표는 내 반전 데이터에서 내 테이블에 3D 선을 만드는 것입니다. st_makeline을 사용하여 시작과 끝에서 3D 점으로 선을 다시 만들 수 있지만 시작과 끝의 Z 값으로 만 업데이트를 실행할 수 있기를 바랍니다.

이 작업을 수행 할 수 있습니까 아니면 라인을 다시 만드는 것이 더 쉽습니다.

답변:


2

-ST_SetPoint (형상 선 스트링, 정수 0 기반 위치, 형상 점) 및 ST_Translate ()을 사용하여 선 스트링의 점을 업데이트 할 수 있습니다.
-첫 번째 포인트와 마지막 포인트를 얻으려면 st_endpoint () 및 st_startpoint ()를 사용하십시오.
-마지막 포인트의 "인덱스"를 얻으려면 ST_NumPoints (the_geom) -1을 사용하십시오.
첫 번째 포인트 "인덱스"는 0입니다.

첫 번째 요점에 대해서는 다음과 같습니다.

  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.