Beregning av avstander mellom byer ved hjelp av deres koordinater. Hvordan beregne avstanden mellom GPS-koordinater

Ved hjelp av koordinater bestemmes plasseringen av et objekt på kloden. Koordinater er angitt med breddegrad og lengdegrad. Breddegrader måles fra ekvatorlinjen på begge sider. På den nordlige halvkule er breddegrader positive, i Sørlige halvkule– negativ. Lengdegrad måles fra nominell meridian, henholdsvis øst eller vest, enten østlig eller vestlig lengdegrad oppnås.

I følge den allment aksepterte posisjonen antas prime meridianen å være den som går gjennom det gamle Greenwich-observatoriet i Greenwich. Geografiske koordinater for stedet kan fås ved hjelp av en GPS-navigator. Denne enheten mottar sateli WGS-84-koordinatsystemet, uniformt for hele verden.

Navigatormodeller er forskjellige i produsent, funksjonalitet og grensesnitt. For øyeblikket er innebygde GPS-navigatorer også tilgjengelige i enkelte mobiltelefonmodeller. Men enhver modell kan registrere og lagre koordinatene til et punkt.

Avstand mellom GPS-koordinater

For å løse praktiske og teoretiske problemer i noen bransjer, er det nødvendig å kunne bestemme avstandene mellom punktene ved deres koordinater. Det er flere måter du kan gjøre dette på. Den kanoniske formen for å representere geografiske koordinater: grader, minutter, sekunder.

For eksempel kan du bestemme avstanden mellom følgende koordinater: punkt nr. 1 - breddegrad 55°45′07″ N, lengdegrad 37°36′56″ E; punkt nr. 2 – breddegrad 58°00′02″ N, lengdegrad 102°39′42″ E.

Den enkleste måten er å bruke en kalkulator for å beregne lengden mellom to punkter. I nettleserens søkemotor må du angi følgende søkeparametere: online - for å beregne avstanden mellom to koordinater. I den elektroniske kalkulatoren legges bredde- og lengdegradsverdier inn i søkefeltene for den første og andre koordinaten. Ved beregning ga den nettbaserte kalkulatoren resultatet - 3 800 619 m.

Den neste metoden er mer arbeidskrevende, men også mer visuell. Du må bruke alle tilgjengelige kart- eller navigasjonsprogrammer. Programmer der du kan lage punkter ved hjelp av koordinater og måle avstander mellom dem inkluderer følgende applikasjoner: BaseCamp ( moderne analog MapSource-programmer), Google Earth, SAS.Planet.

Alle de ovennevnte programmene er tilgjengelige for alle nettverksbrukere. For å beregne avstanden mellom to koordinater i Google Earth, må du for eksempel lage to etiketter som indikerer koordinatene til det første punktet og det andre punktet. Deretter, ved å bruke "Linjal" -verktøyet, må du koble det første og andre merket med en linje, programmet vil automatisk vise måleresultatet og vise banen på satellittbildet av jorden.

I tilfellet med eksemplet gitt ovenfor, returnerte Google Earth-programmet resultatet - lengden på avstanden mellom punkt nr. 1 og punkt nr. 2 er 3 817 353 m.

Hvorfor det er en feil ved fastsettelse av avstanden

Alle beregninger av utstrekning mellom koordinater er basert på beregning av buelengden. Jordens radius er involvert i å beregne lengden på buen. Men siden jordens form er nær en oblat ellipsoide, varierer jordens radius på visse punkter. For å beregne avstanden mellom koordinatene tas gjennomsnittsverdien av jordens radius, noe som gir en feil i målingen. Jo større avstand som måles, jo større er feilen.

Avstand fra punkt til punkt er lengden på segmentet som forbinder disse punktene på en gitt skala. Så når vi snakker om om måling av avstand, må du vite skalaen (lengdeenhet) som målingene skal utføres i. Derfor vurderes problemet med å finne avstanden fra punkt til punkt vanligvis enten på en koordinatlinje eller i et rektangulært kartesisk koordinatsystem på et plan eller i tredimensjonalt rom. Med andre ord, oftest må du beregne avstanden mellom punktene ved hjelp av koordinatene deres.

