2012-05-11 42 views
9

Có bất kỳ gói nào trong Python cho phép một trong các hoạt động giống như kdtree cho kinh độ/vĩ độ trên bề mặt của hình cầu không? (điều này sẽ cần phải đưa vào tài khoản khoảng cách hình cầu đúng cách, cũng như các wraparound trong kinh độ).KDTree cho kinh độ/vĩ độ

Trả lời

6

Cây tìm kiếm nhị phân không thể xử lý bao bọc của biểu diễn cực theo thiết kế. Bạn có thể cần chuyển đổi tọa độ sang không gian 3D cartesian và sau đó áp dụng thuật toán tìm kiếm ưa thích của bạn, ví dụ: kD-Tree, Octree, v.v.

Hoặc, nếu bạn có thể giới hạn phạm vi đầu vào của tọa độ thành một vùng nhỏ trên bề mặt, bạn có thể áp dụng phép chiếu bản đồ thích hợp cho khu vực này, tức là một bản đồ không làm biến dạng hình dạng của khu vực của bạn quá nhiều và áp dụng cây tìm kiếm nhị phân chuẩn trên các tọa độ bản đồ quanh co này.

+1

Chuyển đổi sang không gian cartesian 3 chiều là cách để đi - cảm ơn! – astrofrog

Các vấn đề liên quan