WGS-gì? WGS-84? Tùy thuộc vào độ chính xác bạn cần, bạn có thể cần biết thêm nhiều thông tin - tôi đoán đó là lý do tại sao bạn bị bỏ phiếu, mặc dù không ai bận tâm để lại nhận xét cho biết lý do.
Đây là hai cách:
Không chính xác, nhưng có lẽ 'đủ tốt'
Một độ vĩ độ xấp xỉ 10001.965729 / 90 km (khoảng cách từ đường xích đạo đến cực, chia cho chín mươi độ) hoặc 111.113 km, sử dụng mốc thời gian WGS-84. Đây là một xấp xỉ vì hình dạng của trái đất và bởi vì khoảng cách thay đổi khi bạn tiếp cận các cực (một lý do để sử dụng vĩ độ, không phải kinh độ - cuối cùng khoảng cách của một độ kinh độ bằng không!) Trái đất cũng không hoàn hảo quả cầu. Cả hai đều là lý do để sử dụng một cách tiếp cận dựa trên phép chiếu và dữ liệu phức tạp hơn, trong câu trả lời thứ hai của tôi.
10001.965729km = 90 degrees
1km = 90/10001.965729 degrees = 0.0089982311916 degrees
10km = 0.089982311915998 degrees
Đây là sử dụng độ thập phân, không phải độ / phút / giây.
Vì vậy, hộp giới hạn của bạn sẽ là điểm của bạn, cộng và trừ 0,08999 độ. Ngoài ra, bạn có thể sử dụng số này làm bán kính, cung cấp cho bạn một vòng tròn giới hạn .
Bất kỳ người GIS nào đọc nó cũng sẽ rùng mình. Nó sẽ chủ yếu là chính xác, mặc dù, tùy thuộc vào nơi bạn ở trên thế giới. Đối với bán kính 10km thì sẽ ổn thôi.
Chính xác hơn nhiều, nhưng nhiều mã hơn
Sử dụng một thư viện chiếu và chỉ định mốc thời gian của bạn, v.v. Tôi khuyên dùng Proj4; nó được sử dụng rộng rãi để Google trả về hàng đống kết quả cho các câu hỏi về nó và có các hàm bao Delphi . Nếu bạn gặp khó khăn khi sử dụng nó, hãy đăng một câu hỏi khác ở đây trên SO - nó nằm ngoài phạm vi của câu hỏi này. Trang web Proj4 có các ví dụ sử dụng các API cơ bản và mặc dù chúng có trong C nhưng nó khá dễ dịch. Tham chiếu API của họ là nơi tốt nhất để bắt đầu, tiếp theo là Câu hỏi thường gặp .
Tôi sẽ sử dụng WGS-84 làm mốc chuẩn cơ bản (đại diện cho trái đất) trừ khi bạn biết một loại cụ thể mà bạn muốn sử dụng hoặc được sử dụng để tạo tọa độ của bạn. Nó thường được sử dụng và khá chính xác.
Nếu vị trí của bạn đến từ Google Maps (ví dụ), hãy chỉ định phép chiếu Mercator. Bạn có thể muốn sử dụng một phép chiếu khác hoặc sử dụng tọa độ UTMthay vì vĩ độ và kinh độ, tùy thuộc vào nguồn dữ liệu của bạn và nếu bạn muốn độ chính xác cao cho một khu vực địa phương nhỏ. (UTM có nhiều vùng, tất cả đều thay đổi biến dạng sao cho trong vùng đó, nó rất chính xác; nếu bạn sử dụng một vùng cho tọa độ bên ngoài nó, độ méo sẽ tăng lên rất nhiều khi bạn di chuyển ra xa. khu vực, nó có thể không được nhận dạng. Nhưng trong một khu vực, các bản dịch UTM sẽ tốt như bạn có thể nhận được. Các tọa độ thường được chỉ định bằng mét, không phải bằng độ, vì vậy nó có thể hữu ích hơn cho bạn, vì bạn cần 10km bán kính 10km dễ dàng trong một vùng duy nhất, bạn chỉ cần chọn vùng thích hợp dựa trên tọa độ trung tâm của mình. Điều khó khăn duy nhất là khi bạn tiếp cận một đường viền: đó là một tình huống phổ biến, và nó vẫn ổn, chỉ cần lànhất quán trong cách bạn chọn cái nào bạn sử dụng . Proj4 cũng sẽ cho phép bạn dịch các phép chiếu, do đó bạn có thể đi từ Mercator WGS-84 lat / long sang vùng UTM n , ví dụ, hoặc đến và từ hai vùng UTM.)