Calcularea distanțelor dintre orașele prin coordonatele lor - portal php

Calcularea distanțelor între orașele coordonatele lor

Calcularea distanțelor dintre orașele prin coordonatele lor - portal php

Lungimea arcului cercului mare - cea mai mică distanță dintre oricare două puncte situate pe o suprafață sferică, măsurată de-a lungul unei linii care leagă aceste două puncte (această linie se numește marele cerc) și care trece peste suprafața sferei sau altă suprafață de revoluție. geometrie sferică diferă de ecuația obișnuită distanța euclidiană și, de asemenea, să ia alte forme. În geometria euclidiană, cea mai scurtă distanță între două puncte - o linie dreaptă. Pe teren, liniile drepte nu există. Aceste linii din zonă fac parte din cercurile mari - cercuri, centrele de care coincide cu centrul sferei.







azimut inițială - azimut, luând ca la începutul mișcării de la punctul A ca urmare marele cerc pe cea mai scurtă distanța până la punctul B, obiectivul va fi punctul B. Atunci când deplasarea de la punctul A în azimutul marele cerc al poziției actuale a punctului B, de-a lungul liniei punct final B este în continuă schimbare. Azimutul de start este diferit de la DC, după care, azimutul de la punctul de curent până la sfârșitul nu se schimba, dar traseul nu este cea mai scurtă distanță între două puncte.

Prin oricare două puncte de pe suprafața sferei, în cazul în care nu sunt direct opuse una alteia (de exemplu, ele nu sunt antipozii), puteți petrece un cerc unic mare. Două puncte, împărtășesc un cerc mare în două arce. lungimea arcului scurt - cea mai scurtă distanță între două puncte. Între două puncte-antipozii pot deține un număr infinit de cercuri mari, dar distanța dintre ele va fi la fel pe orice cerc și egală cu jumătate din circumferința unui cerc, sau π * R, unde R - raza sferei.

In plan (sistem de coordonate rectangular), cercuri mari și fragmente ale acestora, așa cum sa menționat mai sus, sunt arce în toate proiecțiile, cu excepția gnomonic unde cercuri mari - linii drepte. În practică, acest lucru înseamnă că aeronavele de transport aerian și o rută utilizează întotdeauna distanța minimă dintre punctele de economie de combustibil, adică un zbor se efectuează pe o distanță de cerc mare pe plan, se pare ca un arc.







Calcularea distanțelor dintre orașele prin coordonatele lor - portal php

Forma Pământului poate fi descrisă ca o sferă, și, prin urmare, ecuațiile pentru calculul distanței pe cercul mare este important să se calculeze distanța cea mai scurtă dintre două puncte de pe suprafața Pământului și sunt frecvent utilizate în navigație.

Distanță de calcul prin această metodă mai eficientă și, în multe cazuri, mai precis decât calcularea acestuia pentru coordonatele proiectate (în carteziene sisteme de coordonate), deoarece, în primul rând, aceasta nu trebuie să traducă coordonatele geografice ale unui dreptunghiular sistem (efectua transformare de proiecție) coordonează și În al doilea rând, multe proiecții, dacă este selectat în mod corespunzător, poate duce la denaturări semnificative ale lungimi, din cauza naturii distorsiune de proiecție.

Este cunoscut faptul că descrie mai precis forma Pământului nu este o sferă, ci un elipsoid, dar acest articol discută despre calcularea distanței pe teren, este utilizată pentru calcularea razei sferei de 6372795 de metri, ceea ce poate duce la o eroare de calcul distanțe de ordinul a 0,5%.

Există trei modalități de calcul a distanței sferice cerc mare.

1. O teoremă cosinus sferic

În cazul distanțelor mici și calculând o lungime cuvânt mic (număr de cifre după virgulă), utilizarea formulei poate duce la erori semnificative legate de rotunjirii.

φ1, λ1; φ2, λ2 - latitudinea și longitudinea a două puncte în radiani

Δλ - diferența în coordonatele de longitudine

Δδ - diferența unghiulară

Pentru a converti metrica distanța unghiulară, diferența unghiulară trebuie să fie înmulțită cu raza Pământului (6372795 metri), unitățile de măsură finale sunt unități egale, care sunt exprimate într-o rază (în acest caz - metru).

2. Formula haversine

Folosit pentru a evita problemele cu distanțe mici.

3. Modificarea la antipozi

Formula precedentă este de asemenea supusă problema antipozi-puncte, pentru a rezolva aceasta, utilizați următoarea modificare a acesteia.

punerea în aplicare a mea în PHP

Un exemplu al unui apel de funcție:

Vă mulțumim pentru metoda

Vă mulțumesc - foarte la îndemână!

Poate mă poți ajuta cu o altă problemă (care nu pot decide pentru o lungă perioadă de timp, obguglil are toată lungimea și lățimea)

Sarcina este următoarea: aveți nevoie pentru a obține coordonatele nodurilor coordonatele numelui (LAT, LNG), centrul și raza (în kilometri sau de metri - nu contează)

Natolknite ideea.

Poate pătrat, odată ce raza este? Se pare că este necesar să se găsească în partea de sus a pătrat, în care cercul înscris cu rază cunoscută și centru?