Formula pentru distanța dintre punctele din planul de coordonate. Distanța de la punct la punct: formule, exemple, soluții

Folosind coordonatele, se determină locația unui obiect pe glob. Coordonatele sunt indicate prin latitudine și longitudine. Latitudinile sunt măsurate de la linia ecuatorului de ambele părți. În emisfera nordică latitudinile sunt pozitive, în emisfera sudică sunt negative. Longitudinea este măsurată de la primul Meridian fie la est, fie respectiv la vest se obtine fie longitudine estica, fie vestica.

Conform poziției general acceptate, primul meridian este considerat a fi cel care trece prin vechiul Observator Greenwich din Greenwich. Coordonatele geografice ale locației pot fi obținute folosind un navigator GPS. Acest dispozitiv primește semnale ale sistemului de poziționare prin satelit în sistemul de coordonate WGS-84, uniform pentru întreaga lume.

Modelele de navigator diferă în funcție de producător, funcționalitate și interfață. În prezent, navigatoarele GPS încorporate sunt disponibile și în unele modele de telefoane mobile. Dar orice model poate înregistra și salva coordonatele unui punct.

Distanța dintre coordonatele GPS

Pentru a rezolva probleme practice și teoretice din unele industrii, este necesar să se poată determina distanțele dintre puncte prin coordonatele acestora. Există mai multe moduri în care puteți face acest lucru. Forma de reprezentare canonică coordonate geografice: grade, minute, secunde.

De exemplu, puteți determina distanța dintre următoarele coordonate: punctul nr. 1 - latitudine 55°45′07″ N, longitudine 37°36′56″ E; punctul nr. 2 - latitudine 58°00′02″ N, longitudine 102°39′42″ E.

Cel mai simplu mod este să folosești un calculator pentru a calcula lungimea dintre două puncte. În motorul de căutare din browser, trebuie să setați următorii parametri de căutare: online - pentru a calcula distanța dintre două coordonate. În calculatorul online, valorile de latitudine și longitudine sunt introduse în câmpurile de interogare pentru prima și a doua coordonată. La calcul, calculatorul online a dat rezultatul - 3.800.619 m.

Următoarea metodă necesită mai multă muncă, dar și mai vizuală. Trebuie să utilizați orice program de cartografiere sau de navigare disponibil. Programele în care puteți crea puncte folosind coordonate și măsura distanțe dintre ele includ următoarele aplicații: BaseCamp (un analog modern al programului MapSource), Google Earth, SAS.Planet.

Toate programele de mai sus sunt disponibile oricărui utilizator al rețelei. De exemplu, pentru a calcula distanța dintre două coordonate în Google Earth, trebuie să creați două etichete care indică coordonatele primului punct și celui de-al doilea punct. Apoi, folosind instrumentul „Riglă”, trebuie să conectați primul și al doilea marcaj cu o linie, programul va afișa automat rezultatul măsurării și va arăta calea pe imaginea prin satelit a Pământului.

În cazul exemplului dat mai sus, programul Google Earth a returnat rezultatul - lungimea distanței dintre punctul nr. 1 și punctul nr. 2 este de 3.817.353 m.

De ce există o eroare la determinarea distanței

Toate calculele extinderii dintre coordonate se bazează pe calculul lungimii arcului. Raza Pământului este implicată în calcularea lungimii arcului. Dar, deoarece forma Pământului este apropiată de un elipsoid oblat, raza Pământului variază în anumite puncte. Pentru a calcula distanța dintre coordonate, se ia valoarea medie a razei Pământului, ceea ce dă o eroare în măsurare. Cu cât distanța măsurată este mai mare, cu atât eroarea este mai mare.

Distanța dintre două puncte dintr-un plan.
Sisteme de coordonate

Fiecare punct A al planului este caracterizat de coordonatele sale (x, y). Ele coincid cu coordonatele vectorului 0A care iese din punctul 0 - originea coordonatelor.

Fie A și B puncte arbitrare ale planului cu coordonatele (x 1 y 1) și respectiv (x 2, y 2).

