arcgis jsapi接口入门系列(1):地图
地图相关
//地图相关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):地图的更多相关文章
- arcgis jsapi接口入门系列(0):总览
开发环境: arcgis jsapi版本4.9 由于我们这套代码是基于vue,webpack开发的,会有少数vue代码,但总体不影响 里面还有些我们公司的js库和html css,给出的代码不能百分百 ...
- arcgis jsapi接口入门系列(2):图层基础操作
//图层相关demo layerFun: function () { //获取地图的所有图层(不包括的图层类型:底图图层(basemaps)) let layers = this.map.layers ...
- arcgis jsapi接口入门系列(5):几何(点线面)基本操作
点 point: function () { //通过wkt生成点 //wkt,代表点的坐标 let wkt = "POINT(113.566806 22.22445)"; //w ...
- arcgis jsapi接口入门系列(9):可以同时显示多个的地图popup
jsapi有提供popup功能,但缺点很多,例如地图上只能同时显示一个popup,popup内容有限制等 本文提供另一个方法,原理不用jsapi,在地图外用一个普通的div放在地图上面,再监听地图的鼠 ...
- arcgis jsapi接口入门系列(8):鼠标在地图画面
初始化,每个map执行一次 PS:画点也差不多,都是用SketchViewModel,因此本demo没有专门写画点的 drawPolygonInit: function () { //画几何对象初始化 ...
- arcgis jsapi接口入门系列(10):图形高亮
jsapi也有提供高亮的实现接口,但这里没用,而用的是一种改变图形(graphic)样式的思路 本文实现效果是:地图有多个面图形,当鼠标移动到面的上方,面高亮显示,鼠标移出后高亮解除 初始化 //高亮 ...
- arcgis jsapi接口入门系列(3):各种类型的图层添加
这里说的tomcat切片,是指arcgis server切片后,把切片图片文件用tomcat发布(其他任意web服务器发布都行) //添加tomcat切片图层 addTomcatTileLayer: ...
- arcgis jsapi接口入门系列(4):用代码在地图画点线面
PS:用代码画点这样写是为了跟后面的用鼠标画点线面区分出来 画点 drawPointGraphic: function () { //点有多种样式:一般的点,显示文字,显示图片 //一般的点 let ...
- arcgis jsapi接口入门系列(7):鼠标在地图画线
初始化,每个map执行一次就行 drawPolylineInit: function () { //画几何对象初始化 //新建一个图形图层用于存放画图过程中的图形 let layer = new th ...
随机推荐
- SyntaxError: can't assign to operator
变量名不能有'-'
- GitHub---github入门
setup git --- create a repository-----fork a repository -- a pull request (be social)
- Bishops
题意: 给定一个 $n*n$ 的国际棋盘,求问在上面放 $K$ 个象的方案数. 解法: 首先可以发现黑格和白格互不干扰,这样我们可以将黑格,白格分别求出. 考虑 $f(i,j)$ 表示坐标化后考虑长度 ...
- 6、html的body内标签之超链接
一.超链接 <a href="https://www.baidu.com" target="_blank">某度</a> #target ...
- TypeScript完全解读(26课时)_5.TypeScript完全解读-函数
5.TypeScript完全解读-函数 新建function.ts.然后在index.ts内引用 给函数定义参数类型:上面是es5的写法 下面是ts6的写法 一个完整的函数类型.括号 箭头 numbe ...
- 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之三 —— 配置
==== 目录 ==== 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之一 —— 开篇 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之二 —— ...
- E20190212-mt
创建: 2019/02/12 reserve n. 储备; 保留; 保护区; 替补队员; vt. 储备; 保留; 预约; vi. 预订; slot n. 位置; 狭槽,水沟; [人名] ...
- 【WIP】iOS 网络通讯
创建: 2018/06/05 网络通讯的基础 App Transport Security iOS9以后增加的功能 只允许满足Apple标准的https通信 ● 对ATS进行改动的话发布的审查时有可 ...
- 进击python第三篇:基础
基础拾遗 序列解包 例: >>>x,y,z=1,2,3 >>>print x,y,z 1 2 3 交换变量也是没问题 >>>x,y=y,x > ...
- 洛谷P2505 [HAOI2012]道路(最短路计数)
传送门 早上模拟赛考这题,结果竟然看错题目了orz 然后下午看完题解自己做的时候空间开小了白WA了好久orz 首先,如果以$S$为起点,一条边$(u,v)$在最短路上,则$dis[u]+edge[i] ...