一个提供由 OpenStreetMap 或其他 Slippy 瓦片提供商托管的瓦片影像的影像提供商。
默认 url 连接到 OpenStreetMap 由志愿者运营的服务器,因此你必须遵守其
瓦片使用策略(Tile Usage Policy)。
| Name | Type | Description |
|---|---|---|
options |
OpenStreetMapImageryProvider.ConstructorOptions | 描述初始化选项的对象 |
Throws:
-
DeveloperError :rectangle 与 minimumLevel 表示在最小层级上存在超过四个瓦片。不支持在最小层级上存在超过四个瓦片的影像提供商。
Example:
const osm = new Cesium.OpenStreetMapImageryProvider({
url : 'https://tile.openstreetmap.org/'
});
See:
Extends
Members
readonly credit : Credit
获取当此影像提供商处于活动状态时要显示的版权信息(credit)。通常这用于标注影像的来源。
- Inherited From:
- Default Value:
undefined
获取或设置一个值,指示是否启用地物拾取(feature picking)。如果为 true,
UrlTemplateImageryProvider#pickFeatures 将
请求 options.pickFeaturesUrl 并尝试解析响应中包含的地物。如果为 false,
UrlTemplateImageryProvider#pickFeatures 将立即返回 undefined(表示没有可拾取的
地物),而不与服务器通信。如果你知道数据源不支持地物拾取,或者不希望此提供商的地物可被拾取,请将此属性设为 false。
- Inherited From:
- Default Value:
true
readonly errorEvent : Event
获取当影像提供商遇到异步错误时触发的事件。通过订阅该事件,你会收到错误通知,并有可能从中恢复。事件监听器会接收到一个
TileProviderError 实例。
- Inherited From:
获取一个值,指示此影像提供商提供的影像是否包含 alpha 通道。如果此属性为 false,则 alpha 通道(如果存在)将被忽略。如果此属性为 true,则任何不带 alpha 通道的影像都会被当作其 alpha 处处为 1.0 来处理。当此属性为 false 时,内存占用和纹理上传时间会减少。
- Inherited From:
- Default Value:
true
获取可请求的最大细节层级(level-of-detail),如果没有限制则为 undefined。
- Inherited From:
- Default Value:
undefined
获取可请求的最小细节层级(level-of-detail)。
- Inherited From:
- Default Value:
0
获取用于拾取地物的 URL 模板。如果未指定此属性,
UrlTemplateImageryProvider#pickFeatures 将立即返回 undefined,表示没有
拾取到地物。该 URL 模板支持
UrlTemplateImageryProvider#url 属性支持的所有关键字,以及以下关键字:
{i}: 所拾取位置处的像素列(水平坐标),其中最西侧的像素为 0。{j}: 所拾取位置处的像素行(垂直坐标),其中最北侧的像素为 0。{reverseI}: 所拾取位置处的像素列(水平坐标),其中最东侧的像素为 0。{reverseJ}: 所拾取位置处的像素行(垂直坐标),其中最南侧的像素为 0。{longitudeDegrees}: 所拾取位置的经度(单位:度)。{latitudeDegrees}: 所拾取位置的纬度(单位:度)。{longitudeProjected}: 所拾取位置在切片方案投影坐标下的经度。{latitudeProjected}: 所拾取位置在切片方案投影坐标下的纬度。{format}: 获取地物信息所用的格式,由GetFeatureInfoFormat指定。
- Inherited From:
readonly proxy : Proxy
获取此提供商使用的代理(proxy)。
- Inherited From:
- Default Value:
undefined
readonly rectangle : Rectangle
获取此实例提供影像的矩形范围(单位:弧度)。
- Inherited From:
- Default Value:
tilingScheme.rectangle
readonly tileDiscardPolicy : TileDiscardPolicy
获取瓦片丢弃策略(tile discard policy)。如果不为 undefined,该丢弃策略负责通过其 shouldDiscardImage 函数过滤掉“缺失”的瓦片。如果该函数返回 undefined,则不会过滤任何瓦片。
- Inherited From:
- Default Value:
undefined
获取每个瓦片的高度(单位:像素)。
- Inherited From:
- Default Value:
256
获取每个瓦片的宽度(单位:像素)。
- Inherited From:
- Default Value:
256
readonly tilingScheme : TilingScheme
获取此提供商使用的切片方案(tiling scheme)。
- Inherited From:
- Default Value:
new WebMercatorTilingScheme()
获取用于请求瓦片的 URL 模板。它包含以下关键字:
-
{z}: 瓦片在切片方案中的层级。层级 0 是四叉树金字塔的根。 -
{x}: 瓦片在切片方案中的 X 坐标,其中 0 表示最西侧的瓦片。 -
{y}: 瓦片在切片方案中的 Y 坐标,其中 0 表示最北侧的瓦片。 -
{s}: 可用的子域名之一,用于克服浏览器对每个主机同时请求数量的限制。 -
{reverseX}: 瓦片在切片方案中的 X 坐标,其中 0 表示最东侧的瓦片。 -
{reverseY}: 瓦片在切片方案中的 Y 坐标,其中 0 表示最南侧的瓦片。 -
{reverseZ}: 瓦片在切片方案中的层级,其中层级 0 是四叉树金字塔的最大层级。要使用 reverseZ,必须定义 maximumLevel。 -
{westDegrees}: 瓦片在西(Western)方向的边缘,以大地测量度数表示。 -
{southDegrees}: 瓦片在南(Southern)方向的边缘,以大地测量度数表示。 -
{eastDegrees}: 瓦片在东(Eastern)方向的边缘,以大地测量度数表示。 -
{northDegrees}: 瓦片在北(Northern)方向的边缘,以大地测量度数表示。 -
{westProjected}: 瓦片在西方向的边缘,以切片方案的投影坐标表示。 -
{southProjected}: 瓦片在南方向的边缘,以切片方案的投影坐标表示。 -
{eastProjected}: 瓦片在东方向的边缘,以切片方案的投影坐标表示。 -
{northProjected}: 瓦片在北方向的边缘,以切片方案的投影坐标表示。 -
{width}: The width of each tile in pixels. -
{height}: The height of each tile in pixels.
- Inherited From:
获取每个瓦片坐标的 URL scheme 零填充(zero padding)。格式为 '000',其中每个坐标会在
左侧用零填充,以匹配所传入的零字符串的宽度。例如设置:
urlSchemeZeroPadding : { '{x}' : '0000'}
会使得 {x} 的值为 12 时,在生成的 URL 中返回字符串 '0012'。
它包含以下关键字:
-
{z}: 瓦片在切片方案中层级的零填充。 -
{x}: 瓦片在切片方案中 X 坐标的零填充。 -
{y}: 瓦片在切片方案中 Y 坐标的零填充。 -
{reverseX}: 瓦片在切片方案中 reverseX 坐标的零填充。 -
{reverseY}: 瓦片在切片方案中 reverseY 坐标的零填充。 -
{reverseZ}: 瓦片在切片方案中 reverseZ 坐标的零填充。
- Inherited From:
Methods
getTileCredits(x, y, level) → Array.<Credit>
获取在显示给定瓦片时要显示的版权信息(credits)。
| Name | Type | Description |
|---|---|---|
x |
number | 瓦片的 X 坐标。 |
y |
number | 瓦片的 Y 坐标。 |
level |
number | 瓦片的层级; |
Returns:
在显示该瓦片时要显示的版权信息(credits)。
- Inherited From:
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:
一个针对所拾取地物的 Promise,将在异步拾取完成时兑现。兑现的值是
ImageryLayerFeatureInfo 实例的数组。如果在给定位置未找到任何地物,数组可能为空。如果不支持拾取,则可能为 undefined。
- Inherited From:
requestImage(x, y, level, request) → Promise.<ImageryTypes>|undefined
| Name | Type | Description |
|---|---|---|
x |
number | 瓦片的 X 坐标。 |
y |
number | 瓦片的 Y 坐标。 |
level |
number | 瓦片的层级。 |
request |
Request | optional 请求对象。仅供内部使用。 |
Returns:
一个针对该影像的 Promise,将在影像可用时兑现;如果
对服务器的活动请求过多,且应在稍后重试该请求,则为 undefined。
- Inherited From:
Type Definitions
OpenStreetMapImageryProvider 构造函数的初始化选项
Properties:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
url |
string |
<optional> |
'https://tile.openstreetmap.org' | OpenStreetMap 服务器的 url。 |
fileExtension |
string |
<optional> |
'png' | 服务器上影像的文件扩展名。 |
retinaTiles |
boolean |
<optional> |
false | 为 true 时,以 2 倍分辨率请求瓦片,适用于视网膜(retina)显示屏。 |
rectangle |
Rectangle |
<optional> |
Rectangle.MAX_VALUE | 图层的矩形范围。 |
minimumLevel |
number |
<optional> |
0 | 影像提供商支持的最小细节层级(level-of-detail)。 |
maximumLevel |
number |
<optional> |
影像提供商支持的最大细节层级(level-of-detail),如果没有限制则为 undefined。 | |
ellipsoid |
Ellipsoid |
<optional> |
椭球。如果未指定,则使用 WGS84 椭球。 | |
credit |
Credit | string |
<optional> |
'MapQuest, Open Street Map and contributors, CC-BY-SA' | 数据源的版权信息(credit),显示在画布(canvas)上。 |
