起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2628|回复: 4

[处理中] 求一个计算距离的代码。

[复制链接]

67

主题

198

帖子

725

积分

高级会员

Rank: 4

积分
725
QQ
发表于 2019-7-31 13:47:34 | 显示全部楼层 |阅读模式
当前位置用静态数据tableData表示,内容包括:当前位置、经度、维度。动态数据集restData中也包含经度、维度,距离。
求计算距离代码:计算当前位置(静态数据)到动态数据集各个数据间的距离并保存到restData的“距离”中。

谢谢!

10

主题

2831

帖子

3783

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3783
QQ
发表于 2019-8-7 17:10:34 | 显示全部楼层
可参考市场模板健身房健身模板中附近健身房页面。
需要发应用及正式服务器请在服务群里联系QQ:516367879。
回复 支持 反对

使用道具 举报

67

主题

198

帖子

725

积分

高级会员

Rank: 4

积分
725
QQ
 楼主| 发表于 2019-8-7 22:09:09 | 显示全部楼层
gaofan 发表于 2019-8-7 17:10
可参考市场模板健身房健身模板中附近健身房页面。

看过了,那个是用计算行,没有保存到数据集,想用更简便的方法。
回复 支持 反对

使用道具 举报

67

主题

198

帖子

725

积分

高级会员

Rank: 4

积分
725
QQ
 楼主| 发表于 2019-8-11 12:58:12 | 显示全部楼层
本帖最后由 大灰兔 于 2019-8-11 13:54 编辑
gaofan 发表于 2019-8-7 17:10
可参考市场模板健身房健身模板中附近健身房页面。

这个代码我找到了。

locationSuccess(event/*{{{*/=this._e.geolocation_success/*}}}*/){
        var data = this.comp("restData");
        var longitude = event.originalEvent.longitude;//经度
        var latitude = event.originalEvent.latitude;//纬度
        var self = this;
        data.each(function(item){
            self.comp("geoPositionInfo").getDistance({
                latitudeA : item.row.fweidu,
                longitudeA : item.row.fjingdu,
                latitudeB : latitude,
                longitudeB : longitude
            }).then(function(data){
                var distance = data.distance
                item.row.fjuli = distance;
                item.row.fjulidw=data.unit;
            })
        });
        data.saveAllData();
    }


回复 支持 反对

使用道具 举报

67

主题

198

帖子

725

积分

高级会员

Rank: 4

积分
725
QQ
 楼主| 发表于 2019-8-11 13:48:13 | 显示全部楼层
本帖最后由 大灰兔 于 2019-8-11 13:55 编辑

但是代码中位置信息组件的距离返回用getDistance表示的,我要返回原数据(单位米)怎么表示?因为这个距离的返回做了处理,大于1000米返回的是千米,小于1000米返回的是米,如果排序的话,造成500(米)比1(千米)大的错误。所以我要返回原数据(单位米)。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-9 11:05 , Processed in 0.109719 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表