前端:
后端:
def add_to_closest_cluster(self, marker): distance = float('inf') # Some large number cluster_to_add_to = None pos = marker.get_latlng() for cluster in self.clusters: center = cluster.get_center() if center: d = get_distance(center.lat, center.lng, pos.lat, pos.lng) if d < distance: distance = d cluster_to_add_to = cluster if cluster_to_add_to and cluster_to_add_to.overlaps(marker): #print 'in bounds' cluster_to_add_to.add_marker(marker) else: #print 'new cluster' cluster = Cluster(self) cluster.add_marker(marker) self.clusters.append(cluster)
感谢伟大的 github,这个问题算是有解的:无 API、纠偏数据库的依赖,精度可设置火星坐标 <-> GPS 坐标(二分法解决不可逆)https://github.com/googollee/eviltransform百度坐标 <-> 火星坐标(可逆加密算法)http://blog.csdn.net/coolypf/article/details/8569813