换了新公司,接触新行业,半路出家,看着别人的代码,看着api慢慢理解。

需求如下;已知两点坐标求距离。

思路,没有,站在同事的肩膀上踩路子,给的这个链接 https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#distance

综合看完,基本调用如下:

new GeometryService(url).distance(new DistanceParameters(distanceUnit,geodesic,geometry1,geometry2),function(){})

注意:这个是基于地图的,地图一定得打开;geometry1 看是在哪种多边形下,两点的距离 是在 esri/geometry/Point 模块下的;创建方法为

getTwoPointDis(x1,y1,x2,y2,cb)  //传入点参数

function getTwoPointDis(x1,y1,x2,y2,cb){
  var p1,p2;
  map.task.getNewPoint(x1,y1,function(e){
    p1 = e
  });
  map.task.getNewPoint(x2,y2,function(e){
    p2 = e
  });
  var dd = new DistanceParam();
  dd.geometry1 = p1;
  dd.geometry2 = p2;
  map.task.geometryService(dd, function(e){
    var e = e.toFixed(3);
    cb(e)
  });
}

geometryService:(dd,successCallBack,errorCallBack){  //计算距离参数

  var distanceParameters = new DistanceParameters();
  distanceParameters.geometry1 = param.geometry1;
  distanceParameters.geometry2 = param.geometry2;
  distanceParameters.geodesic = param.geodesic;
  distanceParameters.distanceUnit = param.distanceUnit;
  geoService.distance(distanceParameters, successCallBack, errorCallBack);

}

 

getNewPoint:function(x,y,successCallBack){  //初始化点
  var p1 = new esri.geometry.Point();
  p1.x = x;
  p1.y = y;
  p1.spatialReference = this._impl._map.spatialReference;
  successCallBack(p1)
}

 
 

arcgis for js 之 获取两点之间的距离的更多相关文章

  1. JAVA通过经纬度获取两点之间的距离

    private static double EARTH_RADIUS = 6378.137; private static double rad(double d) { return d * Math ...

  2. sql server2008根据经纬度计算两点之间的距离

    --通过经纬度计算两点之间的距离 create FUNCTION [dbo].[fnGetDistanceNew] --LatBegin 开始经度 --LngBegin 开始维度 --29.49029 ...

  3. 2D和3D空间中计算两点之间的距离

    自己在做游戏的忘记了Unity帮我们提供计算两点之间的距离,在百度搜索了下. 原来有一个公式自己就写了一个方法O(∩_∩)O~,到僵尸到达某一个点之后就向另一个奔跑过去 /// <summary ...

  4. js通过经纬度计算两点之间的距离

    最近这几天在做地图的时候,获取到目的地经纬度和当前所在位置的经纬度,通过这几个参数,用js代码就能获取到这两点之间的直线距离: function (lat1, lng1, lat2, lng2) { ...

  5. 利用JS实现的根据经纬度计算地球上两点之间的距离

      最近用到了根据经纬度计算地球表面两点间距离的公式,然后就用JS实现了一下. 计算地球表面两点间的距离大概有两种办法. 第一种是默认地球是一个光滑的球面,然后计算任意两点间的距离,这个距离叫做大圆距 ...

  6. 武汉科技大学ACM :1006: 零起点学算法25——求两点之间的距离

    Problem Description 输入平面坐标系中2点的坐标,输出它们之间的距离 Input 输入4个浮点数x1 y1 x2 y2,分别是点(x1,y1) (x2,y2)的坐标(多组数据) Ou ...

  7. JS如何使用Math.atan2获取两点之间角度的实践案例

    本文主要介绍使用如何实现手动拖拽旋转元素的效果. 1.简述 最近在研究如何实现手动控制元素的旋转效果,在网上找了很多,都没有找出类似的实现,因此经过一些调研和计算,最终完美实现效果,在这里记录下来. ...

  8. 微信小程序两点之间的距离

    1:申请key: https://lbs.qq.com/dev/console/application/mine 网址: https://note.youdao.com/ynoteshare/inde ...

  9. Arcgis for Js之GeometryService实现測量距离和面积

    距离和面积的測量时GIS常见的功能.在本节,讲述的是通过GeometryService实现測量面积和距离.先看看实现后的效果: watermark/2/text/aHR0cDovL2Jsb2cuY3N ...

随机推荐

  1. __x__(48)0910第六天__CSS Hack

    CSS Hack: 不到万不得已,不要使用.不易于维护. 有一些情况,需要一段特殊代码在遇到特殊浏览器环境才执行,而在其他条件下,不执行. 此时,CSS Hack 就能实现. CSS Hack 实际上 ...

  2. Hadoop-2.9.2单机版安装(伪分布式模式)(一)

    一.环境 硬件:虚拟机VMware.win7 操作系统:Centos-7 64位 主机名: hadoopServerOne 安装用户:root软件:jdk1.8.0_181.Hadoop-2.9.2 ...

  3. Oracle 触发器 trigger

    触发器: 当用户登录/退出或者操作某个数据对象或者进行DDL(建表,建view)引起某个储存过程的值的变化,把这个隐含被调用的过程,称为触发器. 语法 CREATE OR REPLACE TRIGGE ...

  4. Windows中使用ssh利用公钥登入远程服务器

      方式:使用 Winscp 密钥登录   我们平时开发多会使用 ftp 来上传下载文件,尤其是很多 Linux 环境下.   其实 Linux 默认是不提供 ftp 的,需要你额外安装 FTP 服务 ...

  5. thinkphp框架,数据动态缓存后,或数据已读取出来,想分页怎么办

    //读取缓存后赋值到数组,通过array_slice函数处理,如: $blog = S('blogname'); //赋值 $count = count($blog); //条数统计 $page = ...

  6. jenkins测试配置

  7. 安装Office2010出现MSXML版本6.10.1129.0错误

      在键盘上按“win+R”组合键出现图图示界面后,输入“regsvr32 /u msxml6.dll”,点击“确定”. 出现图示显示后,点击“确定”,并同时去试试office是否能够安装了. 如果上 ...

  8. SQL 约束 索引

    --约束constraint--not null 非空约束create table demo01(empno number(4),ename varchar2(10) not null,job var ...

  9. 更为复杂C程序的运行时结构

    运行环境 win 10 企业版 1809 17763.194,MinGW V3.14 32位,Bundled V3.13.2,Bundled GDB V8.2. 在C语言中,栈的方向是从高地址向低地址 ...

  10. 虚拟机下hadoop1.1.2安装(单机版)与(集群版)

    (1)我的电脑环境 CentOS6.5,64位,在虚拟机下实现. (2)jdk1.6的安装 jdk我用的是1.6.0_27,自己在网上下载jdk-6u27-linux-x64.zip 先在/usr/l ...