该对象通常不直接实例化,请使用
提供由 ArcGIS MapServer 托管的切片影像。默认情况下,如果可用,将使用服务器预缓存的切片。
ArcGisMapServerImageryProvider.fromBasemapType 或 ArcGisMapServerImageryProvider.fromUrl。
需要一个 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
readonly credit : Credit
获取当该影像提供者处于活动状态时显示的信用。通常用于信任影像的来源.
获取或设置一个值,该值指示是否启用要素拾取。如果为 true,
ArcGisMapServerImageryProvider#pickFeatures 将
调用 ArcGIS 服务器上的 "identify" 操作并返回响应中包含的要素。如果为 false,
ArcGisMapServerImageryProvider#pickFeatures 将立即返回 undefined(表示没有可拾取的特征)
而无需与服务器进行通信。
-
Default Value:
true
readonly errorEvent : Event
获取一个事件,当影像提供者遇到异步错误时会引发此事件。通过订阅该事件,您将被通知错误,并可能从中恢复。事件监听器
会传递给一个
TileProviderError 实例.
获取一个值,指示此影像提供者提供的图像是否包含 alpha 通道。如果该属性为 false,则将忽略任何存在的 alpha 通道。
如果该属性为 true,则任何没有 alpha 通道的图像将被视为其 alpha 在所有地方均为 1.0。当该属性为 false 时,内存使用
和纹理上传时间会减少
-
Default Value:
true
获取要显示的层 ID 的逗号分隔列表.
获取可以请求的最大详细等级.
获取可以请求的最低详细等级.
readonly proxy : Proxy
获取此提供者使用的代理.
readonly rectangle : Rectangle
获取此实例提供的影像的矩形(以弧度为单位).
readonly tileDiscardPolicy : TileDiscardPolicy
获取切片丢弃策略。如果未定义,则丢弃策略负责通过其 shouldDiscardImage 函数过滤掉“缺失”的切片。
如果该函数返回未定义,则不对切片进行过滤.
获取每个切片的高度,以像素为单位.
获取每个切片的宽度,以像素为单位.
readonly tilingScheme : TilingScheme
获取此提供者使用的切片方案.
获取用于验证与 ArcGis MapServer 服务的 ArcGIS 令牌.
获取 ArcGIS MapServer 的 URL.
获取一个值,指示此影像提供者是否正在使用 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
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> |
请求的最大瓦片级别,或如果没有最大值则为未定义。当访问切片服务器时,此参数被忽略。 |
