Có thể với thư viện C# hoặc cơ sở dữ liệu cập nhật về các toạ độ địa lý để lấy tên quốc gia từ vĩ độ và kinh độ Không có API như API JavaScript của Google Maps?C# - Lấy Quốc gia từ vĩ độ/kinh độ mà không có API
Trả lời
Bạn có thể làm điều đó. Nếu bạn không cần nhiều chính xác, bạn có thể sử dụng bảng có tọa độ của các quốc gia. Và xác định tọa độ quốc gia gần nhất. Nhưng đó là cách xấu.
Giải pháp tốt là bạn nhận được tệp KML của biên giới quốc gia. Nhưng bạn sẽ cần thuật toán tốt để khám phá trong biên giới của quốc gia mà bạn quan tâm. Thuật toán tìm posiiton của điểm và đa giác được mô tả here. Ngoài ra còn có một số câu trả lời trên stackoverflow 1, 2, nhưng nó dành cho máy bay. Cũng có thể là để tính toán trước các quốc gia cho các tọa độ với một số bước nhỏ (ví dụ: 30 '') và xác định coutry bằng cách tìm điểm được tính toán gần nhất cho điểm của bạn. Bạn có thể tính toán trước quốc gia với rất nhiều dịch vụ trực tuyến.
Bạn có thể sử dụng GeoNames và tải xuống cơ sở dữ liệu cục bộ here.
Và vì vậy, đây là truy vấn mẫu mà bạn có thể sử dụng để lấy mục nhập gần nhất từ tọa độ vĩ độ/dài.
var query = new SQLiteCommand("select name,latitude,longitude,country_code,feature_code from geoloc order by ((latitude - @lat) * (latitude - @lat) + (longitude - @lng) * (longitude - @lng)) LIMIT 1, cn);
Nếu tôi hiểu rõ, cơ sở dữ liệu là dữ liệu về các thành phố có tọa độ và quốc gia của chúng. Tôi chỉ cần tính toán thành phố gần nhất từ quan điểm của tôi (vĩ độ, kinh độ) và kiểm tra quốc gia? Theo fryday, nó không phải là giải pháp tốt nhất. Ví dụ: – k4st0r42
@ k4st0r42, cách tiếp cận như vậy sẽ không tốt trong các ocens. Tốt hơn là sử dụng cách tiếp cận với biên giới quốc gia. – fryday
@ k4st0r42. Tôi đã cập nhật câu trả lời của mình bằng một truy vấn mẫu để lấy mục nhập gần nhất từ một tọa độ vĩ độ/dài. – sborfedor
tôi đã tạo ra một dự án github rằng sẽ nhận được quốc gia hoặc bang Mỹ dựa trên điểm gps (lat; lon) thấy here
nếu tìm thấy, sẽ trả về một lớp locationInfo với Id và Tên
cũng có sẵn dưới dạng nuget package
- 1. Vĩ độ/Kinh độ cho đường biên giới quốc gia
- 2. Lấy quốc gia từ tọa độ?
- 3. Lấy vĩ độ và kinh độ từ địa chỉ mà không cần sử dụng Google API
- 4. Google maps - lấy tên quốc gia, vùng và thành phố từ kinh độ và vĩ độ (PHP)
- 5. Lấy tên quốc gia từ mã quốc gia
- 6. Cách lấy tên quốc gia
- 7. google maps api có được quốc gia và thành phố
- 8. Mã quốc gia lấy từ số điện thoại [libphonenumber]
- 9. Lấy danh sách các quốc gia theo quốc gia đã chọn
- 10. Tên quốc gia cho tọa độ GPS
- 11. Cần danh sách tất cả các quốc gia trên thế giới, với tọa độ kinh độ và vĩ độ
- 12. Quốc gia tìm kiếm tọa độ GPS mà không cần truy cập Internet
- 13. Làm cách nào để có được tọa độ kinh độ và vĩ độ từ tên thành phố và quốc gia trong R?
- 14. Cách nhận ngôn ngữ mà không có quốc gia từ CultureInfo
- 15. Tìm quốc gia của kênh trong youtube api v3
- 16. Nhận Kinh độ Vĩ độ từ một địa chỉ C#
- 17. Lấy định dạng đơn vị tiền tệ cho quốc gia không có hằng số Locale
- 18. Lấy quốc gia cho một java nhất định TimeZone
- 19. Cách lấy vĩ độ và kinh độ qua API Google Maps?
- 20. lấy vĩ độ và kinh độ hiện tại từ thiết bị hỗ trợ GPS
- 21. Có cách đơn giản để lấy mã ngôn ngữ từ mã quốc gia trong PHP
- 22. IOS: mã quốc gia
- 23. jvectormap thiếu quốc gia
- 24. Mã bưu chính Mã địa lý API Google Maps và đặt Mã quốc gia?
- 25. Lấy mã đơn vị tiền tệ của một quốc gia
- 26. Get Tên quốc gia/khu vực từ windows phone 8
- 27. Làm thế nào tôi có thể lấy tên thành phố từ một vĩ độ và kinh độ?
- 28. Iphone, Lấy danh sách các quốc gia trong NSArray
- 29. IP tới quốc gia không có cơ sở dữ liệu
- 30. Làm cách nào để lấy mã điện thoại quốc gia cho tên quốc gia cụ thể trong Swift iOS?
Bạn cần bao nhiêu độ chính xác? – fryday
Pure C#? bạn không thể. Có thể trùng lặp [cách lấy tên quốc gia từ vĩ độ và kinh độ] (http://stackoverflow.com/questions/25866020/how-to-get-country-name-from-latitude-and-longitude) – MaYaN
@ MaYaN, có thể với cơ sở dữ liệu tốt và thuật toán thông minh. – fryday