Saya sedang mengembangkan reverse-geocoder untuk Kanada. Sejauh ini, mengingat lat / lng, saya dapat menemukan jalan terdekat (segmen garis), yang mencakup arah segmen garis dan rentang alamat untuk kedua sisi jalan. Saya sekarang mencoba mencari cara terbaik untuk secara program memperkirakan jumlah rumah terdekat ke titik lat / lng yang diberikan.
Berikut adalah contoh baris yang berisi data jalan:
-[ RECORD 1 ]-
[...]
l_adddirfg | Same Direction
l_hnumf | 3219
l_hnuml | 3235
l_stname_c | Breen Road North-west
r_adddirfg | Same Direction
r_hnumf | 3224
r_hnuml | 3236
r_stname_c | Breen Road North-west
the_geom | 0105000020E610000001000000010200000002000000B0F6990E78885CC088DF2B5F3C8C49400875B39A89885CC0A0BCA6AC4B8C4940
Jadi, mengingat koordinat lat / lng yang terletak di dekat segmen garis "the_geom", seseorang dapat mengetahui secara visual di sisi jalan mana titik tersebut berada (sisi kiri atau kanan), dan seberapa jauh sepanjang segmen itu - dengan demikian mendekati nomor rumah. Misalnya, jika titik terletak di sisi kanan, tiga perempat di jalan, saya akan menggunakan bidang r_hnumf (sisi kanan, angka pertama) dan r_hnuml (sisi kanan, angka terakhir) ... Alamat jalan mungkin dekat untuk:
3232 Breen Road North-west
Apa yang saya cari adalah praktik terbaik dalam menghitung / memperkirakan hal ini di PostGIS (yang baru bagi saya), atau di lapisan aplikasi setelah baris diambil.
Terima kasih!
sumber