I denne artikkelen vil vi først huske hvordan avstanden fra punkt til punkt på en koordinatlinje bestemmes. Deretter får vi formler for å beregne avstanden mellom to punkter i et plan eller rom iht gitte koordinater. Avslutningsvis vil vi vurdere i detalj løsningene på typiske eksempler og problemer.

Sidenavigering.

Avstanden mellom to punkter på en koordinatlinje.

La oss først definere notasjonen. Vi vil betegne avstanden fra punkt A til punkt B som .

Av dette kan vi konkludere det avstanden fra punkt A med koordinat til punkt B med koordinat er lik modulen til forskjellen i koordinater, det er, for enhver plassering av punkter på koordinatlinjen.

Avstand fra punkt til punkt på et plan, formel.

Vi får en formel for å beregne avstanden mellom punkter og gitt i et rektangulært kartesisk koordinatsystem på et plan.

Avhengig av plasseringen av punktene A og B, er følgende alternativer mulige.

Hvis punktene A og B faller sammen, er avstanden mellom dem null.

Hvis punktene A og B ligger på en rett linje vinkelrett på abscisseaksen, faller punktene sammen, og avstanden er lik avstanden . I forrige avsnitt fant vi ut at avstanden mellom to punkter på en koordinatlinje er lik modulen til forskjellen mellom deres koordinater, derfor, . Derfor,.

Tilsvarende, hvis punktene A og B ligger på en rett linje vinkelrett på ordinataksen, blir avstanden fra punkt A til punkt B funnet som .

I dette tilfellet er trekant ABC rektangulær i konstruksjon, og Og . Av Pythagoras teorem vi kan skrive ned likheten, hvorfra .

La oss oppsummere alle oppnådde resultater: avstanden fra et punkt til et punkt på et plan finnes gjennom koordinatene til punktene ved hjelp av formelen .

Den resulterende formelen for å finne avstanden mellom punktene kan brukes når punktene A og B faller sammen eller ligger på en rett linje vinkelrett på en av koordinataksene. Faktisk, hvis A og B faller sammen, så . Hvis punktene A og B ligger på en rett linje vinkelrett på Ox-aksen, da. Hvis A og B ligger på en rett linje vinkelrett på Oy-aksen, så .

Avstand mellom punkter i rommet, formel.

La oss introdusere et rektangulært koordinatsystem Oxyz i rommet. La oss få en formel for å finne avstanden fra et punkt til punktet .

Generelt sett ligger ikke punktene A og B i et plan parallelt med et av koordinatplanene. La oss tegne gjennom punkt A og B plan vinkelrett på koordinataksene Ox, Oy og Oz. Skjæringspunktene til disse planene med koordinataksene vil gi oss projeksjoner av punktene A og B på disse aksene. Vi betegner anslagene .


Den nødvendige avstanden mellom punktene A og B er diagonalen til det rektangulære parallellepipedet vist på figuren. Ved konstruksjon er dimensjonene til dette parallellepipedet like Og . I løpet av geometri videregående skole Det er bevist at kvadratet på diagonalen til et rektangulært parallellepiped er lik summen av kvadratene av dets tre dimensjoner, derfor . Basert på informasjonen i den første delen av denne artikkelen, kan vi skrive følgende likheter, derfor,

hvor får vi det fra formel for å finne avstanden mellom punkter i rommet .

Denne formelen er også gyldig hvis punkt A og B

  • matche opp;
  • tilhører en av koordinataksene eller en linje parallelt med en av koordinataksene;
  • tilhører et av koordinatplanene eller et plan parallelt med et av koordinatplanene.

Finne avstanden fra punkt til punkt, eksempler og løsninger.

Så vi har fått formler for å finne avstanden mellom to punkter på en koordinatlinje, plan og tredimensjonalt rom. Det er på tide å se på løsninger på typiske eksempler.