Atunci vectorul AB are în mod evident coordonate (x 2 - x 1, y 2 - y 1). Se știe că pătratul lungimii vectorului egal cu suma pătratele coordonatelor sale. Prin urmare, distanța d dintre punctele A și B, sau, ceea ce este același, lungimea vectorului AB, este determinată din condiția

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

d = \/ (x 2 - x 1) 2 + (y 2 - y 1) 2

Formula rezultată vă permite să găsiți distanța dintre oricare două puncte din plan, dacă numai coordonatele acestor puncte sunt cunoscute

De fiecare dată când vorbim despre coordonatele unui anumit punct din plan, ne referim la un sistem de coordonate bine definit x0y. În general, sistemul de coordonate dintr-un plan poate fi ales în diferite moduri. Deci, în loc de sistemul de coordonate x0y, puteți lua în considerare sistemul de coordonate x"0y", care se obține prin rotirea vechilor axe de coordonate în jurul punctului de plecare 0 în sens invers acelor de ceasornic săgeți pe colț α .

Dacă un punct al planului din sistemul de coordonate x0y avea coordonate (x, y), atunci în sistem nou coordonatele x"0y" va avea coordonate diferite (x", y").

Ca exemplu, luați în considerare punctul M, situat pe axa 0x și separat de punctul 0 la o distanță de 1.

Evident, în sistemul de coordonate x0y acest punct are coordonate (cos α ,păcat α ), iar în sistemul de coordonate x"0y" coordonatele sunt (1,0).

Coordonatele oricăror două puncte din planul A și B depind de modul în care este specificat sistemul de coordonate în acest plan. Dar distanța dintre aceste puncte nu depinde de metoda de specificare a sistemului de coordonate. Vom folosi în mod semnificativ această circumstanță importantă în paragraful următor.

Exerciții

I. Aflați distanțele dintre punctele planului cu coordonate:

1) (3,5) și (3,4); 3) (0,5) și (5, 0); 5) (-3,4) și (9, -17);

2) (2, 1) și (- 5, 1); 4) (0, 7) și (3,3); 6) (8, 21) și (1, -3).

II. Aflați perimetrul unui triunghi ale cărui laturi sunt date de ecuațiile:

x + y - 1 = 0, 2x - y - 2 = 0 și y = 1.

III. În sistemul de coordonate x0y, punctele M și N au coordonatele (1, 0) și respectiv (0,1). Găsiți coordonatele acestor puncte în noul sistem de coordonate, care se obține prin rotirea axelor vechi în jurul punctului de plecare cu un unghi de 30° în sens invers acelor de ceasornic.

IV. În sistemul de coordonate x0y, punctele M și N au coordonatele (2, 0) și (\ / 3/2, respectiv - 1/2). Găsiți coordonatele acestor puncte în noul sistem de coordonate, care se obține prin rotirea axelor vechi în jurul punctului de plecare cu un unghi de 30° în sensul acelor de ceasornic.

ASPECTE TEORETICE

GEOMETRIA ANALITICA PE AVION

1. Metoda coordonatelor: linie numerică, coordonate pe o linie; sistem de coordonate dreptunghiular (cartezian) pe un plan; coordonate polare.

Să luăm în considerare o linie dreaptă. Să alegem o direcție pe ea (apoi va deveni o axă) și un punct 0 (originea coordonatelor). Se numește o linie dreaptă cu o direcție și o origine alese linie de coordonate(presupunem că unitatea de scară este selectată).

Lăsa M– un punct arbitrar pe linia de coordonate. Să o punem în conformitate cu punctul M numar real X, egal cu valoarea OM segment: x=OM. Număr X numită coordonata punctului M.

Astfel, fiecărui punct de pe linia de coordonate îi corespunde un anumit număr real - coordonatele sale. Este adevărat și invers: fiecărui număr real x îi corespunde un anumit punct de pe linia de coordonate, și anume unui astfel de punct M, a cărui coordonată este x. Această corespondență se numește unu la unu.

