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


JavaScript ArcGIS Basemap用法及代码示例


基本信息

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

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

ESM: import Basemap from "@arcgis/core/Basemap";

类: esri/Basemap

继承: Basemap > Accessor

自从:用于 JavaScript 4.0 的 ArcGIS API

用法说明

创建一个新的底图对象。底图可以从 PortalItem 或众所周知的底图 ID 创建,也可以用于创建自定义底图。这些底图可能是根据您发布到自己的服务器的切片服务或第三方发布的切片服务创建的。

// in this case the portalItem has to be a webmap
let basemap = new Basemap({
  portalItem: {
    id: "8dda0e7b5e2d4fafa80132d59122268c"  // WGS84 Streets Vector webmap
  }
});

// or create the basemap from a well known ID
Basemap.fromId("topo-vector");

// or create from a third party source
let basemap = new Basemap({
  baseLayers: [
    new WebTileLayer(...)
  ],
  referenceLayers: [
    new WebTileLayer(...)
  ],
});

为底图使用动态服务时,应指定 MapView.constraints.lods 属性。通过在此属性中显式设置lods 或通过TileInfo 类的create() 方法创建lods 来执行此操作。此方法用于创建具有 lods 预设属性的新 TileInfo 实例。有关详细信息,请参阅MapView SDK 文档中的Zoom and LODs 部分。

// create a basemap from a dynamic mapserver
let basemap = new Basemap({
  baseLayers: [
    new MapImageLayer({
      url: "url to your dynamic MapServer",
      title: "Basemap"
    })
  ],
  title: "basemap",
  id: "basemap"
});

let map = new Map({
  basemap: basemap
});

// create a TileInfo instance using the default settings and
// pass its resulting LOD's to a MapView's constraints
// in this case, lods will match the ArcGIS Online web mercator LODs
let view = new MapView({
  container: "viewDiv",
  map: map,
  constraints: {
    lods: TileInfo.create().lods
  }
});

可以调用 Basemap 实例上的 when() 方法来执行只能在加载 Basemap 后运行的进程。

相关用法


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