通过使用指定的 URL 模板请求瓦片来提供影像。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Promise.<Object> | Object |
optional
具有以下属性的对象:
|
Example:
// Access Natural Earth II imagery, which uses a TMS tiling scheme and Geographic (EPSG:4326) project
var tms = new SuperMap3D.UrlTemplateImageryProvider({
url : 'https://cesiumjs.org/tilesets/imagery/naturalearthii/{z}/{x}/{reverseY}.jpg',
credit : '© Analytical Graphics, Inc.',
tilingScheme : new SuperMap3D.GeographicTilingScheme(),
maximumLevel : 5
});
// Access the CartoDB Positron basemap, which uses an OpenStreetMap-like tiling scheme.
var positron = new SuperMap3D.UrlTemplateImageryProvider({
url : 'http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png',
credit : 'Map tiles by CartoDB, under CC BY 3.0. Data by OpenStreetMap, under ODbL.'
});
// Access a Web Map Service (WMS) server.
var wms = new SuperMap3D.UrlTemplateImageryProvider({
url : 'https://programs.communications.gov.au/geoserver/ows?tiled=true&' +
'transparent=true&format=image%2Fpng&exceptions=application%2Fvnd.ogc.se_xml&' +
'styles=&service=WMS&version=1.1.1&request=GetMap&' +
'layers=public%3AMyBroadband_Availability&srs=EPSG%3A3857&' +
'bbox={westProjected}%2C{southProjected}%2C{eastProjected}%2C{northProjected}&' +
'width=256&height=256',
rectangle : SuperMap3D.Rectangle.fromDegrees(96.799393, -43.598214999057824, 153.63925700000001, -9.2159219997013)
});
See:
Members
-
readonlycredit : Credit
-
获取此影像提供程序处于活动状态时要显示的凭证。这通常是用来证明影像的来源。这个函数不应该在
UrlTemplateImageryProvider#ready
返回true之前被调用。-
Default Value:
undefined
-
获取或设置一个值,该值指示是否启用了特征选取。如果为true,
UrlTemplateImageryProvider#pickFeatures
将请求选项。 pickFeaturesUrl
并尝试解释响应中包含的特性。如果为false,UrlTemplateImageryProvider#pickFeatures
将在不与服务器通信的情况下立即返回undefined(表示没有可选择的功能)。 如果您知道您的数据源不支持选择特性,或者您不希望此提供程序的特性是可选择的,请将此属性设置为false。-
Default Value:
true
-
readonlyerrorEvent : Event
-
获取当影像提供程序遇到异步错误时引发的事件。通过订阅事件,您将收到错误通知,并有可能从中恢复。事件监听器被传递一个
TileProviderError
的实例。 -
获取指示该影像提供程序提供的影像是否包含 alpha 通道的值。 如果该属性为 false,则会忽略存在的 alpha 通道。 如果该属性为 true,任何不包含 alpha 通道的影像都将被视为其 alpha 值为 1.0 的影像。 如果此属性为 false,则会减少内存使用量和纹理上传时间。 在
ImageryProvider#ready
返回 true 之前,不应调用此函数。-
Default Value:
true
-
获取可请求的最大精细级别,如果没有限制,则为未定义。此函数不应在
UrlTemplateImageryProvider#ready
返回 true 之前调用。-
Default Value:
undefined
-
获取可请求的最小精细级别,如果没有限制,则为未定义。此函数不应在
UrlTemplateImageryProvider#ready
返回 true 之前调用。-
Default Value:
0
-
获取要用于选择特性的URL模板。如果未指定此属性,则
UrlTemplateImageryProvider#pickFeatures
将立即返回undefined,表示没有 功能选择。属性支持的所有关键字UrlTemplateImageryProvider#url
属性,加上以下内容:{i}
: 所选位置的像素列(横坐标),其中最西端像素为0。{j}
: 所选位置的像素行(垂直坐标),其中最北像素为0。{reverseI}
: 所选位置的像素列(横坐标),其中最东端像素为0。{reverseJ}
: 所选位置的像素行(垂直坐标),其中最南端的像素为0。{longitudeDegrees}
: 以度为单位的选定位置的经度。{latitudeDegrees}
: 以度为单位的选定位置的纬度。{longitudeProjected}
: 在切图方案的投影坐标中选定位置的经度。{latitudeProjected}
: 在切图方案的投影坐标中选定位置的纬度。{format}
: 获取特征信息的格式,如GetFeatureInfoFormat
中指定的。
-
获取此提供程序使用的代理。
-
Default Value:
undefined
-
获取一个值,该值指示提供程序是否已准备好使用。
-
获取一个Promise,该Promise在提供程序准备好使用时解析为true。
-
readonlyrectangle : Rectangle
-
获取此实例所提供影像的矩形(以弧度为单位)。此函数不应在
UrlTemplateImageryProvider#ready
返回 true 之前调用。-
Default Value:
tilingScheme.rectangle
-
readonlytileDiscardPolicy : TileDiscardPolicy
-
获取瓦片丢弃策略。如果未定义,则丢弃策略负责通过其 shouldDiscardImage 函数过滤 "丢失 "的瓦片。如果此函数返回未定义,则不会过滤任何瓦片。 在
UrlTemplateImageryProvider#ready
返回 true 之前,不应调用此函数。-
Default Value:
undefined
-
获取每个切图的高度(以像素为单位)。这个函数不应该在
UrlTemplateImageryProvider#ready
返回true之前被调用。-
Default Value:
256
-
获取每个切图的宽度(以像素为单位)。这个函数不应该在
UrlTemplateImageryProvider#ready
返回true之前被调用。-
Default Value:
256
-
readonlytilingScheme : TilingScheme
-
获取此提供程序使用的切图方案。此函数不应在
UrlTemplateImageryProvider#ready
返回 true 之前调用。-
Default Value:
new WebMercatorTilingScheme()
-
获取用于请求瓦片的 URL 模板。它有以下关键字:
-
{z}
: 瓦片在切图方案中的级别。0级是四叉金字塔的根。 {x}
: 切图方案中的瓦片 X 坐标,其中 0 表示最西端的瓦片。{y}
: 切图方案中的瓦片 Y 坐标,其中 0 表示最北端的瓦片。{s}
: 可用子域之一,用于克服浏览器对每台主机同时请求数的限制。{reverseX}
: 切图方案中的瓦片 X 坐标,其中 0 表示最东边的瓦片。{reverseY}
: 切图方案中的瓦片 X 坐标,其中 0 表示最南边的瓦片。{reverseZ}
: 瓦片在切铺方案中的级别,其中0级是四叉树金字塔的最大级别。要使用 reverseZ,必须定义 maximumLevel。{westDegrees}
: 以大地坐标度数表示的瓦片西边。{southDegrees}
: 以大地坐标度数表示的瓦片南边。{eastDegrees}
: 以大地坐标度数表示的瓦片东边。{northDegrees}
: 以大地坐标度数表示的瓦片北边。{westProjected}
: 瓦片的西边,以切图方案的投影坐标表示。{southProjected}
: 瓦片的南边,以切图方案的投影坐标表示。{eastProjected}
: 瓦片的东边,以瓦片方案的投影坐标表示。{northProjected}
: 瓦片的北边,以瓦片方案的投影坐标表示。{width}
: 每个瓷片的宽度(以像素为单位)。{height}
: 每个瓷片的高度(以像素为单位)。
-
-
获取每个切图坐标的URL方案0填充。格式为“000”,其中每个坐标都将被填充 在左侧加零以匹配传递的0字符串的宽度。如设置: urlSchemeZeroPadding: {'{x}': '0000'} 将导致'x'值12返回字符串'0012',用于生成URL中的{x}。 包含以下关键词:
-
{z}
: 切图方案中切图层的0填充。 -
{x}
: 切图方案中切图X坐标的0填充。 -
{y}
: 切图方案中切图Y坐标的0填充。 -
{reverseX}
: 切图方案中切图reverseX坐标的0填充。 -
{reverseY}
: 切图方案中切图reverseY坐标的0填充。 -
{reverseZ}
: 切图方案中切图reverseZ坐标的0填充。
-
Methods
-
getTileCredits(x, y, level) → Array.<Credit>
-
获取显示给定瓦片时要显示的凭证。
Name Type Description x
Number 瓦片的X坐标。 y
Number 瓦片的Y坐标。 level
Number 瓦片的级别。 Returns:
显示瓦片时要显示的凭证。Throws:
-
DeveloperError :
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
实例的数组。如果在给定位置没有找到特征,则数组可能为空。 如果不支持选择,也可能是未定义的。 -
重新初始化该实例。支持重新初始化已在使用的实例,但不建议这样做,因为影像提供者提供的现有瓦片不会更新。
Name Type Description 可传递给
Promise.<Object> | Object UrlTemplateImageryProvider
构造函数的任意选项。 -
请求指定瓦片的影像。此函数不应在
UrlTemplateImageryProvider#ready
返回 true 之前调用。Name Type Description x
Number 瓦片的X坐标。 y
Number 瓦片的Y坐标。 level
Number 瓦片的级别。 request
Request optional 请求对象。仅供内部使用。 Returns:
对影像的一个Promise,当影像可用时将进行解析,如果对服务器的活动请求太多,则未定义,并且应该稍后重试请求。 解析后的影像可以是image对象,也可以是Canvas DOM对象。