Deci, numerele reale pot fi reprezentate prin puncte ale unei drepte de coordonate, i.e. Linia de coordonate servește ca imagine a mulțimii tuturor numerelor reale. Prin urmare, se numește mulțimea tuturor numerelor reale linie numerică, iar orice număr este un punct pe această dreaptă. În apropierea unui punct de pe o dreaptă numerică, un număr este adesea indicat - coordonatele sale.

Sistem de coordonate dreptunghiular (sau carteziene) pe un plan.

Două axe reciproc perpendiculare Despre xȘi Despre y având o origine comună DESPREși aceeași unitate de scară, forma sistem de coordonate dreptunghiular (sau carteziene) pe un plan.

Axă OH numită axa absciselor, axa OY– axa ordonatelor. Punct DESPRE intersectia axelor se numeste origine. Planul în care sunt situate axele OHȘi OY, se numește plan de coordonate și se notează Despre xy.

Deci, un sistem de coordonate dreptunghiular pe un plan stabilește o corespondență unu-la-unu între mulțimea tuturor punctelor din plan și mulțimea perechilor de numere, ceea ce face posibilă aplicarea metodelor algebrice la rezolvarea problemelor geometrice. Axele de coordonate împart planul în 4 părți, ele se numesc în sferturi, pătrat sau unghiuri de coordonate.

Coordonate polare.

Sistemul de coordonate polare este format dintr-un anumit punct DESPRE, numit pol, și raza care emană din ea OE, numit axa polară.În plus, este setată unitatea de scară pentru măsurarea lungimii segmentelor. Să fie dat un sistem de coordonate polare și să fie M– punctul arbitrar al planului. Să notăm prin R- distanta punctuala M din punct DESPRE, și prin φ – unghiul cu care fasciculul este rotit în sens invers acelor de ceasornic pentru a alinia axa polară cu fasciculul OM.

Coordonate polare puncte M numere de apel RȘi φ . Număr R este considerată prima coordonată și se numește raza polară, număr φ – se numește a doua coordonată unghi polar.

Punct M cu coordonate polare RȘi φ sunt desemnate după cum urmează: M(;φ). Să stabilim o legătură între coordonatele polare ale unui punct și coordonatele sale dreptunghiulare.
În acest caz, vom presupune că originea sistemului de coordonate dreptunghiular este la pol, iar axa semiabscisă pozitivă coincide cu axa polară.

Fie punctul M să aibă coordonate dreptunghiulare XȘi Yși coordonatele polare RȘi φ .

(1)

Dovada.

Aruncă din puncte M 1Și M 2 perpendiculare M 1 VȘi M 1 A,. deoarece (x 2 ; y 2). Prin teoremă, dacă M 1 (x 1)Și M 2 (x 2) sunt oricare două puncte și α este distanța dintre ele, atunci α = ‌‌‌‍‌‌|x 2 - x 1 | .


Distanța de la punct la punct este lungimea segmentului care leagă aceste puncte pe o scară dată. Astfel, atunci când vine vorba de măsurarea distanței, trebuie să cunoașteți scara (unitatea de lungime) în care vor fi făcute măsurătorile. Prin urmare, problema găsirii distanței de la punct la punct este de obicei considerată fie pe o dreaptă de coordonate, fie într-un sistem de coordonate carteziene dreptunghiulare pe un plan sau în spațiu tridimensional. Cu alte cuvinte, cel mai adesea trebuie să calculați distanța dintre puncte folosind coordonatele lor.

În acest articol, ne vom aminti mai întâi cum este determinată distanța de la un punct la altul pe o linie de coordonate. În continuare, obținem formule pentru calcularea distanței dintre două puncte ale unui plan sau spațiu în funcție de coordonatele date. În concluzie, vom analiza în detaliu soluțiile la exemplele și problemele tipice.

Navigare în pagină.

Distanța dintre două puncte de pe o linie de coordonate.

Să definim mai întâi notația. Vom nota distanța de la punctul A la punctul B ca .

De aici putem concluziona că distanta de la punctul A cu coordonata la punctul B cu coordonata este egala cu modulul diferentei de coordonate, acesta este, pentru orice locație a punctelor pe linia de coordonate.

