Tôi đang làm việc với ngăn xếp ESRI, lưu trữ các lớp của mình trong cơ sở dữ liệu địa lý sql-spatial-enable-SDE- geodatabase (Kiểu hình học, Web Mercator-3857).
Tôi đang xây dựng một ứng dụng bản đồ web, do đó, theo mặc định, các ô cũng nằm trong trình duyệt web, 3857.
Thông qua các procs được lưu trữ, tôi sử dụng STDistance để truy vấn khoảng cách từ vị trí của người dùng (Tọa độ cũng trong trình duyệt web) đến các lớp khác nhau.
Vấn đề là, do sự biến dạng của trình duyệt web, các khoảng cách của tôi ngày càng tắt, càng xa khỏi đường xích đạo mà chúng được tạo ra.
Tôi đã nghĩ đến việc lưu trữ các lớp của mình theo kiểu địa lý không gian (chứ không phải hình học), nhưng:
- Tôi tưởng tượng các truy vấn khoảng cách của tôi sẽ mất nhiều thời gian hơn (khoảng cách calcs trên bề mặt hình cầu)
- tôi sẽ cần nhập lại rất nhiều dữ liệu
- dịch vụ arcgis sẽ không nhanh như họ sẽ cần phải dự án nhanh chóng
Nếu tôi truy cập Google maps và thực hiện một khoảng cách calc, khoảng cách được trả về sẽ chính xác hơn nhiều, ngay cả ở các khu vực phía Bắc / Nam, vì vậy tôi cho rằng Google phải sửa lỗi cho sự biến dạng gây ra bởi phép chiếu của trình duyệt web.
Câu hỏi của tôi sau đó: Có một giá trị yếu tố đơn giản nào có thể được áp dụng cho các khoảng cách được thực hiện trong phép chiếu web mercator để có được khoảng cách "chính xác" không?
cos((l1 + l2)/2)
sẽ cung cấp cho bạn khoảng cách khóa hình thoi / không đổi, thay vì khoảng cách vòng tròn lớn.