Antallet problemer der det siste trinnet er å finne avstanden mellom to punkter i henhold til deres koordinater er virkelig enormt. En fullstendig gjennomgang av slike eksempler er utenfor rammen av denne artikkelen. Her vil vi begrense oss til eksempler der koordinatene til to punkter er kjent og det er nødvendig å beregne avstanden mellom dem.

TEORETISKE SPØRSMÅL

ANALYTISK GEOMETRI PÅ FLYET

1. Koordinatmetode: talllinje, koordinater på en linje; rektangulært (kartesisk) koordinatsystem på et plan; polare koordinater.

La oss vurdere en rett linje. La oss velge en retning på den (da blir den en akse) og et punkt 0 (opprinnelsen til koordinatene). En rett linje med en valgt retning og opprinnelse kalles koordinatlinje(vi antar at målestokkenheten er valgt).

La M– et vilkårlig punkt på koordinatlinjen. La oss sette det i samsvar med poenget M ekte nummer x, lik verdien OM segmentet: x=OM. Antall x kalt koordinaten til punktet M.

Dermed tilsvarer hvert punkt på koordinatlinjen et visst reelt tall - dens koordinat. Det motsatte er også sant: hvert reelle tall x tilsvarer et bestemt punkt på koordinatlinjen, nemlig et slikt punkt M, hvis koordinat er x. Denne korrespondansen kalles en-til-en.

Så reelle tall kan representeres av punkter på en koordinatlinje, dvs. Koordinatlinjen fungerer som et bilde av settet av alle reelle tall. Derfor kalles settet med alle reelle tall nummer linje, og et hvilket som helst tall er et punkt på denne linjen. I nærheten av et punkt på en talllinje er et tall ofte indikert - dets koordinat.

Rektangulært (eller kartesisk) koordinatsystem på et plan.

To innbyrdes vinkelrette akser Om x Og Om y har felles opphav OM og samme målestokk, form rektangulært (eller kartesisk) koordinatsystem på et plan.

Akser ÅH kalt abscisseaksen, aksen OY– ordinatakse. Punktum OM skjæringspunktet mellom aksene kalles origo. Planet som aksene befinner seg i ÅH Og OY, kalles koordinatplanet og betegnes Om xy.

Så, et rektangulært koordinatsystem på et plan etablerer en en-til-en-korrespondanse mellom settet med alle punkter på planet og settet med tallpar, noe som gjør det mulig å bruke algebraiske metoder når du løser geometriske problemer. Koordinataksene deler planet i 4 deler, kalles de i kvartaler, torget eller koordinatvinkler.

Polare koordinater.

Det polare koordinatsystemet består av et bestemt punkt OM, kalt stang, og strålen som kommer fra den OE, kalt polar akse. I tillegg settes skalaenheten for måling av lengder på segmenter. La et polart koordinatsystem gis og la M– vilkårlig punkt på flyet. La oss betegne med R– punktavstand M fra punkt OM, og gjennom φ – vinkelen som strålen roteres mot klokken for å justere polaraksen med strålen OM.

Polare koordinater poeng M ringenumre R Og φ . Antall R regnes som den første koordinaten og kalles polar radius, Antall φ – den andre koordinaten kalles polar vinkel.

Punktum M med polare koordinater R Og φ er utpekt som følger: M( ;φ). La oss etablere en forbindelse mellom de polare koordinatene til et punkt og dets rektangulære koordinater.
I dette tilfellet vil vi anta at opprinnelsen til det rektangulære koordinatsystemet er ved polen, og den positive semi-abscisse-aksen faller sammen med polaraksen.

La punkt M ha rektangulære koordinater X Og Y og polare koordinater R Og φ .

(1)

Bevis.

Slipp fra prikker M 1 Og M 2 perpendikulære M 1 V Og M 1 A,. fordi (x 2 ; y 2). Ved teorem, if M 1 (x 1) Og M 2 (x 2) er to punkter og α er avstanden mellom dem α = ‌‌‌‍‌‌|x 2 - x 1 | .

