arcgis api for js 4.x点线面定位

 根据唯一值查询到要定位查看的图斑,goTo实现定位。注意点和线面的区别

esriLoader.loadModules(["esri/tasks/support/Query","esri/Graphic"])
					.then(([Query,Graphic])=>{
						const query=new Query();
						query.where= "GUID = '"+id +"'";
						_this.map.layers.items[layerIndex].queryFeatures(query).then(function(results){
							if(layerindex!==0){
								_this.view.goTo(results.features[0].geometry.extent.expand(1)).then(function () {
									_this.view.graphics.removeAll();
									let addGraphic = new Graphic({
										geometry:results.features[0].geometry,
										symbol: {
										  type: "simple-fill",
										  color: [226, 119, 40,0.1],
										  style: "solid",
										  outline: {
											color: "red",
											width: 1
										  }
										},
										// attributes: _this.formdata
									});	
									_this.view.graphics.add(addGraphic);
								});
							}else{
								_this.view.goTo({target:results.features[0].geometry,zoom:5},{duration: 1000}).then(function () {//放点坐标不行放geometry
									_this.view.graphics.removeAll();console.log(layerIndex);
									let addGraphic = new Graphic({
										geometry:results.features[0].geometry,//放new点不行放geometry
										symbol: {
										  type: "simple-marker",
										  color: [226, 119, 40]
										}
									});	
									_this.view.graphics.add(addGraphic);
								});
							}
						})
					})

2.goTo简介

 

3.goTo

goTo方法的参数可以是两个或一个。当只有一个参数时,是一个数组;当是两个参数时,第一个参数是数组(一维或二维)或对象或某个图层的graphics,第二个参数是duration。
示例:

 view.goTo([112.6, 22.542])
 ------------------------------------------
mapView.goTo([113.6042903, 22.5501197], {
    duration: 2000 //视角跳转时长为2秒
})
---------------------------------------------
mapView.goTo([
        [113.59764, 22.49856],
        [113.59513, 22.50922],
        [113.60482, 22.51036],
        [113.60669, 22.49959],
        [113.59764, 22.49856]
    ], {
    duration: 2000
});
---------------------------------------------
 mapView.goTo({
        target: [113.60389, 22.54591],
        zoom: 13,
        heading: 48,
        tilt: 40
    }, {
       duration: 2000, //视角跳转时长为2秒,
    }).then(function () {
       // console.log("跳转完成");
    })
-------------------------------------------------
    mapView.goTo(videoPointLayer.graphics, {
       duration: 2000 //视角跳转时长为2秒
       })

//可以使用定时器创建连续的动画: goTo返回一个承诺,该承诺在动画完成时解决。这个承诺可能会被链接以创建一系列动画。
          view.goTo([112.6, 22.542])
            .then(function() {
              return view.goTo([113.6, 25.542]);
            })
            .then(function() {
              return view.goTo([113.6, 22.542]);
            });
点击,回到初始化位置以及视角:

      backToOldVisualAngle() {
        var mapView = global.mapView;
        mapView.goTo({
          target: [113.60389, 22.54591],
          zoom: 13,
          heading: 48,
          tilt: 40
        }, {
          duration: 2000, //视角跳转时长为2秒,
        }).then(function () {
          // console.log("跳转完成");
        })
      },

//扶正视角,但是不回到初始位置:

backToOldVisualAngle() {
        var mapView = global.mapView;
        mapView.goTo({
          zoom: 13,
          heading: 48,
          tilt: 40
        }, {
          duration: 2000, //视角跳转时长为2秒,
        }).then(function () {
          // console.log("跳转完成");
        })
      },

 target: [113.6, 22.542], 可以换为
