Constructor
new MapLoaderUrlTemplate(optionsopt)
Example
// 获取使用TMS切片方案和地理(EPSG:4326)项目的Natural Earth II影像
var tms = new MapLoaderUrlTemplate({
url : Cesium.buildModuleUrl('Assets/Textures/NaturalEarthII') + '/{z}/{x}/{reverseY}.jpg',
credit : '© Analytical Graphics, Inc.',
tilingScheme : new Cesium.GeographicTilingScheme(),
maximumLevel : 5
});
// 访问CartoDB Positron底图,该底图使用类似OpenStreetMap的切片方案。
var positron = new MapLoaderUrlTemplate({
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.'
});
// 访问Web地图服务(WMS)服务器。
var wms = new MapLoaderUrlTemplate({
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 : Cesium.Rectangle.fromDegrees(96.799393, -43.598214999057824, 153.63925700000001, -9.2159219997013)
});
// 在模板网址中使用自定义标记。
var custom = new MapLoaderUrlTemplate({
url : 'https://yoururl/{Time}/{z}/{y}/{x}.png',
customTags : {
Time: function(imageryProvider, x, y, level) {
return '20171231'
}
}
});
Parameters:
Name | Type | Attributes | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Promise.<Object> | Object |
<optional> |
此对象拥有以下属性:
Properties
|
Extends
Members
(readonly) credit :Cesium.Credit
- Overrides:
获取版权信息。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Cesium.Credit
(readonly) errorEvent :Cesium.Event
- Overrides:
获取此加载器遇到异步错误时触发的事件。
Type:
- Cesium.Event
(readonly) hasAlphaChannel :Boolean
- Overrides:
获取影像是否有Alpha通道。
Type:
- Boolean
(readonly) id :String
- Overrides:
获取ID。
Type:
- String
(readonly) maximumLevel :Number
- Overrides:
获取可以请求的最大级别。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Number
(readonly) minimumLevel :Number
- Overrides:
获取可以请求的最小级别。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Number
pickFeaturesUrl :String
用于选择要素的URL模板。如果未指定此属性,则
MapLoaderUrlTemplate#pickFeatures
将立即返回undefined,表示未选择任何要素。
URL模板支持url code>参数支持的所有关键字,以及以下内容:
{i}
: 拾取位置的像素列(水平坐标),其中最西端的像素为0
{j}
: 拾取位置的像素行(垂直坐标),其中最北端的像素为0
{reverseI}
: 拾取位置的像素列(水平坐标),其中最东端的像素为0
{reverseJ}
: 拾取位置的像素行(垂直坐标),其中最南端的像素为0
{longitudeDegrees}
: 所选位置的经度(以度为单位)
{latitudeDegrees}
: 所选位置的纬度(以度为单位)
{longitudeProjected}
: 切片方案投影坐标中拾取位置的经度
{latitudeProjected}
: 切片方案投影坐标中拾取位置的纬度
{format}
: Cesium.GetFeatureInfoFormat
中指定的获取要素信息的格式
Type:
- String
(readonly) provider :Boolean
- Overrides:
获取此瓦片加载器包装的图形提供器。
Type:
- Boolean
(readonly) proxy :Cesium.Proxy
- Overrides:
获取此加载器使用的代理。
Type:
- Cesium.Proxy
(readonly) ready :Boolean
- Overrides:
获取加载器是否已准备好。
Type:
- Boolean
(readonly) readyPromise :Promise.<Boolean>
- Overrides:
获取在加载器准备就绪时可以解析为true的Promise。
Type:
- Promise.<Boolean>
(readonly) rectangle :Cesium.Rectangle
- Overrides:
获取要显示的地图范围(以弧度表示)。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Cesium.Rectangle
(readonly) tileDiscardPolicy :Cesium.TileDiscardPolicy
- Overrides:
获取瓦片丢弃策略。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Cesium.TileDiscardPolicy
(readonly) tileHeight :Number
- Overrides:
获取瓦片高,以像素为单位。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Number
(readonly) tileWidth :Number
- Overrides:
获取瓦片宽,以像素为单位。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Number
(readonly) tilingScheme :Cesium.TilingScheme
- Overrides:
获取切片方案。
在
MapLoader#ready
返回true之前,不应调用此函数。
Type:
- Cesium.TilingScheme
url :String
获取用于请求切片的URL模板。它具有以下关键字:
{z}
: 瓦片级别{x}
: 瓦片X坐标{y}
: 瓦片Y坐标{s}
: 托管瓦片的服务器可用的子域,用于克服浏览器对每个主机的并发请求数的限制{reverseX}
: 切片方案中的切片X坐标,其中0是最东端的切片{reverseY}
: 切片方案中的切片Y坐标,其中0是最南端的切片{reverseZ}
: 切片方案中切片的级别,其中级别0是四叉树金字塔的最大级别。为了使用reverseZ,必须定义maximumLevel{westDegrees}
: 最小经度{southDegrees}
: 最小纬度{eastDegrees}
:最大经度{northDegrees}
: 最大纬度{westProjected}
: 在切片方案的投影坐标系下的最小X坐标{southProjected}
: 在切片方案的投影坐标系下的最小Y坐标{eastProjected}
: 在切片方案的投影坐标系下的最大X坐标{northProjected}
: 在切片方案的投影坐标系下的最大Y坐标{width}
: 瓦片宽{height}
: 瓦片高
Type:
- String
urlSchemeZeroPadding :Object
URL模板中瓦片坐标的零填充。格式为'000',其中每个坐标将在左侧填充0,以匹配传递的0字符串的宽度。
例如,设置:urlSchemeZeroPadding : { '{x}' : '0000'},将导致一个'x'值12返回字符串'0012',对应URL模板中{x}瓦片坐标。它传递的对象有以下关键字:
-
{z}
: 在切片方案中瓦片级别的零填充 -
{x}
: 在切片方案中瓦片X坐标的零填充 -
{y}
: 在切片方案中瓦片Y坐标的零填充 -
{reverseX}
: 在切片方案中,瓦片的反转X坐标的零填充 -
{reverseY}
: 在切片方案中,瓦片的反转Y坐标的零填充 -
{reverseZ}
: 在切片方案中,瓦片的反转Z坐标的零填充
Type:
- Object
Methods
getTileCredits(x, y, level) → {Array.<Cesium.Credit>}
- Overrides:
获取当请求的瓦片被显示出来时,要显示的版权信息。
Parameters:
Name | Type | Description |
---|---|---|
x |
Number | 瓦片的X坐标。 |
y |
Number | 瓦片的Y坐标。 |
level |
Number | 瓦片的层级。 |
Throws:
-
在图像提供器准备就绪之前,不得调用
getTileCredits
。 - Type
- Cesium.DeveloperError
Returns:
返回的版权信息。
- Type
- Array.<Cesium.Credit>
pickFeatures(x, y, level, longitude, latitude) → {Promise.<Array.<Cesium.ImageryLayerFeatureInfo>>|undefined}
异步地确定哪些要素(如果有的话)位于瓦片中给定的经度和纬度。
在
MapLoaderUrlTemplate#ready
返回true之前,不应该调用此函数。
这个函数是可选的,所以它可能不存在于所有的ImageryProviders上。
Parameters:
Name | Type | Description |
---|---|---|
x |
Number | 瓦片的X坐标。 |
y |
Number | 瓦片的Y坐标。 |
level |
Number | 瓦片的级别。 |
longitude |
Number | 拾取要素的经度。 |
latitude |
Number | 拾取要素的纬度。 |
Throws:
-
pickFeatures
在图像提供器准备好之前不能被调用。 - Type
- Cesium.DeveloperError
Returns:
对所选要素的promise,它将在异步拾取完成时解析。
解析后的值是
Cesium.ImageryLayerFeatureInfo
实例的数组。如果在给定位置没有发现任何要素,则该数组可能为空。
如果不支持拾取,它也可能是未定义的。
- Type
- Promise.<Array.<Cesium.ImageryLayerFeatureInfo>> | undefined
reinitialize(options)
重新初始化该实例。支持重新初始化已经在使用的实例,但是不建议您重新使用,因为图像提供器提供的现有切片将不会更新。
Parameters:
Name | Type | Description |
---|---|---|
options |
Promise.<Object> | Object | 可以传递给MapLoaderUrlTemplate 构造函数的任何选项。 |
requestImage(x, y, level, requestopt) → {Promise.<(Image|Canvas)>|undefined}
- Overrides:
请求给定块的瓦片。
MapLoaderUrlTemplate#ready
返回true之前,不应调用此函数。
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
x |
Number | 瓦片的X坐标。 | |
y |
Number | 瓦片的Y坐标。 | |
level |
Number | 瓦片的层级。 | |
request |
Cesium.Request |
<optional> |
Request对象(仅供内部使用)。 |
Returns:
返回值有以下3种情况:
1.当图像可用时,返回对图像的Promise。
2.如果有太多对服务器的活动请求,则返回未定义图像,并且应该稍后重新请求。
3.解析后的图像可以是图像,也可以是画布DOM对象。
- Type
- Promise.<(Image|Canvas)> | undefined