Distanța de la punct la punct pe un plan, formulă.

Obținem o formulă de calcul a distanței dintre puncte și dată într-un sistem de coordonate carteziene dreptunghiulare pe un plan.

În funcție de locația punctelor A și B, sunt posibile următoarele opțiuni.

Dacă punctele A și B coincid, atunci distanța dintre ele este zero.

Dacă punctele A și B se află pe o dreaptă perpendiculară pe axa absciselor, atunci punctele coincid, iar distanța este egală cu distanța . În paragraful anterior, am aflat că distanța dintre două puncte de pe o linie de coordonate este egală cu modulul diferenței dintre coordonatele lor, prin urmare, . Prin urmare, .

În mod similar, dacă punctele A și B se află pe o dreaptă perpendiculară pe axa ordonatelor, atunci distanța de la punctul A la punctul B se găsește ca .

În acest caz, triunghiul ABC este dreptunghiular în construcție și Și . De teorema lui Pitagora putem nota egalitatea, de unde .

Să rezumam toate rezultatele obținute: distanța de la un punct la un punct dintr-un plan se găsește prin coordonatele punctelor folosind formula .

Formula rezultată pentru găsirea distanței dintre puncte poate fi utilizată atunci când punctele A și B coincid sau se află pe o dreaptă perpendiculară pe una dintre axele de coordonate. Într-adevăr, dacă A și B coincid, atunci . Dacă punctele A și B se află pe o dreaptă perpendiculară pe axa Ox, atunci. Dacă A și B se află pe o dreaptă perpendiculară pe axa Oy, atunci .

Distanța dintre punctele din spațiu, formulă.

Să introducem un sistem de coordonate dreptunghiular Oxyz în spațiu. Să obținem o formulă pentru a găsi distanța de la un punct până la punctul .

În general, punctele A și B nu se află într-un plan paralel cu unul dintre planurile de coordonate. Să desenăm prin punctele A și B plane perpendiculare pe axele de coordonate Ox, Oy și Oz. Punctele de intersecție ale acestor plane cu axele de coordonate ne vor oferi proiecții ale punctelor A și B pe aceste axe. Notăm proiecțiile .


Distanța necesară dintre punctele A și B este diagonala paralelipipedului dreptunghiular prezentat în figură. Prin construcție, dimensiunile acestui paralelipiped sunt egale Și . În cursul geometriei liceu S-a dovedit că pătratul diagonalei unui paralelipiped dreptunghic este egal cu suma pătratelor celor trei dimensiuni ale sale, prin urmare, . Pe baza informațiilor din prima secțiune a acestui articol, putem scrie următoarele egalități, prin urmare,

de unde o luăm formula pentru aflarea distantei dintre punctele din spatiu .

Această formulă este valabilă și dacă punctele A și B

  • se potrivesc;
  • aparțin uneia dintre axele de coordonate sau unei linii paralele cu una dintre axele de coordonate;
  • aparțin unuia dintre planurile de coordonate sau unui plan paralel cu unul dintre planurile de coordonate.

Găsirea distanței de la punct la punct, exemple și soluții.

Deci, am obținut formule pentru găsirea distanței dintre două puncte de pe o dreaptă de coordonate, plan și spațiu tridimensional. Este timpul să privim soluții pentru exemplele tipice.

Numărul de probleme în care pasul final este găsirea distanței dintre două puncte în funcție de coordonatele lor este cu adevărat enorm. Revizuire completă Astfel de exemple depășesc scopul acestui articol. Aici ne vom limita la exemple în care sunt cunoscute coordonatele a două puncte și este necesar să se calculeze distanța dintre ele.

Buna ziua,

PHP folosit:

Cu stimă, Alexandru.

Buna ziua,

Mă confrunt cu o problemă de ceva vreme: încerc să calculez distanța dintre două puncte arbitrare care sunt situate la o distanță de 30 până la 1500 de metri unul de celălalt.

PHP folosit:

$cx=31,319738; //x coordonata primului punct
$cy=60,901638; //y coordonata a primului punct

$x=31,333312; //x coordonata celui de-al doilea punct
$y=60,933981; //y coordonata celui de-al doilea punct

