亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

WMTS中TileMatrix與ScaleDenominator淺析

 更新時(shí)間:2023年03月05日 11:26:10   作者:嶺南燈火  
這篇文章主要為大家介紹了WMTS中TileMatrix與ScaleDenominator淺析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

其實(shí)有時(shí)間琢磨規(guī)范文檔的話,倒也不必費(fèi)時(shí)間自己琢磨,這篇算是一些口水話心得。

規(guī)范文檔指路:OGC Standard - Two Demensional Tile Matrix Set #6. TileMatrixSet,對(duì),并不是 WMTS 規(guī)范,而是更精確的 2D瓦片陣列集規(guī)范,它獨(dú)立于 WMTS 規(guī)范而發(fā)布。

1. WMTS 中的 TileMatrix 是什么

在我之前的文章《OGC WebGIS 常用服務(wù)標(biāo)準(zhǔn)速查》中有提過(guò),這個(gè)其實(shí)就是一個(gè)“陣列”,形象的比喻就是一個(gè)“棋盤(pán)”,一張網(wǎng)格:

因?yàn)槲覀儗W(xué)習(xí)線性代數(shù)的時(shí)候矩陣就和這玩意兒長(zhǎng)得像,所以就被稱作“瓦片陣列”,即 TileMatrix。而基于同一個(gè)坐標(biāo)系的多個(gè)瓦片陣列,就被稱作“瓦片陣列集”(或者類似的名字,你開(kāi)心就好),即 TileMatrixSet

打開(kāi) WMTS 的 XML 能力文檔,看看 EPSG:4326 坐標(biāo)系的第 1 級(jí)瓦片陣列定義:

<TileMatrix>
  <ows:Identifier>EPSG:4326:1</ows:Identifier>
  <ScaleDenominator>1.3977056600717944E8</ScaleDenominator>
  <TopLeftCorner>90.0 -180.0</TopLeftCorner>
  <TileWidth>256</TileWidth>
  <TileHeight>256</TileHeight>
  <MatrixWidth>4</MatrixWidth>
  <MatrixHeight>2</MatrixHeight>
</TileMatrix>

這些屬性一眼看過(guò)去很容易知道其含義:

  • Identifier:這個(gè)瓦片陣列的 ID
  • TopLeftCorner:這個(gè)瓦片的左上角位置,此處是經(jīng)緯度表達(dá)(基于 EPSG:4326 坐標(biāo)系)
  • TileWidth、TileHeight:瓦片的像素長(zhǎng)寬,即 256 × 256 像素
  • MatrixWidth、MatrixHeight:瓦片陣列的長(zhǎng)寬;不理解的可以想象一下“矩陣”的長(zhǎng)寬,代表這一級(jí)瓦片橫向縱向跨度有多少個(gè)瓦片

最后一個(gè)沒(méi)說(shuō)的 ScaleDenominator,翻譯過(guò)來(lái)是 比例分母,也是本文重點(diǎn)要介紹的東西。

2. ScaleDenominator 是什么

在回答這個(gè)問(wèn)題之前,我先提 2 個(gè)問(wèn)題:

  • 在早些年最具代表性的 Windows 系統(tǒng)使用的 96 PPI 像素的屏幕上,1 像素的尺寸是多少?
  • 一個(gè)瓦片中,1 像素表示多大經(jīng)緯度或現(xiàn)實(shí)尺寸?

2.1. 一個(gè)像素的顯示器物理尺寸是多大

回答第 1 個(gè)問(wèn)題很簡(jiǎn)單,網(wǎng)上一搜大概就有,或者拿 23.8 英寸的 1080p 顯示器大致算一下也行:

  • 23.8 英寸 1080p 顯示器對(duì)角線約 2202.9 個(gè)像素
  • 23.8 英寸約為 604.52 毫米

所以 1 個(gè)像素的長(zhǎng)寬大概是 604.52 / 2202.9 ≈ 0.274 毫米。

同理,算出 27 寸 4k(3840 × 2160)顯示器的像素尺寸約為 0.156 毫米。

隨著技術(shù)進(jìn)步,現(xiàn)在的顯示器面板已經(jīng)把這個(gè)值進(jìn)一步提高了,27 英寸的 4K 顯示器都很常見(jiàn),物理像素尺寸進(jìn)一步縮小,而 Windows 操作系統(tǒng)為了顯示效果,會(huì)在高分辨率屏幕中使用縮放率來(lái)提高平滑度 —— 比如,我的 4K 分辨率 27 寸顯示器就使用了 200% 縮放率,也即 4 個(gè)像素(長(zhǎng)寬各縮放 200%,即 2 個(gè)像素 × 2 個(gè)像素)作為原來(lái)的 1 個(gè)像素顯示,這樣 3840 × 2160 的物理分辨率就會(huì)模擬成 1920 × 1080。

2.2. 瓦片圖片的一個(gè)像素是多大

看第 2 個(gè)問(wèn)題。

瓦片是有等級(jí)的,想知道瓦片 1 像素的尺寸,那么就勢(shì)必知道兩個(gè)因子:

  • 這瓦片長(zhǎng)寬多少像素
  • 這瓦片占的總尺寸(長(zhǎng)寬)

以 GeoServer 內(nèi)置的 EPSG:4326 瓦片陣列集定義來(lái)看,第 0 級(jí)瓦片陣列有 1 行 2 列(MatrixWidthMatrixHeight),那么一個(gè)瓦片的東西跨度應(yīng)為地球周長(zhǎng)的一半:

