Sono nuovo qui e punti povero quindi posso offrire solo 50 punti di taglie.Ostruzioni geografiche nelle ricerche di raggio
Supponiamo Ho un'applicazione una ricerca di tutte le stazioni di gas entro 10 miglia di raggio di un determinato luogo. Tuttavia un lato di questa posizione è circondato da una catena montuosa che devi percorrere 50 miglia per spostarti. Non vorresti restituire risultati dall'altra parte della montagna. Quali sono alcuni buoni algoritmi/tecniche per affrontare un simile problema? So che con ricerche puntuali si possono usare i costi di percorso, ma non sono sicuro di quale sia la tecnica con le ricerche di raggio.
Ecco un esempio:
La linea rossa è un accordo sul cerchio di raggio da 40, -74 a 41, -72 Lat Long (non preciso solo dicendo) L'utente a 40 , -73 esegue una ricerca del raggio geografico per qualcosa che comprende anche aree attraverso il suono LI in Connecticut che sono poco pratiche da raggiungere. L'algoritmo dovrebbe sapere che esiste un accordo che interseca completamente il cerchio di ricerca e non restituisce risultati che si trovano sull'altro lato dell'accordo. Quindi solo i punti nell'area verde verrebbero restituiti.
Questo dovrebbe essere possibile eseguire senza l'analisi della rete stradale se il programmatore definisce queste linee di delimitazione. Ad esempio, in alcuni paesi potrebbe esserci un'area pericolosa da attraversare e si vorrebbe che le persone su entrambi i lati di quell'area siano limitate a quella parte. O un confine internazionale, ecc. Sto solo chiedendo questo perché sono abbastanza sicuro che la gente lo stia facendo.
Non penso che la domanda sia chiara. Misuri la distanza lungo una rete stradale o usi la distanza aerea (supponendo che non ci siano montagne)? –
Bene distanza aerea. Ad esempio, se mi trovo sul lato ovest di Manhattan, eseguo una ricerca del raggio per i ristoranti. Vorrei che il fiume Hudson fosse un duro limite geografico per questa ricerca. Cioè, potrebbe esserci un ristorante sulla riva del NJ dell'Hudson ma non è praticamente possibile arrivarci anche se potrebbe essere nel mio raggio "come vola l'uccello". –
In sostanza, mi sto chiedendo che cosa è una tecnica per fare ciò senza fare un grafico per tracciare il percorso usando le strade. So che se volessi farlo, ad esempio, assegnerei un costo elevato o infinito per viaggiare attraverso un ponte o un tunnel per escludere i risultati NJ. Immagino che ci sia un modo per definire una linea da una coordinata all'altra che escluderebbe i risultati attraverso quel confine anche se si incontrano come la distanza dell'uccello vola. –