Ho un tale problema e sarei carino Se qualcuno mi può aiutare. Ho una tabella di punti con indice GIST. Questi punti non cambiano nel tempo.Trova i punti più vicini lungo la stringa di linea nel limite di distanza specificato e ordina
Vorrei recuperare i punti che si trovano vicino a una stringa di linea data. Esempio: Immagina che Linestring sia la strada e che i punti siano poi lungo la strada. Mi piacerebbe andare a prendere poi che sono a 5 km di distanza dalla strada data. Vorrei prendere quei pois nell'ordine corretto (ordine di guida lungo la strada). Guardate l'immagine:
Per data strada dal punto 1-5 vorrei prendere POI che è in 5 km max dalla strada e in ordine dal punto 1 a 5 lungo la strada. Così il risultato dovrebbe essere:
POI_ID
1
5
6
8
9
10
12
13
Questo dovrebbe dirmi cosa POI posso visitare durante il viaggio lungo la strada con il minimo costo.
Qualcuno ha qualche idea su come farlo con postgres e postgis?
Grazie per la risposta. Penso che questo non funzionerà perché l'ordine sarà sbagliato. Se road (linestring) con id = 123 ha punti 1,2,3,4 vorrei prendere punti (pois) in modo che passerai lungo la strada quindi prima il più vicino poi vicino al punto 1, quindi 2, 3 e termina con l'ultimo punto della stringa lineare 4. –
Ah, vedo, aggiorna la risposta per usare 'ST_Line_Locate_Point'. –
Proverò il mio amico :) Inoltre ho aggiornato la domanda per essere più comprensibile. –