C# mysql Harta cu rază de 75 mile care acoperă întreaga SUA (Programare, Mysql, Geospațial)

user222427 a intrebat.
a intrebat.

Am o bază de date plină de coduri poștale și lat / long. Ceea ce vreau să fac este să pot acoperi întreaga SUA în cercuri cu raza de 75 mile cu o suprapunere cât mai mică posibil. Vreun indiciu sau sfaturi? Intențiile mele sunt să acopăr întreaga SUA în cercuri de 75 mile cu o suprapunere cât mai mică posibil, în esență vreau să știu toate codurile poștale care sunt la 150 de mile unul de celălalt începând din mijlocul țării spre coaste.

Ceea ce încerc să spun este că trebuie să mă asigur că cercurile de 75 de mile acoperă întreaga SUA, în esență că nu pot rata niciun cod poștal. Deci, dacă am început în Kansas și m-am mutat în afara, aș avea cercuri de 75 de mile suprapuse poate în intervale de 10 mile până când toate SUA sunt acoperite.

Un fel de hartă ca aceasta http://modernsurvivalblog.com/pictures/usa-survival-location-map-300-mile-zones-not-safe-with-population-more-than-100-thousand-1433×975.jpg

Cu toate acestea, harta respectivă are raze în jurul a 100 000 de locuitori. Vreau să încep de la o anumită latură/lungime și să acopăr întreaga SUA.

Comentarii

  • Începeți cu formula Haversine pentru calcularea distanțelor. –  > Por Joe Stefanelli.
  • Este aceasta o problemă de temă pentru acasă de la facultate? Nu mă deranjează dacă este sau nu, doar că mi se pare un lucru total bizar să vrei să faci! –  > Por Tom Chantler.
  • Nu văd relevanța bazei de date cu coduri poștale lat/lon pentru dorința ta de a acoperi întreaga SUA cu cercuri cu raza de 75 de mile, cu o suprapunere cât mai mică posibil. Poate că nu v-ați descris intențiile suficient de clar. De exemplu, vreți să vă asigurați că fiecare zonă metropolitană majoră este punctul central al unui astfel de cerc? Pentru fiecare cod poștal, doriți să obțineți o listă cu toate celelalte coduri poștale ale căror centroide se află la o distanță de 75 de mile de centroidul codului poștal de pornire? Asta ar cauza suprapunerea. –  > Por Tim.
  • Nu, intenția mea este să acopăr întreaga SUA în cercuri de 75 de mile cu o suprapunere cât mai mică posibil, în esență, vreau să știu toate codurile poștale care se află la 150 de mile unul de celălalt, începând din mijlocul țării spre coastă, fără a obține niciun cod poștal între aceste puncte – user222427
  • @Mike: aveți o pereche lat/lon pentru centroidul codului poștal sau mai multe perechi lat/lon pentru conturul codului poștal? Codurile poștale au forme neregulate. Doriți să cunoașteți toate codurile poștale ale căror limite se află complet în interiorul cercului? Parțial în interiorul cercului? Codurile poștale ale căror centroizi se află în interiorul cercului? „Acele puncte” – ce „puncte”? Trebuie să vă alegeți cu grijă termenii atunci când discutați despre chestii geospațiale. –  > Por Tim.
1 răspunsuri
Bueller

Din capul meu, poți încerca să suprapui harta cu o grilă pătrată, fiecare pătrat din grilă fiind de 106 mile pe 106 mile. Apoi creați cercurile bazate pe centrul pătratului de grilă cu raza de 75 mile, care ar trebui să fie foarte aproape de vârfurile pătratului care intersectează perimetrul cercului. Nu știu dacă astfel veți obține o suprapunere minimă absolută, dar este un punct de plecare care asigură o acoperire de 100% a zonei.