<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 81  文章 - 1033  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    在浮躁的年代里,我們進(jìn)取心太切,患得患失;虛榮心太強(qiáng),戰(zhàn)戰(zhàn)兢兢。一心爭(zhēng)強(qiáng)好勝,惟恐榜上無(wú)名。
    I think I can fly , and flying like a bird !
    程序員一名,已售出,缺貨中!

    我的郵件聯(lián)系方式

    用且僅用于MSN

    博客點(diǎn)擊率
    free web counter
    free web counter

    常用鏈接

    留言簿(36)

    隨筆檔案

    搜索

    •  

    積分與排名

    • 積分 - 186923
    • 排名 - 309

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    ?????作者:施偉,原文出處: http://m.tkk7.com/crespo9907/archive/2007/03/02/mapeasy_answer3_level_row_column.html,轉(zhuǎn)載請(qǐng)保留。
    ??????
    ???????cyg_gis在我的博里留言,問(wèn)到如下三個(gè)問(wèn)題:

    ??????1.請(qǐng)問(wèn)level不同時(shí)如何分割圖片,是否根據(jù)坐標(biāo)來(lái)??
    ??????2.level變動(dòng)時(shí),function NewMapType() {}函數(shù)如何實(shí)現(xiàn)??
    ??????3.可否說(shuō)說(shuō)MapEasy的執(zhí)行流程。
    ?

    ??????這也是很多的朋友在群里和論壇里經(jīng)常問(wèn)到的問(wèn)題,也因?yàn)樽罱容^忙都只是做了簡(jiǎn)單的交流,今天抽空在這里把這個(gè)問(wèn)題分析一下,我想上面三個(gè)問(wèn)題也就自己解開(kāi)了。

    ??????首先需要搞清楚row,column,level分別是什么意思,我想大家英文對(duì)付它們應(yīng)該綽綽有余,呵呵。row表示行、column表示列而level表示級(jí)別,在MapEasy中row表示瓦片(tile)所在的行數(shù)、column表示瓦片所在的列數(shù)而level表示地圖縮放的級(jí)別。

    ??????下面我們來(lái)理解幾個(gè)更為重要的概念,主要是MapModel這個(gè)地圖核心對(duì)象的幾個(gè)屬性:

    ??????1. MapModel.bound 表示地圖的坐標(biāo)范圍
    ??????它為地圖指定了一個(gè)參考坐標(biāo)范圍,其他一些帶有坐標(biāo)信息的概念都是以它作為參考,如點(diǎn)(Point)、地物標(biāo)注(Marker)等。如設(shè)置當(dāng)前坐標(biāo)范圍為(-180e16, 180e16, -90e16, 90e16),即MapModel.bound = new Bound(-180e16, 180e16, -90e16, 90e16)(在這里默認(rèn)你已經(jīng)了解Bound對(duì)象的含義),有一個(gè)標(biāo)注的坐標(biāo)為(-180e16, 90e16),即new Marker(new Point(-180, 90)) ,很容易看出在這個(gè)地圖坐標(biāo)系范圍中此標(biāo)注在地圖的最左上角。自然這個(gè)標(biāo)注在顯示時(shí)位置也就在地圖的最左上角。

    ??????2. MapModel.firstZoomTileNum 表示地圖在客戶(hù)端顯示時(shí)在第一個(gè)級(jí)別所分成的瓦片數(shù)。
    ??????這個(gè)值一般是一個(gè)平方數(shù),因?yàn)槟J(rèn)地圖為正方形。如MapModel.firstZoomTileNum = 121表示在第一個(gè)級(jí)別會(huì)分成121和瓦片來(lái)顯示,即11行11列的瓦片組成的二元矩陣。

    ??????3. MapModel.scalePara 表示地圖每一層縮放之間的縮放比例
    ??????這個(gè)比較容易理解,如果MapModel.scalePara=2,那么每個(gè)級(jí)別之間就以2倍的比例放大或者縮小。

    ??????4. MapModel.tileSize 表示每個(gè)瓦片的尺寸大小,單位為象素
    ??????如MapModel.tileSize=256,那么瓦片即為256*256的DIV,地圖圖片相應(yīng)也為256*256。注意此處單位為象素。

    ??????5. MapModel.maxZoomLevel 表示地圖能放大的最大級(jí)別
    ??????如MapModel.maxZoomLevel=5,那么地圖能放大的最大級(jí)別為5,相應(yīng)在滑塊工具上你也只能看到放大到5。

    ??????
    ??????我想理解了上面幾個(gè)概念要回答那三個(gè)甚至是相關(guān)的問(wèn)題都不會(huì)太難,首先我們來(lái)分析問(wèn)題一:請(qǐng)問(wèn)level不同時(shí)如何分割圖片,是否根據(jù)坐標(biāo)來(lái)? MapEasy這種地圖顯示方式就是把地圖分成一個(gè)個(gè)大小相等小的瓦片,我們可以把的地圖看作是又我們生成的這些瓦片所拼接起來(lái),其實(shí)一個(gè)瓦片在瀏覽器中就是一個(gè)DIV,里面包含一個(gè)圖片。我們舉一個(gè)比較典型的例子來(lái)說(shuō)明。
    ?????
    ??????如果地圖坐標(biāo)范圍為(-100,100,-100,100),我們把它看左一個(gè)長(zhǎng)寬均為200的大圖片,我們?cè)O(shè)置MapModel.firstZoomTileNum=4,即在第一級(jí)用4個(gè)瓦片來(lái)顯示,顯示如下:

    ??????A1 A2
    ??????B1 B2

    ??????A1,A2,B1,B2即為4個(gè)瓦片,顯然A1顯示(-100,0,0,100)范圍的地圖,A2顯示(0,100,0,100)范圍,B1顯示(-100,0,-100,0)范圍,B2顯示(0,100,-100,0)范圍。這個(gè)時(shí)候我們可以結(jié)合理解row,column的概念,其實(shí)這四個(gè)代號(hào)中A,B即代表row,下標(biāo)1,2即代表column。

    ??????為方便閱讀把圖片與地圖范圍列表如下:

    ??????A1-(-100,0,0,100)
    ??????A2-(0,100,0,100)

    ??????B1-(-100,0,-100,0)
    ??????B2-(0,100,-100,0)

    ??????同樣舉最典型的例子當(dāng)?shù)貓D由level=1變?yōu)閘evel=2時(shí),并MapModel.scalePara=2即放大比例為2時(shí),顯然圖片的長(zhǎng)和寬都變?yōu)樵瓉?lái)的一倍,而整個(gè)地圖的面積就變成了原來(lái)的四倍。這個(gè)時(shí)候MapEasy會(huì)用四倍的瓦片數(shù)量來(lái)顯示地圖,如上面舉的例子就變成如下顯示:

    ???C1 C2 C3 C4
    ???D1 D2 D3 D4
    ???E1? E2 E3 E4
    ???F1? F2 F3 F4

    ??????注:這里的ABCDEF并沒(méi)有任何含義,只是代號(hào)而已。

    ??????這個(gè)時(shí)候C1顯示(-100,-50,50,100)范圍地圖,而C2顯示(-50,0,50,100),依次類(lèi)推,見(jiàn)下表:

    ??????C1-(-100,-50,50,100)
    ??????C2-(-50,0,50,100)
    ??????C3-(0,50,50,100)
    ??????C4-(50,100,50,100)

    ??????D1-(-100,-50,0,50)
    ??????D2-(-50,0,0,50)
    ??????D3-(0,50,0,50)
    ??????D4-(50,100,0,50)

    ??????E1-(-100,-50,-50,0)
    ??????E2-(-50,0,-50,0)
    ??????E3-(0,50,-50,0)
    ??????E4-(50,100,-50,0)

    ??????F1-(-100,-50,-100,-50)
    ??????F2-(-50,0,-100,-50)
    ??????F3-(0,50,-100,-50)
    ??????F4-(50,100,-100,-50)

    ??????可以看出原來(lái)由一個(gè)瓦片A1顯示的部分,現(xiàn)在由C1,C2,D1,D2四個(gè)瓦片共同顯示,其他類(lèi)推。

    ??????當(dāng)level不同時(shí)MapEasy就是這樣分割圖片來(lái)形成瓦片顯示的,我想第一個(gè)問(wèn)題應(yīng)該解決了吧。下面我們來(lái)看第二個(gè)問(wèn)題:level變動(dòng)時(shí),function NewMapType() {}函數(shù)如何實(shí)現(xiàn)?在自定義一個(gè)新的地圖類(lèi)型時(shí),主要就是需要重載getSrc()方法來(lái)跟特定的地圖服務(wù)器配合取得對(duì)應(yīng)瓦片的圖片數(shù)據(jù)。這個(gè)在以前也討論過(guò),getSrc方法通過(guò)level, row, column三個(gè)參數(shù)來(lái)確定現(xiàn)在需要請(qǐng)求哪個(gè)瓦片的圖片數(shù)據(jù)。即表示在level級(jí)別下第row行第column列的瓦片地圖數(shù)據(jù)的地址(在MapEasy中row,column的索引是從0開(kāi)始的)。再結(jié)合第一個(gè)問(wèn)題的解釋第二個(gè)問(wèn)題也就自然不成問(wèn)題了。如上面的例子當(dāng)level為1第二行第二列的瓦片圖片數(shù)據(jù)為B2即(0,100,-100,0)范圍的圖片數(shù)據(jù),二當(dāng)level為2時(shí)同樣第二行第二列的瓦片圖片數(shù)據(jù)為D2即(-50,0,0,50)的圖片數(shù)據(jù)。

    ??????不管你的地圖服務(wù)器(或者稱(chēng)為數(shù)據(jù)源)是使用按圖片名稱(chēng)編好號(hào)碼的靜態(tài)圖片還是動(dòng)態(tài)的WMS服務(wù)等,都沒(méi)有任何關(guān)系,按照上面的規(guī)律實(shí)現(xiàn)getSrc方法按對(duì)應(yīng)的level,row,column取得對(duì)應(yīng)的地圖數(shù)據(jù)就可以享受MapEasy帶來(lái)的樂(lè)趣了。如果你知道了這些還問(wèn)我怎么去取圖片呢,那我只能說(shuō)仁者見(jiàn)仁,智者見(jiàn)智。呵呵

    ??????對(duì)于第三個(gè)問(wèn)題,我能說(shuō)的就是在開(kāi)源項(xiàng)目文檔不全的客觀條件下,靜下心來(lái)研讀一遍代碼是最好的方法。MapEasy的代碼即使在JavaScript基礎(chǔ)不是太好的情況下我想抽一個(gè)星期的空余時(shí)間應(yīng)該可以完整的讀一遍了。不知道我這樣回答cyg_gis兄是否能滿(mǎn)意,不過(guò)這確實(shí)是肺腑直言,讀源代碼才是王道,強(qiáng)烈推薦!

    ??????確實(shí)有好多好多的朋友提到這幾個(gè)相關(guān)的問(wèn)題,希望這篇文章能幫大家一解困惑,共同享受MapEasy!
    posted on 2007-03-02 02:04 cresposhi 閱讀(5308) 評(píng)論(18)  編輯  收藏

    FeedBack:
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-02 08:50 Tom Xu
    目前ME系統(tǒng)針對(duì)數(shù)據(jù)源的缺點(diǎn)是:只能顯示定范圍的地圖數(shù)據(jù),定范圍的數(shù)據(jù)雖然容易切圖,但往往會(huì)錯(cuò)過(guò)一些重要的比例尺,因此定范圍的數(shù)據(jù)層與層之間是有線(xiàn)性關(guān)系的。但如果要按固定比例尺切圖,那現(xiàn)在ME系統(tǒng)就無(wú)法滿(mǎn)足需求,需要做一些調(diào)整,目前正在測(cè)試,基本實(shí)現(xiàn)。

    不過(guò)好在目前大部分WMS及像Google, Yahoo, Mapbar, 51ditu等都是采用固定范圍的方式顯示數(shù)據(jù),因而系統(tǒng)開(kāi)發(fā)難度降低不少。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-02 10:54 cyg_gis
    寫(xiě)的很詳細(xì),我正在詳讀。我現(xiàn)在卡在了“l(fā)evel不同如何切割服務(wù)器端地圖”等問(wèn)題。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-02 10:57 cyg_gis
    看了上面Tom Xu的回復(fù),我想“用比例尺切圖”的方法現(xiàn)階段應(yīng)該不可行,但“定范圍”切圖的方法現(xiàn)在還不是很清楚。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】[未登錄](méi) 2007-03-02 11:18 SIN
    當(dāng)前MapEasy可不可以跟你的博客地圖中那樣,在上面加一些能顯示動(dòng)態(tài)數(shù)據(jù)的標(biāo)注??  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-02 11:51 施偉
    @SIN
    當(dāng)然可以,需要自己建立自己的標(biāo)注數(shù)據(jù)庫(kù),在客戶(hù)端JS中生成標(biāo)注對(duì)象Marker或者擴(kuò)展覆蓋物Overlay對(duì)象來(lái)生成自己的標(biāo)注即可。
      回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-02 11:54 施偉
    @cyg_gis
    有什么具體問(wèn)題你可以詳細(xì)的給我mail list,我抽時(shí)間幫你解決。
    最近確實(shí)被事忙暈了,ME也一段時(shí)間沒(méi)碰了,呵呵
    找時(shí)間看看tom兄說(shuō)的幾個(gè)問(wèn)題。
    看來(lái)我又落后了啊,tom等等我啊 ^_^  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-12 12:04 穎穎
    呵呵,怎么這么快就落后了啊。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-12 21:38 施偉
    呵呵,日新月異啊。。。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-13 09:07 穎穎
    造也,呵呵,這個(gè)世界有沒(méi)有天才啊,就是那種不用學(xué)都知道的,還有啊,過(guò)目不忘的那種。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-13 22:20 施偉
    有天才,所謂的天才并不是不用學(xué)都知道,而是拼命學(xué)并且掌握學(xué)習(xí)方法的人。  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-14 10:14 穎穎
    哦,那每個(gè)人都可以成為天才列,呵呵看來(lái)又跟:這個(gè)世界沒(méi)有丑女人,只有懶女人的道理一樣,呵呵  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-14 11:52 cresposhi
    這句話(huà)說(shuō)的有見(jiàn)地,美女越來(lái)越有深度了,呵呵  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-14 12:41 穎穎
    呵呵,那我是美女所以我不懶,這個(gè)對(duì)不對(duì)啊?  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-03-15 09:16 cresposhi
    呵呵,也有道理哦  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-08-30 15:05 bwrobert
    瞎扯!答疑成了談?wù)撎觳琶琅蛻腥肆?  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-08-30 15:27 bwrobert
    最近剛弄 MapEasyx想問(wèn)個(gè)初學(xué)者的問(wèn)題:
    自定義類(lèi)型來(lái)讀取地圖圖片數(shù)據(jù)如何形成瓦片顯示在頁(yè)面上?  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】 2007-11-13 14:49 hyowner
    看了上面的問(wèn)題我還是感到很迷惑,我現(xiàn)在的唯一的問(wèn)題就是不知道如何把地圖把地圖切割,我在瀏覽器上看時(shí)一些簡(jiǎn)單的功能是可以實(shí)現(xiàn)的,但就是里面的瓦片顯示部分不知道怎樣換成我的圖例,還請(qǐng)能詳細(xì)講解,怎樣把我的N多的圖片多顯示出來(lái)呢,我用了一張圖片測(cè)試,結(jié)果在
    A1 B1
    A2 B2
    都出現(xiàn)了同樣的圖片,我怎么才能把所頭的圖片按一個(gè)完整的地圖顯示出來(lái)啊
    QQ:57191841  回復(fù)  更多評(píng)論
      
    # re: MapEasy答疑(三) row,column,level與瓦片顯示的關(guān)系【很多朋友反復(fù)問(wèn)到的問(wèn)題】[未登錄](méi) 2009-06-30 14:31 lu
    我也有同上的問(wèn)題。而且之前下的ME,運(yùn)行demo2_google.html這些例子的時(shí)候,googlemap的圖片都讀不出來(lái)啊,全都是x。是不是讀取googlemap數(shù)據(jù)的url有問(wèn)題啊?急切求教  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产精品免费看久久久| 另类专区另类专区亚洲| 午夜视频免费在线观看| 亚洲国产精品乱码一区二区| 黄色短视频免费看| 亚洲国产婷婷六月丁香| 国产免费爽爽视频在线观看| 国产V亚洲V天堂A无码| 亚洲一区二区在线免费观看| 99久久精品国产亚洲| 亚洲成人免费网站| 亚洲欧美精品午睡沙发| 色www永久免费视频| 免费精品国自产拍在线播放| 精品国产日韩亚洲一区| 日本免费电影一区二区| 亚洲美女激情视频| 成人免费视频软件网站| 免费无遮挡无遮羞在线看| 国产av无码专区亚洲国产精品| a级毛片在线免费观看| 亚洲精品亚洲人成在线麻豆| 一二三四在线观看免费高清中文在线观看| 亚洲日日做天天做日日谢| 免费国产在线观看| 免费视频成人手机在线观看网址| 久久久无码精品亚洲日韩京东传媒| 99久久久精品免费观看国产| 亚洲人成未满十八禁网站| 亚洲国产成人久久综合野外| 久久久免费精品re6| 亚洲精品无码永久在线观看男男| 亚洲精品人成无码中文毛片| 午夜免费福利片观看| 色窝窝亚洲av网| 国产亚洲精AA在线观看SEE | 亚洲人成77777在线播放网站不卡| 日韩免费视频观看| 日韩视频免费在线观看| 在线观看亚洲网站| 日韩精品一区二区亚洲AV观看|