Openlayers3 计算地图上任意两点间的距离

对应的openlayers的版本为3.7.
主要用的接口是ol.Sphere.haversineDistance([x1,y1],[x2,y2]);
4326坐标系中计算两点距离的方式为:
var wgs84Sphere = new ol.Sphere(6378137);
wgs84Sphere.haversineDistance(C1,C2);
示例为:
var wgs84Sphere = new ol.Sphere(6378137);
wgs84Sphere.haversineDistance([120.21592590991689, 30.210793016606],[120.21670777384473, 30.211168525868086]);

时间: 2024-09-19 23:55:47

Openlayers3 计算地图上任意两点间的距离的相关文章

基于pgrouting的任意两点间的最短路径查询函数二

    在前面的博文中写过一篇查询任意两点间最短路径的函数,当时对pgrouting不熟悉,功能很low.现在对该函数进行扩展,支持用户自己输入查询的数据库表,这一点看似简单,其实意义很大,在做室内导航的时候当用户所在的楼层变化的时候最短路径函数查询的数据表名称也会发生变化,不可能一栋大楼里的道路都是一样的吧,另外进行跨楼层的最短路径规划时,需要查询从A到楼梯口的最短路径和楼梯口到B的最短路径,这些都需要进行最短路径规划的时候能够自己选择数据表.     先解释一下最短路径规划的处理步骤,首先要

基于pgrouting的任意两点间的最短路径查询函数

    前面文章介绍了如何利用postgresql创建空间数据库,建立空间索引和进行路径规划.但是在真实的场景中用户进行路径规划的时候都是基于经纬度数据进行路径规划的,因为用户根本不会知道道路上节点的ID.因此文本讲述如何查询任意两点间的最短路径.     一.定义函数名及函数参数         函数名定义为: pgr_fromAtoB         参数设置分别为:                  输入为数据库表名,起点和终点的经纬度坐标                  输出为:路段序

flex中Away3D计算两点间的距离、两点间的中点例子

在Away3D开发中,有时需要计算两个点(Vector3D )之间的距离或者中点.假设有如下v1.v2两个坐标点. 1,两点间的距离(线段长度) var v1:Vector3D = new Vector3D(0,0,0); var v2:Vector3D = new Vector3D(200,200,200); var lenght:Number =  v1.subtract(v2).length;  //346.41016151377545 2,两点间的中点(线段中点) var v1:Vect

HDOJ 2001 计算两点间的距离

Problem Description 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离. Input 输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开. Output 对于每组输入数据,输出一行,结果保留两位小数. Sample Input 0 0 0 1 0 1 1 0 Sample Output 1.00 1.41 import java.util.*; class Main{ public static void main(

请牛人指点,如何以最优的算法,对两点间的距离进行排序。

问题描述 业务要求:根据APP当前位置,取得距离最近的10条记录,再次刷新时,取得后10条最近的数据...我考虑的思路:■思路1:查询出数据库中所有的数据,根据两点的经度和纬度计算得到距离.再按照距离排序.缺点是,如果数据库有100万条数据,每次取出来,效率会很慢.■思路2:SQL查询语句中,取得两点间,经度和纬度差值的绝对值,以从小到大排序,取得前10条即可.这样查出来的数据量就比较小了.正确的思路到底是什么呢,不知道别人的APP距离排序怎么个算法.★Java算法是什么呢??★APP客户端传递

HDOJ/HDU 2547 无剑无我(两点间的距离)

Problem Description 北宋末年,奸臣当道,宦官掌权,外侮日亟,辽军再犯.时下战火连连,烽烟四起,哀鸿遍野,民不聊生,又有众多能人异士群起而反,天下志士云集响应,景粮影从. 值此危急存亡之秋,在一个与世隔绝的地方-MCA山上一位江湖人称<英雄哪里出来>的人正在为抗击辽贼研究剑法,终于于一雷电交加之夜精确计算出了荡剑回锋的剑气伤害公式. 定义 f(x, y, m, n) = sqrt(x*x + y*y + m*m + n*n - 2*m*x - 2*n*y); hint : s

jpg图像上任意两点的行列号要怎么求?

问题描述 打开一幅jpg图像,任意生成两点并得出这两点的行列号要怎么写代码呢? 解决方案 解决方案二:getpixel(x,y)解决方案三:同意楼上getpixel(col,row);解决方案四:可以说一下具体怎么实现嘛,本人是超级菜鸟一只引用1楼feixuyue的回复: getpixel(x,y) 解决方案五:有没有具体的例子呢?谢谢引用2楼xinen8721的回复: 同意楼上getpixel(col,row); 解决方案六:引用3楼bbbbkimi的回复: 可以说一下具体怎么实现嘛,本人是超

openlayers3 在地图上叠加WFS查询矢量图层

随着终端设备计算能力的加强,用户在使用地图的时候也需要越来越多的交互效果.比如现在很火的室内导航,为了获得好的用户体验,就需要当用户单击某一商店的时候该商店的颜色能相应的变化,这就需要叠加矢量图层.如何能在瓦片地图之上叠加矢量图层呢,这个就需要用到WFS查询. 我的思路是:基于WFS查询把得到需要矢量显示的图层中数据,然后再显示.具体思路为: 1.通过geoserver的WFS服务查询所需要矢量显示的数据信息 2.设置矢量数据的显示样式 3.openlayers添加矢量图层 4.设置鼠标移上去的

初学者遭遇离奇错误——求两点间的距离(C++)

有学生向我求助,他编了一个程序,设计一个"点"类,求出两点距离的程序.程序看着没有问题,却出了一大堆的错误.程序如下: #include <iostream> #include <math.h> using namespace std; class point { public: double x; double y; }; double distance(point p1,point p2); int main() { point p1= {3,5},p2=