查資料得知地球赤道周長(zhǎng)的值約為 400750170米,此 0 級(jí)瓦片東西向有 256 個(gè)像素,容易得知,每個(gè)像素為 (400750170 ÷ 2) ÷ 256 = 782715.17578125 米。

現(xiàn)在有了上述的計(jì)算例子,就可以足夠解釋什么是 ScaleDenominator 了:

這個(gè)值與 GeoServer 中第 0 級(jí)瓦片陣列的 ScaleDenominator279541132.0143589 僅差距不到 10,從誤差角度看可以認(rèn)為相等(地球赤道的大小可能采用的數(shù)值略不一樣)。

從公式來(lái)看,這個(gè)比例就像是在說(shuō):0.00028 米(0.28 mm)的屏幕像素尺寸,實(shí)際上是地球表面的 782715.17578125 米,所以這個(gè)比例分母也可以這么理解:

說(shuō)人話,這個(gè)比例分母的含義就是 “地表距離和屏幕距離的比例尺”。

2.3. 為什么是 0.28 毫米

有人會(huì)疑問(wèn)你這個(gè) 0.00028 米(0.28 毫米) 是怎么來(lái)的?在文章開(kāi)頭引用的規(guī)范中,規(guī)定了一個(gè) 標(biāo)準(zhǔn)渲染像素尺寸 的東西,即 0.28mm 作為一個(gè)像素的長(zhǎng)寬。

而在 2.1 小節(jié)的實(shí)際計(jì)算中,傳統(tǒng)高清顯示器的像素尺寸也就差不多是這個(gè)數(shù)值,考慮到標(biāo)準(zhǔn)制定的時(shí)間和硬件背景,使用 0.28 毫米也不足為奇了。

以上就是WMTS中TileMatrix與ScaleDenominator淺析的詳細(xì)內(nèi)容,更多關(guān)于WMTS TileMatrix ScaleDenominator的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解jeefast和Mybatis實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)的問(wèn)題

    詳解jeefast和Mybatis實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)的問(wèn)題

    這篇文章主要介紹了詳解jeefast和Mybatis實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)的問(wèn)題,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Mybatis plus的自動(dòng)填充與樂(lè)觀鎖的實(shí)例詳解(springboot)

    Mybatis plus的自動(dòng)填充與樂(lè)觀鎖的實(shí)例詳解(springboot)

    這篇文章主要介紹了Mybatis plus的自動(dòng)填充與樂(lè)觀鎖的實(shí)例詳解(springboot),本文給大家介紹的非常詳細(xì)對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 處理Log4j2不能打印行號(hào)的問(wèn)題(AsyncLogger)

    處理Log4j2不能打印行號(hào)的問(wèn)題(AsyncLogger)

    這篇文章主要介紹了處理Log4j2不能打印行號(hào)的問(wèn)題(AsyncLogger),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能

    Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能

    這篇文章主要介紹了Java使用Ajax實(shí)現(xiàn)跨域上傳圖片功能,需要的朋友可以參考下
    2017-09-09
  • 簡(jiǎn)單說(shuō)明Java的Struts框架中merge標(biāo)簽的使用方法

    簡(jiǎn)單說(shuō)明Java的Struts框架中merge標(biāo)簽的使用方法

    這篇文章主要簡(jiǎn)單介紹了Java的Struts框架中merge標(biāo)簽的使用方法,Struts是Java的SSH三大web開(kāi)發(fā)框架之一,需要的朋友可以參考下
    2015-12-12
  • 利用Spring Cloud Zuul實(shí)現(xiàn)動(dòng)態(tài)路由示例代碼

    利用Spring Cloud Zuul實(shí)現(xiàn)動(dòng)態(tài)路由示例代碼

    Spring Cloud Zuul路由是微服務(wù)架構(gòu)的不可或缺的一部分,提供動(dòng)態(tài)路由,監(jiān)控,彈性,安全等的邊緣服務(wù)。下面這篇文章主要給大家介紹了關(guān)于利用Spring Cloud Zuul實(shí)現(xiàn)動(dòng)態(tài)路由的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-09-09
  • springboot搭建訪客管理系統(tǒng)的實(shí)現(xiàn)示例

    springboot搭建訪客管理系統(tǒng)的實(shí)現(xiàn)示例

    這篇文章主要介紹了springboot搭建訪客管理系統(tǒng)的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Java中從JSON轉(zhuǎn)Java實(shí)體的多種方法詳解

    Java中從JSON轉(zhuǎn)Java實(shí)體的多種方法詳解

    在現(xiàn)在的日常開(kāi)發(fā)中不管前端還是后端,JSON 格式的數(shù)據(jù)是用得比較多的,甚至可以說(shuō)無(wú)處不在,這篇文章主要給大家介紹了關(guān)于Java中從JSON轉(zhuǎn)Java實(shí)體的多種方法,需要的朋友可以參考下
    2023-12-12
  • JAVA基礎(chǔ)面試題整理

    JAVA基礎(chǔ)面試題整理

    在本篇文章里小編給大家整理的是關(guān)于JAVA基礎(chǔ)面試題的整理內(nèi)容,需要的朋友們可以參考下。
    2019-10-10
  • 一文徹底搞懂Java日期時(shí)間類詳解

    一文徹底搞懂Java日期時(shí)間類詳解

    這篇文章主要給大家介紹了關(guān)于Java日期時(shí)間類的相關(guān)資料,Calendar類的功能要比Date類強(qiáng)大很多,可以方便的進(jìn)行日期的計(jì)算,獲取日期中的信息時(shí)考慮了時(shí)區(qū)等問(wèn)題,需要的朋友可以參考下
    2023-10-10

最新評(píng)論