ArcGisMapServerImageryProvider

new Cesium.ArcGisMapServerImageryProvider(options)

该对象通常不直接实例化,请使用 ArcGisMapServerImageryProvider.fromBasemapTypeArcGisMapServerImageryProvider.fromUrl
提供由 ArcGIS MapServer 托管的切片影像。默认情况下,如果可用,将使用服务器预缓存的切片。
需要一个 ArcGIS Access Token 来验证对 ArcGIS 图像切片服务的请求。 要访问安全的 ArcGIS 资源,必须创建 ArcGIS 开发者帐户或 ArcGIS 在线帐户,然后实现一种身份验证方法以获取访问令牌。
Name Type Description
options ArcGisMapServerImageryProvider.ConstructorOptions optional 描述初始化选项的对象
Examples:
// Set the default access token for accessing ArcGIS Image Tile service
Cesium.ArcGisMapService.defaultAccessToken = "<ArcGIS Access Token>";

// Add a base layer from a default ArcGIS basemap
const viewer = new Cesium.Viewer("cesiumContainer", {
  baseLayer: Cesium.ImageryLayer.fromProviderAsync(
    Cesium.ArcGisMapServerImageryProvider.fromBasemapType(
      Cesium.ArcGisBaseMapType.SATELLITE
    )
  ),
});
// Create an imagery provider from the url directly
const esri = await Cesium.ArcGisMapServerImageryProvider.fromUrl(
  "https://ibasemaps-api.arcgis.com/arcgis/rest/services/World_Imagery/MapServer", {
    token: "<ArcGIS Access Token>"
});
See:

Members

获取当该影像提供者处于活动状态时显示的信用。通常用于信任影像的来源.
获取或设置一个值,该值指示是否启用要素拾取。如果为 true, ArcGisMapServerImageryProvider#pickFeatures 将 调用 ArcGIS 服务器上的 "identify" 操作并返回响应中包含的要素。如果为 false, ArcGisMapServerImageryProvider#pickFeatures 将立即返回 undefined(表示没有可拾取的特征) 而无需与服务器进行通信。
Default Value: true
获取一个事件,当影像提供者遇到异步错误时会引发此事件。通过订阅该事件,您将被通知错误,并可能从中恢复。事件监听器 会传递给一个 TileProviderError 实例.
获取一个值,指示此影像提供者提供的图像是否包含 alpha 通道。如果该属性为 false,则将忽略任何存在的 alpha 通道。 如果该属性为 true,则任何没有 alpha 通道的图像将被视为其 alpha 在所有地方均为 1.0。当该属性为 false 时,内存使用 和纹理上传时间会减少
Default Value: true
获取要显示的层 ID 的逗号分隔列表.

readonly maximumLevel : number|undefined

获取可以请求的最大详细等级.
获取可以请求的最低详细等级.
获取此提供者使用的代理.
获取此实例提供的影像的矩形(以弧度为单位).
获取切片丢弃策略。如果未定义,则丢弃策略负责通过其 shouldDiscardImage 函数过滤掉“缺失”的切片。 如果该函数返回未定义,则不对切片进行过滤.
获取每个切片的高度,以像素为单位.
获取每个切片的宽度,以像素为单位.
获取此提供者使用的切片方案.
获取用于验证与 ArcGis MapServer 服务的 ArcGIS 令牌.
获取 ArcGIS MapServer 的 URL.

readonly usingPrecachedTiles : boolean

获取一个值,指示此影像提供者是否正在使用 ArcGIS MapServer 的预缓存切片.
Default Value: true

Methods

static Cesium.ArcGisMapServerImageryProvider.fromBasemapType(style, options)Promise.<ArcGisMapServerImageryProvider>

创建一个ImageryProvider,提供来自 ArcGIS 基础地图的切片影像。
Name Type Description
style ArcGisBaseMapType ArcGIS 基础地图影像的样式。有效选项为 ArcGisBaseMapType.SATELLITE, ArcGisBaseMapType.OCEANS, 和 ArcGisBaseMapType.HILLSHADE
options ArcGisMapServerImageryProvider.ConstructorOptions optional 描述初始化选项的对象。
Returns:
一个承诺,解析为创建的 ArcGisMapServerImageryProvider。
Examples:
// Set the default access token for accessing ArcGIS Image Tile service
Cesium.ArcGisMapService.defaultAccessToken = "<ArcGIS Access Token>";

// Add a base layer from a default ArcGIS basemap
const provider = await Cesium.ArcGisMapServerImageryProvider.fromBasemapType(
  Cesium.ArcGisBaseMapType.SATELLITE);
// Add a base layer from a default ArcGIS Basemap
const viewer = new Cesium.Viewer("cesiumContainer", {
  baseLayer: Cesium.ImageryLayer.fromProviderAsync(
    Cesium.ArcGisMapServerImageryProvider.fromBasemapType(
      Cesium.ArcGisBaseMapType.HILLSHADE, {
        token: "<ArcGIS Access Token>"
      }
    )
  ),
});

