许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  esri-loader + ArcGIS API实现小部件:自定义地图控件开发

esri-loader + ArcGIS API实现小部件:自定义地图控件开发

阅读数 20
点赞 0
article_banner

template部分

<template>
      <el-row style="box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 12px 0px;">
        <el-button type="" icon="el-icon-plus" circle class="zoomin"></el-button>
        <el-button type="" icon="el-icon-minus" circle class="zoomout"></el-button>
        <el-button type="info" icon="el-icon-thumb" circle class="pan"></el-button>
        <el-button type="info" icon="el-icon-full-screen" circle class="fullmap"></el-button>
        <el-button type="" icon="el-icon-arrow-left" circle class="beforePic"></el-button>
        <el-button type="" icon="el-icon-arrow-right" circle class="afterPic"></el-button>
      </el-row>
</template>

js部分

import * as esriLoader from 'esri-loader'
// import $ from 'jquery'

export default {
  data() {
    return {
      xyText: '',
      extent_tag: [ ],
      value: '', // 选择的ID
      options_power: [{
        value: 'option-choose',
        label: '筛选'
      }, {
        value: 'option-clean',
        label: '清除'
      }, {
        value: 'option-visible',
        label: '显示'
      }, {
        value: 'setting-extent-xy',
        label: '设置坐标'
      }, {
        value: 'setting-extent',
        label: '设置范围'
      }],
      xy_zdy: {},
      extent_zdy: {},
      centerDialogVisible: false,
      centerDialogVisible_extent: false,
      checked: true
    }
  },
  // 我们需要在该组件装载之后做的事情都放在该方法里
  mounted() {
    esriLoader.setDefaultOptions({ version: '3.28' })
    this.createMap()
  },
  // 我们需要执行的方法都定义在该属性里
  methods: {
    createMap: function() {
      esriLoader.loadModules(['esri/map',
        'esri/geometry/Extent',
        'esri/layers/ArcGISDynamicMapServiceLayer',
        'dojo/query',
        'esri/toolbars/navigation',
        'esri/geometry/Point',
        'dojo/domReady!'], { css: true })
        .then(([Map, Extent, ArcGISDynamicMapServiceLayer, query, Navigation, Point]) => {
          var tjUAVurl = 'http://localhost:6080/arcgis/rest/services/Eco/BJ_td_gd_nyd/MapServer'

          var map = new Map('map', {
            extent: new Extent({
              xmin: 114.4134760856628,
              ymin: 40.13100080490112,
              xmax: 118.36547288894677,
              ymax: 41.64383821487438,
              spatialReference: {
                wkid: 4326
              }
            }),
            logo: false
          })

          var tjUAVLayer = new ArcGISDynamicMapServiceLayer(tjUAVurl)
          map.addLayer(tjUAVLayer)

          // *************************************************************************************** //

          var navToolbar = new Navigation(map)
          query('.zoomin').on('click', () => {
            navToolbar.activate(Navigation.ZOOM_IN)
          })
          query('.zoomout').on('click', () => {
            navToolbar.activate(Navigation.ZOOM_OUT)
          })
          query('.pan').on('click', () => {
            navToolbar.activate(Navigation.PAN)
          })
          query('.fullmap').on('click', () => {
            navToolbar.zoomToFullExtent()
          })
          query('.beforePic').on('click', () => {
            navToolbar.zoomToPrevExtent()
          })
          query('.afterPic').on('click', () => {
            navToolbar.zoomToNextExtent()
          })
  }
}

效果图


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空