center: {
x: 113.6,
y: 22.542,
spatialReference: {wkid: 4490}
},
//并添加参考系属性

  view.when(function () {
     view.goTo({
         // target: [113.6, 22.542],
         center: {
           x: 113.6,
           y: 22.542,
           spatialReference: {wkid: 4490}
         },
         zoom: 13,
         heading: 80, // 旋转角
         tilt: 30 // 倾斜角
       }, {
         duration: 2000 // 视角跳转时长为2秒,
       })
     })

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: ArcGIS API for JavaScript 4.x 是由 Esri 公司提供的 JavaScript API,用于在 web 应用程序中使用 ArcGIS 地图和地理空间数据。它提供了一组用于创建丰富地图应用程序的工具,包括地图显示、图层控制、查询和分析等功能。 ### 回答2: ArcGIS API for JavaScript 4.x 是由 Esri 公司开发的一款基于 web 的地理信息系统(WebGIS)开发工具集。它提供丰富的功能和工具,可以用来构建高质量的地图、应用程序和应用程序界面。 ArcGIS API for JavaScript 4.x 引入了许多新特性和改进,包括以下内容: 1. 优化性能:ArcGIS API for JavaScript 4.x 是基于 WebGL 技术实现的,可以更快速地加载和渲染地图。这个版本还引入了 SceneView 和 MapView,可以更加快速和高效地渲染 3D 场景。 2. 全新的视觉外观:ArcGIS API for JavaScript 4.x 引入了一些全新的样式,可以更好地展现数据。开发人员可以选择从一系列令人惊叹的符号和颜色方案中选择。 3. 更好的交互性和数据分析功能:ArcGIS API for JavaScript 4.x 提供了更好的交互性和数据分析工具,可以让用户更加轻松地探索和分析地图数据。例如,这个版本使得开发人员可以使用滤镜和统计功能探索和分析数据。 4. 多平台支持:ArcGIS API for JavaScript 4.x 可以在不同的平台上运行,包括桌面浏览器、移动设备和虚拟现实(VR)设备。 总之,ArcGIS API for JavaScript 4.x 是一款强大的工具集,可以帮助开发人员构建出高质量的地图应用程序。它提供了许多新特性和改进,包括优化性能、全新的视觉外观、更好的交互性和数据分析功能,以及多平台支持。 ### 回答3: ArcGIS API for JavaScript 4.x是一种WebGIS软件开发工具包,旨在提供可靠、高性能和易于使用的API,帮助开发人员构建可移植性强、交互性好的 WebGIS 应用。 ArcGIS API for JavaScript 4.x具有以下特点: 1.现代的Web GIS开发工具 ArcGIS API for JavaScript 4.x是一个现代的Web GIS开发工具,它可以帮助开发者利用最新的Web技术来构建高效、交互性好的WebGIS应用,无论时刻或地点。 2.支持多种数据格式 ArcGIS API for JavaScript 4.x支持多种数据格式,包括点、线、面、网格、图像、视频等,可以帮助开发者轻松地展示和分析地理信息数据。 3.交互性强 ArcGIS API for JavaScript 4.x允许开发者创建具有交互性的应用程序,包括可视化和图形用户界面(GUI)。开发人员可以轻松地添加地图、图层、标签、图例和其他控件,以便用户可以与地图积极地交互。 4.易于开发 ArcGIS API for JavaScript 4.x非常易于开发,开发者可以使用自己的Web开发工具(如Visual Studio或Sublime等),无需安装复杂的GIS软件或插件。开始撰写代码需要一些GIS基础知识和Javascript开发经验。 5.高性能 ArcGIS API for JavaScript 4.x拥有高性能的地图渲染引擎,支持大量复杂数据文件和多层次渲染操作,以及高效的数据压缩和缓存机制,为地图应用提供良好的性能。 总而言之, ArcGIS API for JavaScript 4.x提供了丰富的功能和细节控制能力,使开发人员能够快速构建出具有高度个性化的WebGIS应用程序,满足不同用户需求。无论是企业的GIS解决方案,还是个人开发GIS应用, ArcGIS API for JavaScript 4.x是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值