Gán giá trị Z để bắt đầu và kết thúc dòng PostGIS


9

Tôi có một bảng dòng trong cơ sở dữ liệu PostGIS của tôi và một bảng với các mức đảo ngược cho đầu và cuối của mỗi dòng.

Mục tiêu của tôi là tạo các dòng 3D trong bảng của tôi, từ dữ liệu đảo ngược của tôi. Tôi biết tôi có thể sử dụng st_makeline để tạo lại dòng có điểm 3D ở đầu và cuối nhưng tôi hy vọng có thể chạy bản cập nhật chỉ trên giá trị Z cho đầu và cuối.

Điều này có thể được thực hiện hay là dễ dàng hơn để chỉ tạo lại dòng.

Câu trả lời:


2

-Bạn có thể cập nhật một điểm trong một linestring với ST_SetPoint (linestring hình học, zerobasingposeition, điểm hình học) và ST_Translate ().
-Để có được điểm đầu tiên và điểm cuối, hãy sử dụng st_endpoint () và st_startpoint ().
-Để lấy "chỉ mục" của điểm cuối cùng, hãy sử dụng ST_NumPoints (the_geom) -1.
-Điểm "chỉ số" đầu tiên là 0.

Đôi khi như thế cho điểm đầu tiên:

  UPDATE table
  SET the_geom=
st_setpoint(the_geom,0,st_translate(st_firstpoint(the_geom),0,0,Z))  
   FROM ....
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.