static Cesium.ArcGisMapServerImageryProvider.fromUrl(url, options)Promise.<ArcGisMapServerImageryProvider>

创建一个ImageryProvider,提供由 ArcGIS MapServer 托管的切片影像。默认情况下,如果可用,将使用服务器的预缓存切片。
Name Type Description
url Resource | String ArcGIS MapServer 服务的 URL。
options ArcGisMapServerImageryProvider.ConstructorOptions optional 描述初始化选项的对象。
Returns:
一个承诺,解析为创建的 ArcGisMapServerImageryProvider。
Throws:
  • RuntimeError : 元数据空间参考指定了未知的 WKID
  • RuntimeError : 元数据 fullExtent.spatialReference 指定未知的 WKID
Example:
const esri = await Cesium.ArcGisMapServerImageryProvider.fromUrl(
    "https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"
);

getTileCredits(x, y, level)Array.<Credit>

获取在给定切片显示时要显示的信用。
Name Type Description
x number 切片 X 坐标。
y number 切片 Y 坐标。
level number 切片等级;
Returns:
在显示切片时要显示的信用。

pickFeatures(x, y, level, longitude, latitude)Promise.<Array.<ImageryLayerFeatureInfo>>|undefined

异步确定在给定的经度和纬度中,是否有位于切片中的任何要素。
Name Type Description
x number 切片 X 坐标。
y number 切片 Y 坐标。
level number 切片等级。
longitude number 要拾取要素的经度。
latitude number 要拾取要素的纬度。
Returns:
一个承诺,解析为已拾取的要素,当异步 拾取完成时,该承诺将解析。解析值是一个 ImageryLayerFeatureInfo 实例的数组。如果在给定位置未找到要素,则该数组可能为空。

requestImage(x, y, level, request)Promise.<ImageryTypes>|undefined

请求给定切片的图像。
Name Type Description
x number 切片 X 坐标。
y number 切片 Y 坐标。
level number 切片等级。
request Request optional 请求对象。仅供内部使用。
Returns:
一个承诺,用于可用图像的图像,它将在图像可用时解析,或 undefined 如果对服务器的活动请求太多,应该稍后重试请求。

Type Definitions

Cesium.ArcGisMapServerImageryProvider.ConstructorOptions

ArcGisMapServerImageryProvider 构造函数的初始化选项
Properties:
Name Type Attributes Default Description
tileDiscardPolicy TileDiscardPolicy <optional>
确定瓦片是否无效并应被丢弃的策略。如果未指定此值,则对于切片地图服务器使用默认的 DiscardMissingTileImagePolicy, 对于非切片地图服务器使用 NeverTileDiscardPolicy。在前一种情况下, 我们在最大瓦片级别请求瓦片 0,0,并检查像素 (0,0)、(200,20)、(20,200)、(80,110) 和 (160, 130)。如果所有这些像素都是透明的,则丢弃检查被禁用,并且没有瓦片被丢弃。如果其中任何一个像素具有非透明颜色,则丢弃所有在这些像素位置具有相同值的瓦片。这些默认设置的最终结果应为标准 ArcGIS 服务器的正确瓦片丢弃。为确保不丢弃任何瓦片,请为此参数构造并传递 NeverTileDiscardPolicy
usePreCachedTilesIfAvailable boolean <optional>
true 如果为 true,则在可用时使用服务器的预缓存瓦片。导出瓦片仅支持使用已弃用的 API。
layers string <optional>
要显示的图层的逗号分隔列表,或者如果应显示所有图层则为未定义。
enablePickFeatures boolean <optional>
true 如果为 true, ArcGisMapServerImageryProvider#pickFeatures 将在 MapServer 上调用识别服务并返回响应中包含的特征。 如果为 false,ArcGisMapServerImageryProvider#pickFeatures 将立即返回未定义(表示没有可选择的特征), 而不与服务器通信。如果您不希望此提供程序的特征可被选择,请将此属性设置为 false。 可以通过在对象上设置 ArcGisMapServerImageryProvider#enablePickFeatures 属性来覆盖此设置。
rectangle Rectangle <optional>
Rectangle.MAX_VALUE 图层的矩形。当访问切片图层时,此参数被忽略。
tilingScheme TilingScheme <optional>
new GeographicTilingScheme() 用于将世界划分为瓦片的切片方案。当访问切片服务器时,此参数被忽略。
ellipsoid Ellipsoid <optional>
Ellipsoid.default 椭球体。如果指定并使用了切片方案,则忽略此参数。如果两个参数都未指定,则使用默认椭球体。
credit Credit | string <optional>
数据源的信用信息,在画布上显示。当访问切片服务器时,此参数被忽略。
tileWidth number <optional>
256 每个瓦片的宽度(像素)。当访问切片服务器时,此参数被忽略。
tileHeight number <optional>
256 每个瓦片的高度(像素)。当访问切片服务器时,此参数被忽略。
maximumLevel number <optional>
请求的最大瓦片级别,或如果没有最大值则为未定义。当访问切片服务器时,此参数被忽略。
需要帮助?获得答案的最快方法是来自社区和团队 Cesium Forum.