ArcGisMapServerImageryProvider

new SuperMap3D.ArcGisMapServerImageryProvider()

提供由 ArcGIS MapServer 托管的瓦片影像服务。默认情况下,若服务端预缓存瓦片可用,将优先使用这些预缓存瓦片‌ 访问 ArcGIS 影像瓦片服务需提供 ArcGIS 访问令牌(Access Token)进行身份验证。 要获取安全资源,需先注册 ArcGIS 开发者账户或 ArcGIS 在线账户,并通过认证方法获取访问令牌‌。
Name Type Default Description
options.url String ArcGIS MapServer服务的URL。
options.token String optional 用于与ArcGIS MapServer服务进行身份验证的ArcGIS令牌。
options.tileDiscardPolicy TileDiscardPolicy optional 确定瓦片是否无效并应该被丢弃的策略。 如果这个值没有被指定,对于切图地图服务器,默认使用DiscardMissingTileImagePolicy,对于非切图地图服务器,默认使用NeverTileDiscardPolicy。 在前一种情况下,我们请求最高瓦片级别的0,0瓦片,然后检查像素点(0,0),(200,20),(20,200),(80,110)和(160, 130)。 如果所有这些像素点都是透明的,则丢弃检查被禁用,没有瓦片被丢弃。 如果它们中任何一个有非透明颜色,任何在这些像素位置具有相同值的瓦片将被丢弃。 这些默认值的最终结果应该是对于标准ArcGIS服务器的正确瓦片丢弃。 为确保没有瓦片被丢弃,构建并传递一个NeverTileDiscardPolicy作为此参数。
options.proxy Proxy optional 用于请求的代理。如果需要,该对象应具有一个 getURL 函数,用于返回代理 URL。
options.usePreCachedTilesIfAvailable Boolean true optional 如果为true,将使用服务器的预缓存瓦片(如果可用)。如果为false,将忽略任何预缓存瓦片,并使用export服务。
options.layers String optional 使用逗号分隔要显示的图层列表,或者如果所有图层都应该显示,则为undefined。
options.enablePickFeatures Boolean true optional 如果为true,ArcGisMapServerImageryProvider#pickFeatures将调用MapServer上的Identify服务,并返回响应中包含的要素。如果为false,ArcGisMapServerImageryProvider#pickFeatures将立即返回undefined(表示没有可拾取的要素),而不与服务器通信。 如果您不希望此提供者的要素被拾取,请将此属性设置为false。 可以通过在对象上设置ArcGisMapServerImageryProvider#enablePickFeatures属性来覆盖此设置。
options.rectangle Rectangle Rectangle.MAX_VALUE optional 图层的矩形范围。在访问切图图层时,此参数将被忽略。
options.tilingScheme TilingScheme new GeographicTilingScheme() optional 用于将全球影像划分为瓦片的切图方案。在访问切图服务器时,此参数将被忽略。
options.ellipsoid Ellipsoid optional 椭球体。如果指定并使用了切图方案,该参数将被忽略,取而代之的是切图方案的椭球体。如果两个参数都未指定,则使用 WGS84 椭球。
options.tileWidth Number 256 optional 每个瓦片的像素宽度。在访问切图服务器时,此参数将被忽略。
options.tileHeight Number 256 optional 每个瓦片的像素高度。在访问切图服务器时,此参数将被忽略。
options.maximumLevel Number optional 要请求的最大瓦片级别,或者如果没有最大值则为undefined。在访问切图服务器时,此参数将被忽略。
Example:
var esri = new SuperMap3D.ArcGisMapServerImageryProvider({
    url : 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer'
});
See:

Members

readonlycredit : Credit

获取当此影像provider处于活动状态时显示的版权声明。通常,这用于影像的来源。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

enablePickFeatures : Boolean

获取或设置指示是否启用特征选择的值。 如果为true,ArcGisMapServerImageryProvider#pickFeatures 将调用 ArcGIS 服务器上的识别操作,并返回响应中包含的特征。 如果为false,ArcGisMapServerImageryProvider#pickFeatures将立即返回undefined(表示没有可选取的特征),而不会与服务器通信。
Default Value: true