Å beregne avstander mellom punkter basert på deres koordinater på et plan er elementært; på jordoverflaten er det litt mer komplisert: vi vil vurdere å måle avstanden og initial asimut mellom punkter uten projeksjonstransformasjoner. Først, la oss forstå terminologien.

Introduksjon

Stor sirkelbuelengde– den korteste avstanden mellom to punkter på overflaten av en kule, målt langs linjen som forbinder disse to punktene (en slik linje kalles ortodromi) og passerer langs overflaten av kulen eller annen rotasjonsflate. Sfærisk geometri er forskjellig fra normal euklidisk geometri og avstandsligningene har også en annen form. I euklidisk geometri er den korteste avstanden mellom to punkter en rett linje. På en kule er det ingen rette linjer. Disse linjene på sfæren er en del av store sirkler - sirkler hvis senter sammenfaller med sfærens sentrum. Innledende asimut- asimut, tar som når man begynner å bevege seg fra punkt A, etter storsirkelen for den korteste avstanden til punkt B, vil endepunktet være punkt B. Når man beveger seg fra punkt A til punkt B langs storsirkellinjen, vil asimuten fra den nåværende posisjonen til endepunktet B er konstant, endres. Den innledende asimuten er forskjellig fra en konstant, hvoretter asimuten fra det nåværende punktet til det siste punktet ikke endres, men ruten som følges er ikke den korteste avstanden mellom to punkter.

Gjennom to punkter på overflaten av en kule, hvis de ikke er direkte motsatte av hverandre (det vil si at de ikke er antipoder), kan en unik storsirkel tegnes. To punkter deler en stor sirkel i to buer. Lengden på en kort bue er den korteste avstanden mellom to punkter. Et uendelig antall store sirkler kan tegnes mellom to antipodale punkter, men avstanden mellom dem vil være den samme på en hvilken som helst sirkel og lik halve omkretsen av sirkelen, eller π*R, der R er radiusen til kulen.

På et plan (i et rektangulært koordinatsystem) representerer store sirkler og deres fragmenter, som nevnt ovenfor, buer i alle projeksjoner bortsett fra den gnomoniske, der store sirkler er rette linjer. I praksis betyr dette at fly og annen lufttransport alltid bruker ruten til minimumsavstanden mellom punktene for å spare drivstoff, det vil si at flyturen gjennomføres langs en stor sirkelavstand, på et fly ser det ut som en bue.

Jordens form kan beskrives som en kule, så ligningene for å beregne avstander på stor sirkel er viktige for å beregne korteste avstand mellom punkter på jordoverflaten og brukes ofte i navigasjon. Å beregne avstand med denne metoden er mer effektiv og i mange tilfeller mer nøyaktig enn å beregne den for projiserte koordinater (i rektangulære koordinatsystemer), siden det for det første ikke krever oversettelse geografiske koordinater inn i et rektangulært koordinatsystem (utfør projeksjonstransformasjoner) og for det andre kan mange projeksjoner, hvis de er feil valgt, føre til betydelige lengdeforvrengninger på grunn av egenskapene til projeksjonsforvrengninger. Det er kjent at det ikke er en kule, men en ellipsoide som beskriver jordens form mer nøyaktig, men denne artikkelen diskuterer beregningen av avstander spesifikt på en kule; for beregninger brukes en kule med en radius på 6 372 795 meter , noe som kan føre til en feil ved beregning av avstander i størrelsesorden 0,5 %.

Formler

Det er tre måter å beregne storsirkelens sfæriske avstand på. 1. Sfærisk cosinus-teorem Ved små avstander og liten beregningsdybde (antall desimaler) kan bruk av formelen føre til betydelige avrundingsfeil. φ1, λ1; φ2, λ2 - breddegrad og lengdegrad av to punkter i radianer Δλ - forskjell i koordinater i lengdegrad Δδ - vinkelforskjell Δδ = arccos (sin φ1 sin φ2 + cos φ1 cos φ2 cos Δλ) For å konvertere vinkelavstanden må du konvertere vinkelavstanden multipliser vinkelforskjellen med radius Jorden (6372795 meter), vil enhetene for den endelige avstanden være lik enhetene som radius uttrykkes i (i i dette tilfellet- meter). 2. Haversine formel Brukes for å unngå problemer med korte avstander. 3. Modifikasjon for antipodene Den forrige formelen er også underlagt problemet med antipodale punkter; for å løse det brukes følgende modifikasjon.