$mx=abs($cx-$x); //calculeaza diferenta in x (primul catet al unui triunghi dreptunghic), functia abs(x) - returneaza modulul numarului x x
$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.

","contentType":"text/html"),"propposedBody":("sursa":"

Buna ziua,

Mă confrunt cu o problemă de ceva vreme: încerc să calculez distanța dintre două puncte arbitrare care sunt situate la o distanță de 30 până la 1500 de metri unul de celălalt.

PHP folosit:

$cx=31,319738; //x coordonata primului punct
$cy=60,901638; //y coordonata a primului punct

$x=31,333312; //x coordonata celui de-al doilea punct
$y=60,933981; //y coordonata celui de-al doilea punct

$mx=abs($cx-$x); //calculeaza diferenta in x (primul catet al unui triunghi dreptunghic), functia abs(x) - returneaza modulul numarului x x
$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.

Buna ziua,

Mă confrunt cu o problemă de ceva vreme: încerc să calculez distanța dintre două puncte arbitrare care sunt situate la o distanță de 30 până la 1500 de metri unul de celălalt.

PHP folosit:

$cx=31,319738; //x coordonata primului punct
$cy=60,901638; //y coordonata a primului punct

$x=31,333312; //x coordonata celui de-al doilea punct
$y=60,933981; //y coordonata celui de-al doilea punct

$mx=abs($cx-$x); //calculeaza diferenta in x (primul catet al unui triunghi dreptunghic), functia abs(x) - returneaza modulul numarului x x
$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.

","contentType":"text/html"),"authorId":"108613929","slug":"15001","canEdit":false,"canComment":false,"isBanned":false,"canPublish" :false,"viewType":"old","isDraft":false,"isOnModeration":false,"isSubscriber":false,"commentsCount":14,"modificationDate":"Miercuri, 27 iunie 2012 20:07:00 GMT +0000 (UTC)","showPreview":true,"approvedPreview":("sursa":"

Buna ziua,

Mă confrunt cu o problemă de ceva vreme: încerc să calculez distanța dintre două puncte arbitrare care sunt situate la o distanță de 30 până la 1500 de metri unul de celălalt.

PHP folosit:

$cx=31,319738; //x coordonata primului punct
$cy=60,901638; //y coordonata a primului punct

$x=31,333312; //x coordonata celui de-al doilea punct
$y=60,933981; //y coordonata celui de-al doilea punct

$mx=abs($cx-$x); //calculeaza diferenta in x (primul catet al unui triunghi dreptunghic), functia abs(x) - returneaza modulul numarului x x
$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.

","html":"Bună ziua,","contentType":"text/html"),"proposedPreview":("sursa":"

Buna ziua,

Mă confrunt cu o problemă de ceva vreme: încerc să calculez distanța dintre două puncte arbitrare care sunt situate la o distanță de 30 până la 1500 de metri unul de celălalt.

PHP folosit:

$cx=31,319738; //x coordonata primului punct
$cy=60,901638; //y coordonata a primului punct

$x=31,333312; //x coordonata celui de-al doilea punct
$y=60,933981; //y coordonata celui de-al doilea punct

$mx=abs($cx-$x); //calculeaza diferenta in x (primul catet al unui triunghi dreptunghic), functia abs(x) - returneaza modulul numarului x x
$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.

