当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS MapView.goTo用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/views/MapView"], (MapView) => { /* code goes here */ });

ESM: import MapView from "@arcgis/core/views/MapView";

类: esri/views/MapView

继承: MapView > View > Accessor

自从:用于 JavaScript 4.0 的 ArcGIS API

用法说明

MapView.goTo函数(或属性)的定义如下:

goTo (target, options) {Promise}


将视图设置为给定目标。目标参数可以是以下之一:

  • [longitude, latitude] 坐标对
  • Geometry(或 Geometry[] 的数组)
  • Graphic(或 Graphic[] 的数组)
  • Viewpoint
  • 具有 targetcenterscalerotation 属性组合的对象(其中 target 是上面列出的任何类型)。提供 center 属性是为了方便为 MapView.center 设置动画,相当于指定以 Point 为中心的 target

此函数返回一个承诺,一旦新视图设置为目标,该承诺就会解析。如果过渡是动画的,则可以使用 MapView.animation 获取正在进行的动画。如果将视图设置为新目标失败,goTo() 方法返回的 Promise 将拒绝并出现错误。使用 catch 语句来处理错误:

view.goTo({
  center: [-126, 49]
})
.catch(function(error) {
  if (error.name != "AbortError") {
     console.error(error);
  }
});

如果使用切片Map服务作为底图,并且 snapToZoom 属性在约束中设置为 true,则 goTo 方法将放大以适合定义的 target 。如果 snapToZoom 属性设置为 false ,则 goTo 方法将缩放到精确的 target

参数:

类型说明
target GoToTarget2D

要设置动画的目标位置/视点。为 target 使用对象时,请使用 GoToTarget2D 中的属性。

options GoToOptions2D
可选的

用于控制动画持续时间和缓动的动画选项。有关对象规范,请参阅GoToOptions2D 中定义的属性。

返回:

类型 说明
Promise 当视图的范围更新到 target 中定义的范围时解决的承诺。

例子:

let pt = new Point({
  latitude: 49,
  longitude: -126
});

// go to the given point
view.goTo(pt);
let opts = {
  duration: 5000  // Duration of animation will be 5 seconds
};

// go to point at LOD 15 with custom duration
view.goTo({
  target: pt,
  zoom: 15
}, opts);
// go to same point using center and zoom
view.goTo({
  center: [-126, 49],
  zoom: 15
});

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 MapView.goTo。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。