地图相关

        //地图相关demo
mapFun: function () {
//获取地图中心点
let center = this.mapView.center;
//地图中心点坐标(同地图坐标系)
let x = center.x;
let y = center.y;
//地图中心点坐标(经纬度坐标系)
//PS:此经纬度坐标是地图自动投影转换而来,因为不一定准确(投影转换不一定准)
let longitude = center.longitude;
let latitude = center.latitude; //设置地图中心点
this.mapView.center = [113.5411, 22.2399]; //获取地图缩放级别
let zoom = this.mapView.zoom;
//设置地图缩放级别
this.mapView.zoom = 12; //获取地图比例尺
let scale = this.mapView.scale;
//设置地图比例尺
this.mapView.scale = 5000; //获取地图范围
let extent = this.mapView.extent;
//地图范围坐标
let xmax = extent.xmax;
let xmin = extent.xmin;
let ymax = extent.ymax;
let ymin = extent.ymin;
//地图范围宽高(注意此宽高是地图单位,而不是屏幕像素)
let width = extent.width;
let height = extent.height; //设置地图范围
this.mapView.extent = new this.apiInstance.Extent({
xmin: -9177882,
ymin: 4246761,
xmax: -9176720,
ymax: 4247967,
spatialReference: {
wkid: 102100
}
}); //屏幕坐标转地图坐标
//PS:参数1类型是ScreenPoint
let mapPoint1 = this.mapView.toMap(new this.apiInstance.ScreenPoint(10, 10)); //地图坐标转屏幕坐标
let screenPoint1 = this.mapView.toScreen(mapPoint1);
},

地图点击事件,同时图形(graphic)点击在此实现

                    //mapView绑定点击事件
this.mapView.on("click", function (event) {
this.mapView.hitTest(event).then(function (response) {
//图形(graphic)点击事件的实现
if (response.results[0]) {
//获取到点击的图形
var graphic = response.results[0].graphic; //由于所有图形都在此事件,实际需求可能需要判断图形是哪个图形,或者图形所在哪个图层,可以通过uid和图层id来判断
let uid = graphic.uid;
//图层不一定有,例如在mapView的graphics下的就没有
if (graphic.layer) {
let layerId = graphic.layer.id;
}
}
}.bind(this))
}.bind(this));

arcgis jsapi接口入门系列(1):地图的更多相关文章

  1. arcgis jsapi接口入门系列(0):总览

    开发环境: arcgis jsapi版本4.9 由于我们这套代码是基于vue,webpack开发的,会有少数vue代码,但总体不影响 里面还有些我们公司的js库和html css,给出的代码不能百分百 ...

  2. arcgis jsapi接口入门系列(2):图层基础操作

    //图层相关demo layerFun: function () { //获取地图的所有图层(不包括的图层类型:底图图层(basemaps)) let layers = this.map.layers ...

  3. arcgis jsapi接口入门系列(5):几何(点线面)基本操作

    点 point: function () { //通过wkt生成点 //wkt,代表点的坐标 let wkt = "POINT(113.566806 22.22445)"; //w ...

  4. arcgis jsapi接口入门系列(9):可以同时显示多个的地图popup

    jsapi有提供popup功能,但缺点很多,例如地图上只能同时显示一个popup,popup内容有限制等 本文提供另一个方法,原理不用jsapi,在地图外用一个普通的div放在地图上面,再监听地图的鼠 ...

  5. arcgis jsapi接口入门系列(8):鼠标在地图画面

    初始化,每个map执行一次 PS:画点也差不多,都是用SketchViewModel,因此本demo没有专门写画点的 drawPolygonInit: function () { //画几何对象初始化 ...

  6. arcgis jsapi接口入门系列(10):图形高亮

    jsapi也有提供高亮的实现接口,但这里没用,而用的是一种改变图形(graphic)样式的思路 本文实现效果是:地图有多个面图形,当鼠标移动到面的上方,面高亮显示,鼠标移出后高亮解除 初始化 //高亮 ...

  7. arcgis jsapi接口入门系列(3):各种类型的图层添加

    这里说的tomcat切片,是指arcgis server切片后,把切片图片文件用tomcat发布(其他任意web服务器发布都行) //添加tomcat切片图层 addTomcatTileLayer: ...

  8. arcgis jsapi接口入门系列(4):用代码在地图画点线面

    PS:用代码画点这样写是为了跟后面的用鼠标画点线面区分出来 画点 drawPointGraphic: function () { //点有多种样式:一般的点,显示文字,显示图片 //一般的点 let ...

  9. arcgis jsapi接口入门系列(7):鼠标在地图画线

    初始化,每个map执行一次就行 drawPolylineInit: function () { //画几何对象初始化 //新建一个图形图层用于存放画图过程中的图形 let layer = new th ...

随机推荐

  1. P1115最大子段和

    题目:https://www.luogu.org/problemnew/show/P1115 很简明的一道题: 这里用了递归分治,然而似乎还有更简单的做法(贪心). 代码如下: #include< ...

  2. poj2828 Buy Tickets——倒序处理

    题目:http://poj.org/problem?id=2828 这题可以倒序来做,因为越靠后的人实际上优先级越高: 用0和1表示这个位置上是否已经有人,0表示有,1表示没有,这样树状数组维护前缀和 ...

  3. 动态规划专题(一) HDU1087 最长公共子序列

    Super Jumping! Jumping! Jumping! 首先对于动态规划问题要找出其子问题,如果找的子问题是前n个序列的最长上升子序列,但这样的子问题不好,因为它不具备无后效性,因为它的第n ...

  4. ajax展示新页面同时传递参数

    HTML页面部分代码: <div id="course" hidden></div> HTML页面中ajax代码: var selectType=$(&qu ...

  5. Firebug的安装与使用

    第一步,点击 Firefox 浏览器上的“工具”选项,然后点击“附加软件”,在弹出的小窗口中,点击右下角的“获取扩展”选项,如图 4 所示. 图 4. 获取扩展 第二步,在点击“获取扩展”选项后,打开 ...

  6. 【222】◀▶ IDL 输入输出函数说明

    参考:I/O - General Input/Output Routines —— 基本输入输出函数 01   PRINT/PRINTF 格式化输出. 02   READ/READF 格式化输入. 0 ...

  7. mysql数据库备份bat脚本

    @ECHO off TITLE databaseBackup E: REM : 源数据库: IP 端口 用户名 密码 SET DB_HOST=192.168.1.1 SET DB_PORT=3306 ...

  8. C# 计算时间日期

    System.DateTime datetime = System.DateTime.Now.AddSeconds(fixtime); // fixtime 是往后的秒数 : datetime是现在时 ...

  9. 3.17-3.18 HDFS2.x中高级特性讲解

    一.hdfs federation hdfs federation即hdfs的联邦:可以理解为有多个namenode节点的hdfs集群: HA方案解决的是单点故障问题,而Fdederation解决的是 ...

  10. Flutter实战视频-移动电商-36.FlutterToast插件使用

    36.FlutterToast插件使用 https://github.com/PonnamKarthik/FlutterToast fluttertoast: ^ category_page.dart ...