zoukankan      html  css  js  c++  java
  • 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));
  • 相关阅读:
    关于LWIP断开网线后重连问题(热插拔问题)
    仿招商银行载入loading效果
    x264代码剖析(十五):核心算法之宏块编码中的变换编码
    Spring Boot + Jersey
    HDU
    OVS中对于用户层和datapath层的多个通道利用epoll进行控制
    Apache的.htaccess项目根文件夹伪静态设置规则
    poj 3071 Football(线段树+概率)
    AS2.0鼠标尾随和拖动代码
    RelativeLayout经常使用属性介绍及实例解说
  • 原文地址:https://www.cnblogs.com/cannel/p/11077915.html
Copyright © 2011-2022 走看看