Min implementering på PHP

// Jordradius define("EARTH_RADIUS", 6372795); /* * Avstand mellom to punkter * $φA, $λA - breddegrad, lengdegrad av 1. punkt, * $φB, $λB - breddegrad, lengdegrad av 2. punkt * Skrevet basert på http://gis-lab.info/ qa/great-circles.html * Mikhail Kobzarev * */ function calculateTheDistance ($φA, $λA, $φB, $λB) ( // konverter koordinater til radianer $lat1 = $φA * M_PI / 180; $lat2 = $φB * M_PI / 180; $long1 = $λA * M_PI / 180; $long2 = $λB * M_PI / 180; // cosinus og sinus for breddegrader og lengdegradsforskjeller $cl1 = cos($lat1); $cl2 = cos($ lat2 ); $sl1 = sin($lat1); $sl2 = sin($lat2); $delta = $long2 - $long1; $cdelta = cos($delta); $sdelta = sin($delta); // beregninger stor sirkellengde $y = sqrt(pow($cl2 * $sdelta, 2) + pow($cl1 * $sl2 - $sl1 * $cl2 * $cdelta, 2)); $x = $sl1 * $sl2 + $ cl1 * $cl2 * $cdelta; // $ad = atan2($y, $x); $dist = $ad * EARTH_RADIUS; return $dist; ) Eksempel på et funksjonskall: $lat1 = 77.1539; $lang1 = -139.398; $lat2 = -77,1804; $lang2 = -139,55; echo calculateTheDistance($lat1, $lang1, $lat2, $lang2) . "meter"; // Returner "17166029 meter"

Hvert punkt A i planet er karakterisert ved sine koordinater (x, y). De faller sammen med koordinatene til vektoren 0A som kommer ut fra punkt 0 - opprinnelsen til koordinatene.

La A og B være vilkårlige punkter på planet med henholdsvis koordinater (x 1 y 1) og (x 2, y 2).

Da har vektoren AB åpenbart koordinater (x 2 - x 1, y 2 - y 1). Det er kjent at kvadratet av lengden til en vektor er lik summen av kvadratene til dens koordinater. Derfor bestemmes avstanden d mellom punktene A og B, eller, hva som er den samme, lengden på vektoren AB, fra betingelsen

d 2 = (x 2 - x 1) 2 + (y 2 - y 1) 2.

$$ d = \sqrt((x_2 - x_1)^2 + (y_2 - y_1)^2) $$

Den resulterende formelen lar deg finne avstanden mellom to punkter på planet, hvis bare koordinatene til disse punktene er kjent

Hver gang vi snakker om koordinatene til et bestemt punkt på planet, mener vi et veldefinert koordinatsystem x0y. Generelt kan koordinatsystemet på et plan velges på forskjellige måter. Så, i stedet for koordinatsystemet x0y, kan vi vurdere koordinatsystemet xִy, som oppnås som et resultat av å rotere de gamle koordinataksene rundt startpunktet 0 mot klokken piler på hjørnet α .

Hvis et punkt på planet i x0y-koordinatsystemet hadde koordinater (x, y), så i nytt system koordinater xִ y den vil ha forskjellige koordinater (x, y).

Som et eksempel kan du vurdere punkt M, som ligger på 0x-aksen og atskilt fra punkt 0 i en avstand på 1.

I x0y-koordinatsystemet har dette punktet åpenbart koordinater (cos α ,synd α ), og i x-y-koordinatsystemet er koordinatene (1,0).

Koordinatene til to punkter på plan A og B avhenger av hvordan koordinatsystemet er spesifisert i dette planet. Og her avstanden mellom disse punktene avhenger ikke av metoden for å spesifisere koordinatsystemet .

Andre materialer

Topp