","html":"Bună ziua,","contentType":"text/html"),"titleImage":null,"tags":[("displayName":"măsurarea distanței","slug":"izmerenie- rasstoyaniy","categoryId":"10615601","url":"/blog/mapsapi??tag=izmerenie-rasstoyaniy"),("displayName":"API 1.x","slug":"api-1 -x","categoryId":"150000131","url":"/blog/mapsapi??tag=api-1-x")],"isModerator":false,"commentsEnabled":true,"url": "/blog/mapsapi/15001","urlTemplate":"/blog/mapsapi/%slug%","fullBlogUrl":"https://yandex.ru/blog/mapsapi","addCommentUrl":"/blog/ createComment/mapsapi/15001","updateCommentUrl":"/blog/updateComment/mapsapi/15001","addCommentWithCaptcha":"/blog/createWithCaptcha/mapsapi/15001","changeCaptchaUrl":"/blog/api ","putImageUrl":"/blog/image/put","urlBlog":"/blog/mapsapi","urlEditPost":"/blog/56a98d48b15b79e31e0d54c8/edit","urlSlug":"/blog/post/generateSlug ","urlPublishPost":"/blog/56a98d48b15b79e31e0d54c8/publish","urlUnpublishPost":"/blog/56a98d48b15b79e31e0d54c8/unpublish","urlRemovePost":"/56b1/blog/56a98d48b15b79e31e0d54c8/unpublish","urlRemovePost":"/blog/56a98d48b/56b/56a98d48b removePost","urlDraft":"/blog/ mapsapi /15001/draft","urlDraftTemplate":"/blog/mapsapi/%slug%/draft","urlRemoveDraft":"/blog/56a98d48b15b79e31e0d54c8/removeDraft","urlTagTag/suggest/"apia"/suggest/"api" " ,"urlAfterDelete":"/blog/mapsapi","isAuthor":false,"subscribeUrl":"/blog/api/subscribe/56a98d48b15b79e31e0d54c8","unsubscribeUrl":"/blog/api/unsubscribed/494eb19cd","794eb198b/56a98d48b15b79e31e0d54c8" urlEditPost Pagina ":"/blog/mapsapi/56a98d48b15b79e31e0d54c8/edit","urlForTranslate":"/blog/post/translate","urlRelateIssue":"/blog/post/updateIssue","urlUpdateTranslate/post":"/blog /updateTranslate ","urlLoadTranslate":"/blog/post/loadTranslate","urlTranslationStatus":"/blog/mapsapi/15001/translationInfo","urlRelatedArticles":"/blog/api/relatedArticles/mapsapi/15001"," autor" :("id":"108613929","uid":("value":"108613929","lite":false,"hosted":false),"aliases":(),"login":" mrdds" ,"display_name":("nume":"mrdds","avatar":("implicit":"0/0-0","gol":true)),,"adresă":" [email protected]","defaultAvatar":"0/0-0","imageSrc":"https://avatars.mds.yandex.net/get-yapic/0/0-0/islands-middle","isYandexStaff": false),"originalModificationDate":"2012-06-27T16:07:49.000Z","socialImage":("orig":("fullPath":"https://avatars.mds.yandex.net/get-yablogs) /47421/file_1456488726678/orig")))))">

Determinarea distanței dintre două puncte NUMAI folosind coordonatele longlat.

$my=abs($cy-$y); //calculați diferența dintre jucători (al doilea picior al triunghiului dreptunghic)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Obțineți distanța până la metrou (lungimea ipotenuzei conform regulii, ipotenuza este egală cu rădăcina sumei pătratelor catetelor)

Dacă nu este clar, permiteți-mi să vă explic: îmi imaginez că distanța dintre două puncte este ipotenuza unui triunghi dreptunghic. Apoi diferența dintre X-urile fiecăruia dintre cele două puncte va fi unul dintre catete, iar celălalt picior va fi diferența dintre Y-urile acelorași două puncte. Apoi, calculând diferențele dintre X și Y, puteți utiliza formula pentru a calcula lungimea ipotenuzei (adică, distanța dintre două puncte).

Știu că această regulă funcționează bine pentru sistemul de coordonate carteziene, totuși, ar trebui să funcționeze mai mult sau mai puțin prin coordonatele longlat, deoarece distanța măsurată între două puncte este neglijabilă (de la 30 la 1500 de metri).

Cu toate acestea, distanța conform acestui algoritm este calculată incorect (de exemplu, distanța 1 calculată de acest algoritm depășește distanța 2 cu doar 13%, în timp ce în realitate distanța 1 este egală cu 1450 de metri, iar distanța 2 este egală cu 970 de metri, adică este, de fapt, diferența ajunge la aproape 50% ).

Daca cineva poate ajuta, as fi foarte recunoscator.

Cu stimă, Alexandru.