readonlyerrorEvent : Event

获取一个事件,当影像provider遇到异步错误时触发。通过订阅此事件,您将被通知错误,并有可能从中恢复。事件监听器将接收到一个TileProviderError实例。

readonlyhasAlphaChannel : Boolean

获取一个值,指示此影像provider提供的影像是否包含alpha通道。如果这个属性为false,即使存在alpha通道,也会被忽略。 如果这个属性为true,任何没有alpha通道的影像将被视为其alpha值在所有地方都是1.0。当这个属性为false时,内存使用量和纹理上传时间都会减少。
Default Value: true

layers : String

获取要显示的以逗号分隔的层id列表。

readonlymaximumLevel : Number

获取可以请求的精细级别。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlyminimumLevel : Number

获取可请求的最小精细级别。在 ArcGisMapServerImageryProvider#ready 返回 true 之前不应调用此函数。

readonlyproxy : Proxy

获取该提供程序使用的代理。

readonlyready : Boolean

获取一个值,指示provider是否准备好供使用。

readonlyreadyPromise : Promise.<Boolean>

获取一个promise,当provider准备好供使用时为true。

readonlyrectangle : Rectangle

获取此实例提供的影像的矩形范围,以弧度为单位。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlytileDiscardPolicy : TileDiscardPolicy

获取瓦片丢弃策略。如果没有定义,丢弃策略负责通过其shouldDiscardImage函数过滤掉缺失的瓦片。 如果这个函数返回undefined,则没有瓦片被过滤。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlytileHeight : Number

获取每个瓦片的高度,以像素为单位。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlytileWidth : Number

获取每个瓦片的宽度,以像素为单位。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlytilingScheme : TilingScheme

获取此provider使用的瓦片方案。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。

readonlytoken : String

获取用于验证 ArcGis MapServer 服务的 ArcGIS 令牌。

readonlyurl : String

获取 ArcGIS MapServer 的 URL。

readonlyusingPrecachedTiles : Boolean

获取一个值,指示此影像provider是否正在使用来自ArcGIS MapServer的预缓存瓦片。 如果影像 provider 尚未准备好(ArcGisMapServerImageryProvider#ready),即使MapServer没有预缓存瓦片,此函数也将返回options.usePreCachedTilesIfAvailable的值。
Default Value: true

Methods

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

获取在显示给定瓦片时要显示的版权信息。
Name Type Description
x Number 瓦片的 X 坐标。
y Number 瓦片的 Y 坐标。
level Number 瓦片的级别。
Returns:
当瓦片显示时需要显示的版权信息。
Throws:
  • DeveloperError : 在影像Provider准备好之前,不能调用getTileCredits

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

/** 异步确定在瓦片内给定经度和纬度处是否有任何要素。在ImageryProvider#ready返回true之前,不应调用此函数。
Name Type Description
x Number 瓦片的 X 坐标。
y Number 瓦片的 Y 坐标。
level Number 瓦片的级别。
longitude Number 选取特征的经度。
latitude Number 选取特征的纬度。
Returns:
一个对选中要素的Promise,当异步拾取完成时将解决。解决的值是一个ImageryLayerFeatureInfo实例数组。如果给定位置没有发现要素,则数组可能为空。
Throws:
  • DeveloperError : 在影像 provider准备好之前,不能调用pickFeatures

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

请求给定瓦片的影像。在ArcGisMapServerImageryProvider#ready返回true之前,不应调用此函数。
Name Type Description
x Number 瓦片的 X 坐标。
y Number 瓦片的 Y 坐标。
level Number 瓦片的级别。
request Request optional 请求对象。仅供内部使用。
Returns:
一个影像的Promise,当影像可用时将解决,或者如果对服务器的活跃请求太多,并且请求应该稍后重试,则为undefined。 解决的影像可以是Image或Canvas DOM对象。
Throws:
  • DeveloperError : 在影像Provider准备好之前,不能调用 requesttimage