相关疑难解决方法(0)

计算两个纬度 - 经度点之间的距离?(Haversine配方)

如何计算纬度和经度指定的两点之间的距离?

为了澄清,我想要以公里为单位的距离; 这些要点使用WGS84系统,我想了解可用方法的相对准确性.

algorithm math maps latitude-longitude haversine

852
推荐指数
19
解决办法
72万
查看次数

toRad()Javascript函数抛出错误

我正在尝试使用此处描述的技术计算两个点之间的距离(我有纬度和经度),计算两个纬度 - 经度点之间的距离?(Haversine配方)

代码如下Javascript:

var R = 6371; // Radius of the earth in km
var dLat = (lat2-lat1).toRad();  // Javascript functions in radians
var dLon = (lon2-lon1).toRad(); 
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
        Math.cos(lat1.toRad()) * Math.cos(lat2.toRad()) * 
        Math.sin(dLon/2) * Math.sin(dLon/2); 
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
var d = R * c; // Distance in km
Run Code Online (Sandbox Code Playgroud)

但是当我尝试实现它时,错误就出现了Uncaught TypeError: Object 20 has no Method 'toRad'.

我需要一个特殊的库或什么来获得.toRad()工作吗?因为它似乎搞砸了第二行.

javascript geolocation

60
推荐指数
3
解决办法
6万
查看次数

按用户位置距 firebase 的距离对数组进行排序

无法弄清楚如何对用户附近的地址进行自动排序。我不明白从哪里开始以及如何编写代码。

\n\n

我的firebase中有地址。地址的类型为字符串(不是纬度/经度)。例子:

\n\n
"\xd0\x9c\xd0\xbe\xd1\x81\xd0\xba\xd0\xb2\xd0\xb0, \xd0\xad\xd0\xbb\xd0\xb5\xd0\xba\xd1\x82\xd1\x80\xd0\xbe\xd0\xb7\xd0\xb0\xd0\xb2\xd0\xbe\xd0\xb4\xd1\x81\xd0\xba\xd0\xb0\xd1\x8f, 21"\n"\xd0\x9c\xd0\xbe\xd1\x81\xd0\xba\xd0\xb2\xd0\xb0, \xd0\x90\xd1\x80\xd0\xb1\xd0\xb0\xd1\x82, \xd0\xa1\xd1\x82\xd0\xb0\xd1\x80\xd0\xbe\xd0\xba\xd0\xbe\xd0\xbd\xd1\x8e\xd1\x88\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 \xd0\xbf\xd0\xb5\xd1\x80\xd0\xb5\xd1\x83\xd0\xbb\xd0\xbe\xd0\xba, \xd0\xb4\xd0\xbe\xd0\xbc 43"\n"\xd0\x9c\xd0\xbe\xd1\x81\xd0\xba\xd0\xb2\xd0\xb0, \xd1\x83\xd0\xbb\xd0\xb8\xd1\x86\xd0\xb0 1-\xd1\x8f \xd0\x91\xd1\x83\xd1\x85\xd0\xb2\xd0\xbe\xd1\x81\xd1\x82\xd0\xbe\xd0\xb2\xd0\xb0, \xd0\xb4\xd0\xbe\xd0\xbc 12/11, \xd0\xba\xd0\xbe\xd1\x80\xd0\xbf\xd1\x83\xd1\x81 53"\n
Run Code Online (Sandbox Code Playgroud)\n\n

我知道什么需要使用firebase 的查询,但是如何使用查询,我现在不明白。

\n\n

这是我的代码:

\n\n
class PhotoStudiosViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, UIScrollViewDelegate {\n\n    @IBOutlet weak var tableView: UITableView!\n\n    var theStudios: [Studio] = []\n\n    var studiosRef: DatabaseReference!\n\n    override func viewWillAppear(_ animated: Bool) {\n        super.viewWillAppear(true)\n\n        tableView.estimatedRowHeight = 475\n        tableView.rowHeight = UITableViewAutomaticDimension\n\n        loadDataFromFirebase()\n\n    }\n\n    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {\n\n        return theStudios.count\n    }\n\n    func …
Run Code Online (Sandbox Code Playgroud)

userlocation ios firebase swift firebase-realtime-database

2
推荐指数
1
解决办法
2632
查看次数

firebase可以在接收数据时自动重新排序数据吗?

这是场景:

1)我有一个移动应用程序,它有两个数据点:位置和主题标题.

2)我将这两点发送给firebase.

3)从具有不同位置和不同主题的各种设备发送许多点.

4)移动设备然后请求特定位置的主题标题列表.

我的问题是:在将集合返回给调用者之前,firebase可以在数据库中按字母顺序自动重新排序这些主题标题吗?

从本质上讲,我不希望移动设备重新排序任何内容,只是直接从数据集中显示数据.

我想这必须在服务器端用javascript代码完成,我不清楚它是如何在firebase中完成的.

提前致谢

firebase

0
推荐指数
1
解决办法
764
查看次数