Saya cukup baru di Postgres dan PostGIS.
Saya mencoba melakukan pencocokan peta sederhana (atau jalur-inferensi jika Anda mau) dari beberapa titik GPS. Saya menggunakan postgres (postgis) .
Saya memiliki tabel di basis data yang berisi titik GPS saya: gpspoints (Lat, Long, time, speed, azimuth, geometry, ...)
Saya telah mengimpor shapefile jaringan jalan ke dalam basis data saya juga: rute (gid, idrte, versi, nomrte, norte, clsrte, geom, ...) - SAYA TIDAK PUNYA azimuth dari tautan, dan saya tidak yakin bagaimana saya bisa menghitungnya menggunakan fungsi postgis ST_azimuth. Yang saya miliki adalah shapefile dari jaringan jalan yang berisi kolom yang disebutkan di atas.
Saya ingin mengaitkan setiap titik GPS ke tautan terdekat (dalam buffer 20 meter di sekitar titik) hanya jika arah tautan setuju dengan azimuth titik GPS (+ atau -15 derajat) dan mengambil posisi yang diproyeksikan. Kalau tidak, saya ingin mencari tautan terdekat BERIKUTNYA, dalam buffer 20 meter, yang memiliki azimuth yang dapat diterima! (Sama seperti gambar!)
Saya ingin koordinat baru dari titik-titik GPS yang diproyeksikan ditambahkan dalam tabel "gpspoints" sebagai "projectedLat" dan "projectedLong".
(Pada gambar di bawah ini, titik-titik aktual diperlihatkan menggunakan arah sementara titik yang diproyeksikan tidak memiliki tanda arah)
ST_Azimuth
, tetapi ingatlah bahwa itu akan memberi tahu Anda azimuth sehubungan dengan arah digitalisasi .