版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> ABSTRACTII</p><p><b> 1 緒論1</b></p><p> 1.1 選題的背景及意義1</p><p
2、> 1.2 國(guó)內(nèi)相關(guān)技術(shù)的研究現(xiàn)狀1</p><p> 1.3 課題涉及的相關(guān)技術(shù)2</p><p> 1.4 課題討論的主要內(nèi)容3</p><p> 2 MapInfo軟件的簡(jiǎn)介3</p><p> 2.1 MapInfo的空間拓?fù)潢P(guān)系模型3</p><p> 2.2 MapInfo數(shù)據(jù)組
3、織形式4</p><p> 2.2.1 屬性數(shù)據(jù)的表結(jié)構(gòu)文件.TAB5</p><p> 2.2.2 屬性數(shù)據(jù)文件.DAT5</p><p> 2.2.3 交叉索引文件.ID5</p><p> 2.2.4 空間數(shù)據(jù)文件.MAP5</p><p> 2.2.5 索引文件.IND6</p>
4、;<p> 2.3 MapX的研究7</p><p> 2.31 MapX的簡(jiǎn)介7</p><p> 2.32 MapX的空間數(shù)據(jù)機(jī)制7</p><p> 2.33 MapX控件包含對(duì)象的基本模型以及基本屬性9</p><p> 2.34 MapX的顯著特征11</p><p> 2
5、.35 MapX的使用程序GeoSet Manager的介紹13</p><p> 3 基于MapX的房地產(chǎn)專題信息管理系統(tǒng)的設(shè)計(jì)流程13</p><p> 3.1房地產(chǎn)數(shù)據(jù)的獲取與處理13</p><p> 3.2房地產(chǎn)數(shù)據(jù)庫的設(shè)計(jì)15</p><p> 3.2將房地產(chǎn)屬性數(shù)據(jù)與地圖數(shù)據(jù)綁定15</p>&l
6、t;p> 3.2.1 BindLayer數(shù)據(jù)綁定16</p><p> 3.2.2借助MapX的Datasets集合進(jìn)行數(shù)據(jù)綁定18</p><p> 3.3基于MapX房地產(chǎn)專題信息管理系統(tǒng)的模型以及功能設(shè)計(jì)19</p><p> 4 結(jié)合實(shí)例開發(fā)深入了解基于MapX的房地產(chǎn)專題信息管理20</p><p> 4.1
7、開發(fā)實(shí)例的介紹20</p><p> 4.2應(yīng)用實(shí)例中實(shí)現(xiàn)房地產(chǎn)地圖的嵌入21</p><p> 4.3房地產(chǎn)地圖操作功能的實(shí)現(xiàn)23</p><p> 4.4房地產(chǎn)專題圖的制作與其操作26</p><p> 4.5房地產(chǎn)信息查詢與編輯功能的實(shí)現(xiàn)30</p><p><b> 5 總結(jié)31
8、</b></p><p><b> 致 謝33</b></p><p><b> 參考文獻(xiàn)34</b></p><p> 基于MapX的房地產(chǎn)專題信息管理</p><p><b> 摘 要</b></p><p> MapX
9、是一種基于Windows操作系統(tǒng)的ActiveX控件,它使用的地圖數(shù)據(jù)格式與MapInfo Professional是一致的,并且能夠?qū)崿F(xiàn)MapInfo Professional的大部分地圖的編輯功能以及空間的分析功能。同時(shí),MapX支持許多高級(jí)的編程語言如Visual Basic、Visual C++、Delphi等,這樣對(duì)于開發(fā)者而言,就可以在實(shí)際應(yīng)用中根據(jù)自身較為熟悉的編程語言輕松的實(shí)現(xiàn)地圖化功能。</p><
10、p> 正是由于MapX自身的各種優(yōu)勢(shì)使得MapX開發(fā)已經(jīng)在許多行業(yè)中得以應(yīng)用。在房地產(chǎn)專題信息管理中,利用MapX組件技術(shù)實(shí)現(xiàn)對(duì)房地產(chǎn)資源的可視化管理,能夠快速、準(zhǔn)確地了解房地產(chǎn)資源的空間分布情況以及其基本屬性信息。同時(shí)也能夠使某些屬性信息更加直觀的體現(xiàn)出來,為房地產(chǎn)管理部門在規(guī)劃決策上提供更為高效、便捷的服務(wù)。</p><p> 關(guān)鍵詞 MapInfo MapX 空間數(shù)據(jù)庫 房地產(chǎn)專題<
11、/p><p> ESTATE THEMATIC INFORMATION </p><p> MANAGEMENT BASED ON MAPX</p><p><b> ABSTRACT</b></p><p> MapX is a ActiveX controls based on Windows operating
12、 system,in which the data format is consistent with MapInfo Professional and it is able to achieve with MapInfo Professional most of the map editor and spatial analysis function.At the same time,the MapX supports many ad
13、vanced programming languages such as Visual Basic,Visual C++, Delphi , etc.Because of that the Programming Staff can choose a programming languages which is the most familiar for thenselves in the development process and
14、 achiev</p><p> It is because of the MapX has a variety of advantages for itself,the development of MapX has been applied in a lot of industries.In the eatate thematic information management , we can make u
15、se of the component management of MapX to achieve visual management of the estate resources , as well as we can also grasp the spatial distribution and the basic attribute information of the estate resources quickly and
16、accurately.In addition , it is also able to reflect some attributes information intuitivel</p><p> KEY WORDS MapInfo MapX Spatial Database Thematic Estate </p><p><b> 1緒論</b>&
17、lt;/p><p> 1.1 選題的背景及意義</p><p> 隨著國(guó)民經(jīng)濟(jì)的迅猛發(fā)展,我國(guó)房地產(chǎn)市場(chǎng)也變得充分開放與活躍。正是由于這種開放與活躍使得房地產(chǎn)信息變化與更新變得更加頻繁。同時(shí)為了適應(yīng)與發(fā)展現(xiàn)代化信息管理,對(duì)房地產(chǎn)管理部門提出了更高的標(biāo)準(zhǔn)。近年來,在GIS組件技術(shù)的支持下,房地產(chǎn)管理部門已經(jīng)著手建設(shè)以房地產(chǎn)為專題的信息管理系統(tǒng),以加快房地產(chǎn)管理的信息化、可視化步伐,改變傳統(tǒng)的
18、房地產(chǎn)管理模式[1]。</p><p> 傳統(tǒng)的管理方法是借助MIS信息系統(tǒng)來實(shí)現(xiàn)房地產(chǎn)專題信息管理,但是這種方法只能對(duì)一些簡(jiǎn)單的屬性信息進(jìn)行管理,無法實(shí)現(xiàn)房地產(chǎn)中的空間信息的管理以及空間信息與屬性信息的結(jié)合。伴隨著MapInfo技術(shù)的迅猛發(fā)展以及MapX組件技術(shù)的成熟,為解決上述問題提供了有效、可行的技術(shù)方法。MapX組件技術(shù)能夠?qū)崿F(xiàn)各種專題信息與實(shí)際的地理位置的結(jié)合,并借助計(jì)算機(jī)成圖和數(shù)據(jù)庫技術(shù)來實(shí)現(xiàn)信息的
19、采集與存儲(chǔ)以及信息的編輯與顯示。MapX組件技術(shù)不僅僅能夠?qū)臻g數(shù)據(jù)進(jìn)行相應(yīng)的管理而且還能夠?qū)?fù)雜而又繁多的屬性數(shù)據(jù)進(jìn)行高效、便捷的的處理。這種通過對(duì)空間信息(圖形信息)與非空間信息(屬性信息)的共同管理來克服傳統(tǒng)管理方法的局限性,為房地產(chǎn)管理部門提供相應(yīng)的信息分析和應(yīng)用服務(wù),也為規(guī)劃決策提供全面而又全新的輔助信息。為此,將MapX組件嵌入可視化工具中進(jìn)行開發(fā)將會(huì)使有關(guān)房地產(chǎn)專題信息管理系統(tǒng)功能更加強(qiáng)大和完善。</p>&
20、lt;p> 在基于MapX的房地產(chǎn)專題信息管理中主要是利用MapX組件為房地產(chǎn)管理部門開發(fā)相應(yīng)的房地產(chǎn)專題信息管理系統(tǒng),以便能夠準(zhǔn)確、高效地查詢各類用房用地的空間位置以及統(tǒng)計(jì)各類用房的占地面積、樓層數(shù)、房間數(shù)、房產(chǎn)價(jià)值等非空間數(shù)據(jù)信息,實(shí)現(xiàn)信息的可視化效果。</p><p> 1.2 國(guó)內(nèi)相關(guān)技術(shù)的研究現(xiàn)狀</p><p> 對(duì)于MapX本身而言,它定義了一個(gè)類體系,以一種高效
21、的方式來組織各實(shí)體的圖形數(shù)據(jù)、各圖層協(xié)調(diào)關(guān)系、各實(shí)體的屬性數(shù)據(jù)等對(duì)象。同時(shí)對(duì)于MapX編程而言,開發(fā)者可以根據(jù)自身所熟悉的任何可視化編程語言進(jìn)行開發(fā)而不需要有任何MapBasic知識(shí),對(duì)于大多數(shù)功能的實(shí)現(xiàn)可以直接通過設(shè)置MapX控件屬性來實(shí)現(xiàn)。隨著MapX組件技術(shù)的成熟,這種簡(jiǎn)易、便捷、高效的方式使其備受青睞。</p><p> 就房地產(chǎn)行業(yè)而言,人們對(duì)房屋的需求量逐漸增大,隨之房屋建設(shè)也猛然增加。在面對(duì)繁多的
22、房地產(chǎn)信息,各相關(guān)部門也以各種方式建立自己的房地產(chǎn)信息管理系統(tǒng)來實(shí)現(xiàn)對(duì)房地產(chǎn)專題信息的規(guī)范管理,從而減少了管理方面的工作量,也讓管理工作變得更加高效。但是獨(dú)立的信息管理系統(tǒng)具有其局限性,這種局限性主要表現(xiàn)是不能夠把空間幾何信息與屬性信息結(jié)合起來以便實(shí)現(xiàn)圖、文并茂,將一些信息直觀、清晰的表現(xiàn)出來。</p><p> 綜述所述,無論是從MapX組件技術(shù)方面還是在房地產(chǎn)本身需求方面,基于MapX組件來實(shí)現(xiàn)房地產(chǎn)專題信
23、息管理具有一定的可行性、經(jīng)濟(jì)性、實(shí)用性。目前國(guó)內(nèi)已經(jīng)有很多這樣的實(shí)例來證明,例如2002年福州市海洋與水產(chǎn)局基于MapX實(shí)現(xiàn)了海洋功能區(qū)劃管理信息系統(tǒng)、2007年蘭州大學(xué)基于MapX設(shè)計(jì)并實(shí)現(xiàn)了其校園房地產(chǎn)信息管理系統(tǒng),2007年南京工業(yè)大學(xué)基于MapX開發(fā)了其江浦校區(qū)的房地產(chǎn)信息管理系統(tǒng)等。</p><p> 1.3 課題涉及的相關(guān)技術(shù)</p><p> 基于MapX對(duì)房地產(chǎn)專題信息
24、進(jìn)行管理主要體現(xiàn)是將MapX組件嵌入VB、VC或者其他可視化開發(fā)工具中,以Access、SQL Server、Oracle等為空間數(shù)據(jù)庫進(jìn)行開發(fā)房地產(chǎn)管專題信息管理系統(tǒng)。這樣就能夠使房地產(chǎn)的某些屬性信息更加直觀的體現(xiàn)在地圖數(shù)據(jù)上,也能夠準(zhǔn)確地了解房地產(chǎn)資源的空間分布情況以及其基本屬性信息,真正意義上實(shí)現(xiàn)房地產(chǎn)資源的可視化管理。</p><p> 也就是說利用MapX對(duì)房地產(chǎn)專題信息進(jìn)行管理涉及的相關(guān)技術(shù)主要體現(xiàn)
25、著以下幾個(gè)方面:</p><p> 在MapX方面,不僅僅要詳細(xì)了解MapX控件的屬性、其對(duì)象的屬性和方法以及相應(yīng)的事件而且還需知道MapX地圖數(shù)據(jù)結(jié)構(gòu)。由于Map和MapInfo Professional在地圖數(shù)據(jù)結(jié)構(gòu)方面存在一致性,所以只有對(duì)MapInfo Professional地圖數(shù)據(jù)結(jié)構(gòu)的充分掌握才能做到MapX的高效開發(fā)。</p><p> 在開發(fā)語言與數(shù)據(jù)處理方面,Map
26、X支持多種高級(jí)編程語言如Visual Basic、Visual C++、Delphi等,對(duì)于開發(fā)者而言必須具備某種語言的基本知識(shí)。</p><p> 另外由于Access、SQL Server、Oracle等為空間數(shù)據(jù)庫自身都有其優(yōu)點(diǎn)和不足,所以開發(fā)者必須對(duì)其具有一定程度的了解,這樣才能根據(jù)實(shí)際開發(fā)情況選擇合理的數(shù)據(jù)庫,做到房地產(chǎn)信息管理系統(tǒng)的合理性和優(yōu)越性。</p><p> 在房地
27、產(chǎn)方面,也需要全面了解房地產(chǎn)各方面的信息如房產(chǎn)信息、地產(chǎn)信息,其中房產(chǎn)信息包括建筑信息、樓層信息、房間信息等,地產(chǎn)信息主要包括土地信息管理。另外還需根據(jù)具體的情況對(duì)某些信息制作專題地圖,以便實(shí)現(xiàn)地圖信息與屬性信息的雙向管理,也使屬性信息更加直觀化。</p><p> 1.4 課題討論的主要內(nèi)容</p><p> 本課題主要從以下幾個(gè)方面進(jìn)行討論:</p><p>
28、; 有關(guān)軟件MapInfo的簡(jiǎn)介,其中主要包括空間拓?fù)潢P(guān)系模型以及其數(shù)據(jù)組織形式。對(duì)該內(nèi)容的介紹主要是因?yàn)镸apX的數(shù)據(jù)組織形式與MapInfo Professional內(nèi)部的數(shù)據(jù)組織形式保持著一致性,只有對(duì)MapInfo Professional的數(shù)據(jù)組織機(jī)制做到足夠的了解才能實(shí)現(xiàn)MapX的充分開發(fā)。</p><p> MapX的研究,其中主要有包括MapX的基本介紹、MapX空間數(shù)據(jù)的組織機(jī)制、MapX控
29、件包含對(duì)象的基本模型以及基本屬性、MapX的顯著特征、MapX的使用程序GeoSet Manager的介紹。</p><p> 基于MapX的房地產(chǎn)信息管理系統(tǒng)的設(shè)計(jì)流程,其中主要包括房地產(chǎn)專題數(shù)據(jù)的獲取與相應(yīng)數(shù)據(jù)處理、系統(tǒng)的總體結(jié)構(gòu)。</p><p> 結(jié)合實(shí)例來實(shí)現(xiàn)基于MapX的房地產(chǎn)專題信息管理系統(tǒng)中各模塊功能以及其主要代碼分析。</p><p> 2
30、MapInfo軟件的簡(jiǎn)介</p><p> 2.1 MapInfo的空間拓?fù)潢P(guān)系模型</p><p> 對(duì)于任何地理信息系統(tǒng)而言其存在的基礎(chǔ)是空間拓?fù)潢P(guān)系模型的建立。在如今應(yīng)用較為廣泛的地理信息系統(tǒng)中,空間拓?fù)潢P(guān)系模型大多采用兩種結(jié)構(gòu)模型,其一是POLYVRT結(jié)構(gòu)模型,其二是空間實(shí)體結(jié)合空間索引所建立的模型。</p><p> 在上述兩種結(jié)構(gòu)模型中,MapIn
31、fo是利用空間實(shí)體結(jié)合空間索引建立的拓?fù)潢P(guān)系模型。80年代中后期出現(xiàn)的商用地理信息系統(tǒng),尤其是桌面地理信息系統(tǒng)大多采用這種方式,包括ESRI的ArcView,而采用POLYVRT模型的系統(tǒng)主要是以Arc/Info為代表的一些專業(yè)GIS產(chǎn)品[2]。</p><p> “空間實(shí)體+空間索引”指的是以“空間實(shí)體”為基礎(chǔ)進(jìn)行建立的一種模型??臻g實(shí)體指的是地理實(shí)體對(duì)應(yīng)的抽象形式,比如空間點(diǎn)、空間線以及空間面等類型。每個(gè)空
32、間實(shí)體對(duì)象都維護(hù)著自己的所有屬性,多個(gè)空間實(shí)體則可以組成一個(gè)圖層。</p><p> “空間實(shí)體+空間索引”模型是借助“空間索引”機(jī)制來完成對(duì)空間實(shí)體的查詢和定位??臻g索引的機(jī)制是通過已有的空間坐標(biāo)形成一個(gè)坐標(biāo)范圍,進(jìn)而在該范圍內(nèi)對(duì)空間對(duì)象進(jìn)行快速搜索。MapInfo采用R-Tree技術(shù)將空間實(shí)體的最小外接矩形(MBR)存儲(chǔ)在索引中,并按從大到小的順序進(jìn)行索引搜索[3]。只有建立了相應(yīng)的空間索引,才能快速地進(jìn)行
33、空間分析了。</p><p> “空間實(shí)體+空間索引”模型因其空間索引機(jī)制決定了公共結(jié)點(diǎn)的多次存儲(chǔ),進(jìn)而使存儲(chǔ)空間大量開銷,但是在數(shù)據(jù)的編輯和管理方面比較簡(jiǎn)便。而對(duì)于POLYVRT模型而言,雖然通過將一定數(shù)量的不同空間實(shí)體共用相同結(jié)點(diǎn)的方式來節(jié)省了必要的存儲(chǔ)空間,但是該模型的結(jié)構(gòu)變得繁雜,從而空間數(shù)據(jù)的可維護(hù)性大大降低了。</p><p> 此外,POLYVRT模型在組織空間實(shí)體數(shù)據(jù)方
34、面并不能嚴(yán)格定義為關(guān)系模型,而“空間實(shí)體+空間索引”模型在該方面存在“實(shí)體-關(guān)系”的關(guān)系模型,進(jìn)而可以和任何關(guān)系數(shù)據(jù)庫進(jìn)行綁定,并在關(guān)系數(shù)據(jù)庫中實(shí)現(xiàn)空間數(shù)據(jù)編輯與存儲(chǔ)管理。</p><p> 2.2 MapInfo數(shù)據(jù)組織形式</p><p> 在MapInfo中其數(shù)據(jù)的是以表的形式進(jìn)行數(shù)據(jù)的查詢、數(shù)據(jù)的存儲(chǔ)和管理。另外在MapInfo中存在兩種表,一種是數(shù)據(jù)表,可分為包含圖形(地圖)
35、對(duì)象的數(shù)據(jù)表和不包含圖形對(duì)象的數(shù)據(jù)表,例如電子表格或外部數(shù)據(jù)表,另一種表是柵格表,它是一種只能在地圖窗口中顯示的圖象,沒有數(shù)據(jù)表的記錄、字段和索引等表結(jié)構(gòu)[4]。這里我們只討論數(shù)據(jù)表的有關(guān)操作。</p><p> MapInfo可調(diào)用dBASE數(shù)據(jù)庫、MS Excel電子表格、MS Access數(shù)據(jù)庫、Lotus1-2-3和ASCll文件等。在MapInfo中可以通過“文件/打開表”命令來進(jìn)行文件類型的選擇。而
36、對(duì)于外部的表則可以通過“文件/另存為”命令轉(zhuǎn)換為MapInfo格式的數(shù)據(jù)表,進(jìn)而實(shí)現(xiàn)外部數(shù)據(jù)的編輯和管理。另外,MapInfo中也可以直接修改數(shù)據(jù)表的結(jié)構(gòu),如增加或刪除字段;改變字段的順序、名稱、類型、寬度或索引;從對(duì)話框中設(shè)定或確定表的投影;還可以刪除數(shù)據(jù)表、重命名數(shù)據(jù)表和緊縮表結(jié)構(gòu)以減少磁盤空間。</p><p> MapInfo采用雙數(shù)據(jù)庫存儲(chǔ)模式,即其空間數(shù)據(jù)與屬性數(shù)據(jù)是分開來存儲(chǔ)的。屬性數(shù)據(jù)存儲(chǔ)在關(guān)系
37、數(shù)據(jù)庫的若干屬性表中,而空間數(shù)據(jù)則以MapInfo的自定義格式保存于若干文件中,二者通過一定的索引機(jī)制聯(lián)系起來。為了提高查詢和處理效率,MapInfo采用層次結(jié)構(gòu)對(duì)空間數(shù)據(jù)進(jìn)行組織,即根據(jù)不同的專題將地圖分層(圖層還可以分成若干圖幅),每個(gè)圖層存儲(chǔ)為若干個(gè)基本文件[5]。</p><p> 2.2.1 屬性數(shù)據(jù)的表結(jié)構(gòu)文件.TAB</p><p> 屬性數(shù)據(jù)表結(jié)構(gòu)文件定義了地圖屬性數(shù)據(jù)
38、的表結(jié)構(gòu),包括字段數(shù)、字段名稱、字段類型和字段寬度、索引字段及相應(yīng)圖層的一些關(guān)鍵空間信息描述。.TAB文件實(shí)際上是一個(gè)文本文件,可以在寫字板中打開觀察其內(nèi)容[6]。</p><p> 2.2.2 屬性數(shù)據(jù)文件.DAT</p><p> 屬性數(shù)據(jù)文件中存放完整的地圖屬性數(shù)據(jù)。在文件頭之后,為表結(jié)構(gòu)描述,其后首尾相接地緊跟著各條具體地屬性數(shù)據(jù)記錄。</p><p>
39、 2.2.3 交叉索引文件.ID</p><p> 交叉索引文件記錄了地圖中每一個(gè)空間對(duì)象在空間數(shù)據(jù)文件(.MAP)中的位置指針。每四個(gè)字節(jié)構(gòu)成一個(gè)指針。指針排列的順序與屬性數(shù)據(jù)文件(.DAT)中屬性數(shù)據(jù)記錄存放的順序一致。交叉索引文件實(shí)際上是一個(gè)空間對(duì)象的定位表。</p><p> 2.2.4 空間數(shù)據(jù)文件.MAP</p><p> 具體包含了各地圖對(duì)象的
40、空間數(shù)據(jù)??臻g數(shù)據(jù)包括空間對(duì)象的幾何類型、坐標(biāo)信息和顏色信息等。另外還描述了與該空間對(duì)象對(duì)應(yīng)的屬性數(shù)據(jù)記錄在屬性數(shù)據(jù)文件(.DAT)中的記錄號(hào)。這樣,當(dāng)用戶從地圖上查詢某一地圖對(duì)象時(shí),就能夠方便地查到與之相關(guān)的屬性信息,其相應(yīng)的空間數(shù)據(jù)的索引機(jī)制如圖2-1。</p><p> 圖2-1 MapInfo的文件格式及數(shù)據(jù)關(guān)聯(lián)機(jī)制</p><p> 2.2.5 索引文件.IND</p
41、><p> 索引文件并不是必須的,只有當(dāng)用戶規(guī)定了數(shù)據(jù)庫的索引字段后mapinfo才會(huì)自動(dòng)產(chǎn)生索引文件。索引文件中對(duì)應(yīng)于每個(gè)索引字段都有一個(gè)索引表。在每個(gè)索引表中,先給出總的數(shù)據(jù)庫記錄數(shù)目,然后按照索引順序給出每條屬性數(shù)據(jù)記錄在對(duì)應(yīng)的索引字段處的具體屬性數(shù)據(jù)和該記錄在屬性文件(.DAT)及交叉索引文件(.ID)中的記錄號(hào)[7]。</p><p> 圖2-2表示了MapInfo的索引文件機(jī)制
42、。</p><p> 圖2-2 MapInfo的索引文件格式及數(shù)據(jù)關(guān)聯(lián)機(jī)制</p><p> 2.3 MapX的研究</p><p> 2.31 MapX的簡(jiǎn)介</p><p> MapX是MapInfo公司向用戶提供的具有強(qiáng)大地圖分析功能的ActiveX控件產(chǎn)品。由于它是一種基于Windows操作系統(tǒng)的標(biāo)準(zhǔn)控件,因而能支持絕大多數(shù)
43、標(biāo)準(zhǔn)的可視化開發(fā)環(huán)境如Visual C++、Visual Basic、Delphi、PowerBuilder等。編程人員在開發(fā)過程中可以選用自己最熟悉的開發(fā)語言,輕松地將地圖功能嵌入到應(yīng)用中,并且可以脫離MapInfo的軟件平臺(tái)運(yùn)行。利用MapX,能夠簡(jiǎn)單快速地在企業(yè)應(yīng)用中嵌入地圖化功能,增強(qiáng)企業(yè)應(yīng)用的空間分析能力,實(shí)現(xiàn)企業(yè)應(yīng)用的增值[8]。MapX采用基于MapInfo Professional的相同的地圖化技術(shù),可以實(shí)現(xiàn)MapInf
44、o Professional具有的絕大部分地圖編輯和空間分析功能。而且,MapX提供了各種工具、屬性和方法,實(shí)現(xiàn)這些功能是非常容易的。</p><p> 2.32 MapX的空間數(shù)據(jù)機(jī)制</p><p> 空間數(shù)據(jù)結(jié)構(gòu)是GIS的基石,GIS就是通過這種地理空間拓?fù)浣Y(jié)構(gòu)建立地理圖形的空間數(shù)據(jù)模型并定義各空間數(shù)據(jù)之間的關(guān)系,從而實(shí)現(xiàn)地理圖形和數(shù)據(jù)庫的結(jié)合。對(duì)于MapX而言,其空間數(shù)據(jù)模型如
45、圖2-3。</p><p> 圖2-3 MapX的空間數(shù)據(jù)結(jié)構(gòu)</p><p> 從橫向分析,MapX采取的空間數(shù)據(jù)結(jié)構(gòu)是基于空間實(shí)體和空間索引相結(jié)合的一種結(jié)構(gòu)??臻g實(shí)體是地理圖形的抽象模型,主要包括點(diǎn)、線、面三種類型。任何點(diǎn)、線、面實(shí)體都可以用直角坐標(biāo)點(diǎn)x、y來表示[9]。點(diǎn)可以表示成一組坐標(biāo)(x,y),對(duì)于線和面,則均被表示成多組坐標(biāo)(x1,y1;x2,y2;xn,yn)。空間索
46、引是查詢空間實(shí)體的一種機(jī)制,通過空間索引,就能夠以盡量快的速度查詢到給定坐標(biāo)范圍內(nèi)的空間實(shí)體及其所對(duì)應(yīng)的數(shù)據(jù)。</p><p> 從縱向分析,MapX的空間數(shù)據(jù)結(jié)構(gòu)是一種分層存放的結(jié)構(gòu)。用戶可以通過圖形分層技術(shù),根據(jù)自己的需求或一定的標(biāo)準(zhǔn)對(duì)各種空間實(shí)體進(jìn)行分層組合,將一張地圖分成不同圖層[10]。采用這種分層存放的結(jié)構(gòu),可以提高圖形的搜索速度,便于各種不同數(shù)據(jù)的靈活調(diào)用、更新和管理。</p>&l
47、t;p> 圖2-4 MapX的模型結(jié)構(gòu)</p><p> 2.33 MapX控件包含對(duì)象的基本模型以及基本屬性</p><p> MapX控件中最基本的組成單元是單個(gè)的對(duì)象(Object)和多個(gè)對(duì)象的集合(Collection)。每種對(duì)象和集合負(fù)責(zé)處理地圖某種功能。由圖2.4可以看出,位于頂層的是Map對(duì)象本身,其它均由Map對(duì)象繼承。而Layers對(duì)象、DataSets對(duì)象
48、、Annotations對(duì)象又是是Map對(duì)象的主要組成部分。其中Layer主要用于操作地圖的圖層,DataSet用于訪問空間數(shù)據(jù)表,Annotation用于在地圖上增加文本或者符號(hào)[11]。</p><p><b> ?。?)Map</b></p><p> 每個(gè)Map對(duì)象主要包括Datasets、Layers、Annotations三個(gè)對(duì)象集合。Map對(duì)象有一些主
49、要的屬性,如Zoom用來設(shè)置放大級(jí)別(在地圖上顯示的大小),Rotation控制地圖的旋轉(zhuǎn)角度,CenterX和CenterY用于設(shè)置x和y的坐標(biāo)系,這要取決于地圖的投影。</p><p> Map對(duì)象的許多屬性本身又是一個(gè)對(duì)象,比如說一幅地圖由多個(gè)圖層組成,則在一個(gè)Map對(duì)象中存在一個(gè)單獨(dú)的layers集合,其中包含所有圖層的信息。</p><p><b> (2)Laye
50、rs</b></p><p> 在MapX中,每張單獨(dú)的地圖都被表示成單獨(dú)的一個(gè)圖層,所有的圖層存儲(chǔ)在layers集合中。Layers集合由Layer對(duì)象組成,按順序編號(hào)為0到n。Layer對(duì)象由features對(duì)象組成,features對(duì)象又是由Feature對(duì)象組成,對(duì)應(yīng)于地圖中的點(diǎn)、線、區(qū)域或符號(hào)。</p><p> 最上面一層為L(zhǎng)ayers(1),Layers(2)
51、位于Layers(1)的下面,以次類推。最下面的圖層最先繪制,最上面的圖層最后繪制。在應(yīng)用程序中,合理地安排好每層在Layers中的順序是至關(guān)重要的。比如說有兩個(gè)圖層,一層為點(diǎn),一層為區(qū)域,則應(yīng)將點(diǎn)層放到區(qū)域?qū)拥纳戏?,否則區(qū)域會(huì)將點(diǎn)覆蓋。</p><p> 另外,在進(jìn)行地圖選擇操作時(shí),根據(jù)要求調(diào)整圖層的順序也是十分重要的。MapX中的選擇工具總是從可選擇圖層中的最上層開始選擇,如果在地圖上的同一位置存在多個(gè)位于
52、不同層的地圖對(duì)象,其結(jié)果是很難精確地選擇到目標(biāo)對(duì)象,因此,最好將被選擇圖層提到最上層顯示[12]。</p><p> (3)GeoSets</p><p> GeoSet是在GeoManager中建立好的.GST文件,類似MapInfo中的WorkSpace概念,是圖層及其設(shè)置的集合,控制程序中顯示的地圖。也可以在運(yùn)行階段設(shè)置GeoSet,此時(shí)將導(dǎo)致已經(jīng)加載的所有圖層和DataSet被
53、刪除而由GeoSet中定義的圖層所代替。如果單純地想刪除所有圖層,只需給GeoSet賦一個(gè)空字符串即可。</p><p> 可以使用GeoSet Manager程序來管理GeoSet文件(*.GST)。默認(rèn)情況下.GST文件存儲(chǔ)在…\\mapx\maps目錄下,可以調(diào)用GeoDictionary Manager程序進(jìn)行修改,指向用戶程序數(shù)據(jù)所在的位置。</p><p> ?。?)Data
54、sets</p><p> Datasets用于實(shí)現(xiàn)地圖與數(shù)據(jù)的綁定。舉例說明,有一個(gè)關(guān)于城市銷售情況的MSAccess數(shù)據(jù)庫和一張?jiān)摮鞘械牡貓D,則可以將二者綁定,在地圖上形象地顯示出各城市銷售業(yè)績(jī)的趨勢(shì),這一點(diǎn)是表格數(shù)據(jù)無法做到的。</p><p> 建立地圖信息與屬性數(shù)據(jù)之間聯(lián)系的過程稱之為自動(dòng)綁定或自動(dòng)匹配(autobinding /automatching)。要實(shí)現(xiàn)這一過程,必
55、須首先將地圖在GeoDictionary中注冊(cè)。</p><p> 屬性數(shù)據(jù)表示的可視化使得創(chuàng)建專題地圖成為可能;</p><p> 數(shù)據(jù)綁定"Putting Your Data on the Map";</p><p> 專題地圖"Theme Mapping and Analysis";</p><
56、p> (5)Annotations</p><p> Annotations集合提供了操縱地圖中文字和符號(hào)的簡(jiǎn)單方法。Annotations位于所有其它圖層的上方并且不與任何數(shù)據(jù)連接,有點(diǎn)兒象MapInfo中的透明圖層。Annotations包括以下主要的屬性與方法:AddSymbol在Annotations中增加符號(hào),符號(hào)類型使用Map.DefaultStyle定義;AddText在Annotatio
57、ns中增加文本;Remove刪除特定的標(biāo)注.;Type取值為miSymbolAnnotation或miTextAnnotation。</p><p> Annotations還有一個(gè)非常重要的屬性Graphic,其定義為Graphic對(duì)象,在該對(duì)象中包含了符號(hào)或文本的樣式、位置等信息,即Graphic的Caption、Position、Style、X、Y屬性。如Annotations的Type屬性定義為miTe
58、xtAnnotation,則可以定義Graphic的Caption屬性設(shè)置標(biāo)注的字符串[13]。</p><p><b> (6)可創(chuàng)建對(duì)象</b></p><p> 在MapX對(duì)象模型中,以下對(duì)象是可以被創(chuàng)建的:</p><p> AffineTransform、BindLayer、BitmapSymbols、CoordSys、Datu
59、m、Feature、Fields、LayerInfo、Map、ODBCQueryInfo、Parts、Point、Points、Rectangle、RowValue、RowValues、Style、Variables、NotesQueryInfo、NotesViewInfo。</p><p> 在Delphi中創(chuàng)建這些對(duì)象需要注意一點(diǎn),即在后面注明MapX的版本。如在本課題實(shí)現(xiàn)過程中,由于使用的是MapX
60、4.0版本,因此創(chuàng)建語句要寫成如下形式:</p><p> s:=CreateOleObject('MapX.Style.3');</p><p> 2.34 MapX的顯著特征</p><p><b> ?。?)專題地圖</b></p><p> 將數(shù)據(jù)庫表中的特定值賦給地圖對(duì)象的顏色、圖案或符號(hào)
61、從而創(chuàng)建不同的專題地圖,也可創(chuàng)建范圍值、等級(jí)符號(hào)、點(diǎn)密度、獨(dú)立值、直方圖和餅圖6種方式的專題地圖[14];</p><p><b> ?。?)可深入的地圖</b></p><p> 通過簡(jiǎn)單的點(diǎn)擊方式可瀏覽與地圖對(duì)象相連的數(shù)據(jù)信息;</p><p><b> ?。?)數(shù)據(jù)綁定</b></p><p&g
62、t; 地圖可通過嵌入OCX的容器與數(shù)據(jù)庫相連,并提供了幾種不同的數(shù)據(jù)綁定方式包括ZIP Code-level地理編碼法;</p><p><b> ?。?)注解</b></p><p> 可提供方向、加亮顯示特殊數(shù)據(jù),還可加入文本、符號(hào)、表格使地圖信息更加豐富直觀;</p><p><b> ?。?)圖層</b><
63、;/p><p> 顯示和控制圖層的縮放、使用或創(chuàng)建無縫地圖、還可支持一些特殊的應(yīng)用,比如用于實(shí)時(shí)跟蹤的活動(dòng)圖層和可繪制特殊圖形的用戶自定義圖層(如logo圖案);</p><p><b> ?。?)柵格圖象</b></p><p> 采用柵格圖象作為地圖的基礎(chǔ)圖層可使其它圖層有一個(gè)更細(xì)致的背景;</p><p><
64、b> (7)自動(dòng)標(biāo)記</b></p><p> 自動(dòng)在地圖上加入標(biāo)記,同時(shí)標(biāo)記屬性和顯示;</p><p><b> (8)選擇</b></p><p> 可在地圖上拖動(dòng)鼠標(biāo)以在圓、矩形或特定的點(diǎn)上選擇一個(gè)或多個(gè)對(duì)象或記錄以供分析;</p><p><b> (9)對(duì)象庫</b
65、></p><p> 可以使用FeatureFactory對(duì)象,創(chuàng)建、聯(lián)接或刪除點(diǎn)、線、區(qū)域圖形對(duì)象;</p><p><b> ?。?0)工具</b></p><p> 使用MapX的標(biāo)準(zhǔn)工具或根據(jù)需要自己創(chuàng)建的自定義工具,用戶可通過點(diǎn)擊或拖拽對(duì)地圖直接進(jìn)行操作;</p><p><b> ?。?1
66、)地圖編輯</b></p><p> 允許用戶添加、修改、刪除地圖上的文本、編輯區(qū)域、點(diǎn)等特殊對(duì)象;</p><p> ?。?2)投影與坐標(biāo)系</p><p> MapX允許用戶調(diào)整地圖的顯示、用本地坐標(biāo)系處理X-Y坐標(biāo)數(shù)據(jù);</p><p> ?。?3)遠(yuǎn)程空間數(shù)據(jù)服務(wù)器</p><p> 可以訪問
67、存儲(chǔ)在Oracle8i和MapInfo SpatialWare中的遠(yuǎn)程地圖數(shù)據(jù)??臻g數(shù)據(jù)服務(wù)器如SpatialWare和Oracle8i等都提供了先進(jìn)的查詢處理能力,提高了空間數(shù)據(jù)組織的性能。將空間數(shù)據(jù)存儲(chǔ)到關(guān)系型數(shù)據(jù)庫中,可以增加應(yīng)用程序的靈活性,同時(shí)也要求在地圖編輯和大數(shù)據(jù)集方面做更多的工作。</p><p> 2.35MapX的使用程序GeoSet Manager的介紹</p><p&
68、gt; 在MapX中,地圖是分層顯示的,每一層都對(duì)應(yīng)一個(gè)表,即.TAB文件。我們的工作往往不是只針對(duì)某一個(gè)表,如果每次開始工作都重復(fù)性地將所用到的表一一打開,不僅麻煩,而且浪費(fèi)時(shí)間,同時(shí)通過使用Geoset Manager,可以將所有的工作表集中在一起,連同每一層的設(shè)置一并存儲(chǔ)到一個(gè).GST文件中,下次使用時(shí),只需打開此文件就可以了[15]。</p><p> 在Geoset Manager中,可以瀏覽已定義
69、的GeoSet,也可以建立新的GeoSet可以調(diào)出Layers控制對(duì)話框?qū)γ恳粓D層分別進(jìn)行設(shè)置,還可以改變投影方式。另外,在tools菜單中提供了Register Layers in GeoDictionary項(xiàng),可以將當(dāng)前.GST中的某些或全部.TAB文件直接注冊(cè)到GeoDictionary中。</p><p> 3基于MapX的房地產(chǎn)專題信息管理系統(tǒng)的設(shè)計(jì)流程</p><p> 借
70、助MapX來實(shí)現(xiàn)房地產(chǎn)專題信息管理的主要形式是基于MapX的房地產(chǎn)專題信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。在以上兩節(jié)中詳細(xì)介紹了MapX控件的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)組織形式、對(duì)象模型和對(duì)象的基本屬性以及對(duì)象的基本方法,本節(jié)將著重介紹利用MapX控件對(duì)房地產(chǎn)專題信息系統(tǒng)的設(shè)計(jì)過程。</p><p> 3.1房地產(chǎn)數(shù)據(jù)的獲取與處理</p><p> 通過MapX控件的數(shù)據(jù)結(jié)構(gòu)及其組織形式,我們可以了解到借助
71、MapX控件實(shí)現(xiàn)房地產(chǎn)專題信息管理系統(tǒng)一個(gè)重要的部分是相關(guān)數(shù)據(jù)的獲取與處理,當(dāng)然這也是最基本的環(huán)節(jié),只有處理好數(shù)據(jù)方面的內(nèi)容才能順利利用MapX進(jìn)行房地產(chǎn)專題信息系統(tǒng)的開發(fā)。</p><p> 在數(shù)據(jù)的處理方面既包括了房地產(chǎn)空間數(shù)據(jù)的獲取也包括了房地產(chǎn)屬性數(shù)據(jù)的獲取。其中房地產(chǎn)空間數(shù)據(jù)的獲取主要有以下幾種方式:</p><p><b> 利用數(shù)字化儀獲取</b>&
72、lt;/p><p> 使用數(shù)字化儀,利用大比例尺數(shù)字化測(cè)圖技術(shù)獲取原始的空間數(shù)據(jù)再利用專業(yè)成圖軟件(如:南方Cass7.0)繪制平面圖。由于其存圖方式為Dwg格式,則需要進(jìn)行一定格式轉(zhuǎn)換,獲得MapInfo可以識(shí)別的數(shù)據(jù)格式,進(jìn)而轉(zhuǎn)換為Gst格式(實(shí)例開發(fā)的具體過程可以參考下一節(jié)中的“應(yīng)用實(shí)例中實(shí)現(xiàn)房地產(chǎn)地圖的嵌入”)。對(duì)于這種方式獲取的數(shù)據(jù)比較精確,同時(shí)也是比較常用的方式。</p><p>
73、;<b> 使用掃描儀獲取</b></p><p> 顧名思義就是借助掃描儀對(duì)所收集的圖紙進(jìn)行掃描以便獲取一定格式的數(shù)據(jù)。由于掃描后數(shù)據(jù)結(jié)構(gòu)是以柵格的形式存儲(chǔ)的,所有還需利用相關(guān)的圖形整理軟件對(duì)圖像進(jìn)行質(zhì)量方面的改善如圖像的細(xì)化、拼接、矢真處理等,最終是將柵格數(shù)據(jù)轉(zhuǎn)變?yōu)槭噶繑?shù)據(jù)。此中方式在空間數(shù)據(jù)的獲取方面更加自動(dòng)化、智能化,對(duì)于開發(fā)者而言是一種方便可靠的方式,但是這種方法對(duì)圖紙的質(zhì)量有
74、著較高的要求。</p><p><b> 利用計(jì)算機(jī)獲取</b></p><p> 該方式是通過人工的方式利用計(jì)算機(jī)對(duì)地圖數(shù)據(jù)的輸入,雖然減少了許多外業(yè)工作但是大大增加了內(nèi)業(yè)的工作量。</p><p><b> 通過購買的方式獲取</b></p><p> 眾所周知作為信息商品的電子地圖已經(jīng)
75、被廣泛地應(yīng)用到各個(gè)行業(yè)中,目前電子地圖主要包括地形圖、遙感影象圖以及各種專題圖等。</p><p> 從相關(guān)部門進(jìn)行數(shù)字拷貝獲取</p><p> 通過相關(guān)部門提供的標(biāo)準(zhǔn)數(shù)據(jù)無文件并借助專業(yè)軟件進(jìn)行數(shù)據(jù)的轉(zhuǎn)換,最終得到可以用MapInfo打開的數(shù)據(jù)格式。對(duì)于MapInfo而言并沒有向外界明確的指出MapInfo軟件的數(shù)據(jù)結(jié)構(gòu),但是它提供了可以用來格式轉(zhuǎn)換的其他數(shù)據(jù)結(jié)構(gòu)如MIF和MID格
76、式以及AUTOCAD所支持的DXF格式的數(shù)據(jù)。</p><p> 在空間數(shù)據(jù)處理方面主要是借助軟件進(jìn)行一定格式的轉(zhuǎn)換最終生成能夠嵌入MapX控件的Gst格式的電子圖。</p><p> 另外對(duì)于屬性數(shù)據(jù)的獲取主要是從相關(guān)部門收集而來或者經(jīng)過實(shí)地的調(diào)查與統(tǒng)計(jì)形成相關(guān)的統(tǒng)計(jì)文檔。在屬性數(shù)據(jù)獲取之后,對(duì)其的處理也是比較關(guān)鍵的部分。通常情況可以借助MapInfo軟件結(jié)合電子地圖對(duì)屬性數(shù)據(jù)進(jìn)行錄
77、入,但是由于屬性數(shù)據(jù)復(fù)雜繁多會(huì)導(dǎo)致電子圖的在加載、修改、查詢方面比較緩慢。另外從商業(yè)的角度,這些屬性數(shù)據(jù)具有一定的商業(yè)價(jià)值,其保密性是必要的,所有在屬性數(shù)據(jù)處理過程中通過建立外接數(shù)據(jù)庫并進(jìn)行屬性數(shù)據(jù)的錄入是一種有效的方式。</p><p> 3.2房地產(chǎn)數(shù)據(jù)庫的設(shè)計(jì)</p><p> 房地產(chǎn)專題信息管理系統(tǒng)中其涉及的數(shù)據(jù)有兩種:一種是圖形數(shù)據(jù),另一中就是屬性數(shù)據(jù)。其中圖形數(shù)據(jù)主要是采用
78、MapInfo軟件來存儲(chǔ)空間數(shù)據(jù),并依此為標(biāo)準(zhǔn)生成能夠嵌入MapX控件的Gst格式圖形數(shù)據(jù);而對(duì)于屬性數(shù)據(jù)而言,雖然MapInfo軟件也提供了一定格式的存儲(chǔ)表,但是由于房地產(chǎn)信息的商業(yè)性和保密性,所以在屬性數(shù)據(jù)的管理方面是通過建立外接數(shù)據(jù)庫如Access、SQL Server、Oracle等數(shù)據(jù)庫來完成的。</p><p> 空間數(shù)據(jù)庫是利用MapInfo軟件并借助其內(nèi)部機(jī)制進(jìn)行管理的。屬性數(shù)據(jù)則需要根據(jù)實(shí)際情
79、況決定是否采用外接數(shù)據(jù)庫并通過一定的機(jī)制將其綁定到MapX控件中。對(duì)于房地產(chǎn)而言為了能夠高效運(yùn)作所開發(fā)的程序則需要采用外接數(shù)據(jù)庫。在外接屬性數(shù)據(jù)庫的建立過程中并不是盲目的而是根據(jù)房地產(chǎn)本身的種類來實(shí)現(xiàn)其建立。一類是地產(chǎn)方面,地產(chǎn)是房地產(chǎn)的基本組成部分,所以在屬性數(shù)據(jù)建立一個(gè)地產(chǎn)屬性表是必要的。在地產(chǎn)屬性表中通過設(shè)立必要的字段來存儲(chǔ)與管理,比如地產(chǎn)名稱、面積、用途、權(quán)利人的等字段,另外還需要根據(jù)具體情況建立相應(yīng)的索引字段,以便能夠關(guān)聯(lián)實(shí)體
80、圖形和其他的屬性表。而另一類是房產(chǎn)方面,房產(chǎn)是房地產(chǎn)的重要組成部分也是房地產(chǎn)信息管理主要研究的方面。在外接數(shù)據(jù)庫中同樣需要建立一個(gè)房產(chǎn)信息表并在表中建立一定的字段來完成對(duì)房產(chǎn)信息的說明,如對(duì)建筑物建立一個(gè)表并設(shè)立建筑物名稱、單位、單元號(hào)、房間數(shù)、樓層數(shù)、竣工時(shí)間、建筑物面積、權(quán)屬等字段;在房產(chǎn)項(xiàng)目管理方面,可以建立項(xiàng)目信息表,并設(shè)立項(xiàng)目名稱、開發(fā)商、項(xiàng)目進(jìn)度、項(xiàng)目坐落、開工時(shí)間、竣工時(shí)間等;在樓盤管理方面,可以建立樓盤信息表并設(shè)立樓盤名
81、稱、房號(hào)、房?jī)r(jià)、房產(chǎn)坐落、面積、朝</p><p> 3.2將房地產(chǎn)屬性數(shù)據(jù)與地圖數(shù)據(jù)綁定</p><p> 將房地產(chǎn)屬性數(shù)據(jù)與地圖數(shù)據(jù)綁定指的是借助MapX控件提供的方法和相關(guān)接口將其他數(shù)據(jù)庫的數(shù)據(jù)導(dǎo)入到MapX控件的過程。在進(jìn)行房地產(chǎn)屬性數(shù)據(jù)的綁定到地圖后,便可以利用MapX控件輕松快捷的創(chuàng)建對(duì)應(yīng)的應(yīng)用程序。同時(shí)也可以將屬性數(shù)據(jù)作為圖元的方式進(jìn)行查看以及可以基于該屬性數(shù)據(jù)創(chuàng)建一些專
82、題圖,實(shí)現(xiàn)空間數(shù)據(jù)與屬性數(shù)據(jù)的雙向管理。</p><p> 數(shù)據(jù)的綁定是實(shí)現(xiàn)基于MapX的房地產(chǎn)專題信息管理系統(tǒng)的關(guān)鍵,那么在MapX控件中是如何實(shí)現(xiàn)房地產(chǎn)數(shù)據(jù)的綁定呢?對(duì)于這一問題,MapX控件提供了兩種解決辦法其中包括BindLayer數(shù)據(jù)綁定和借助MapX的Datasets集合進(jìn)行數(shù)據(jù)綁定。</p><p> 3.2.1 BindLayer數(shù)據(jù)綁定</p><
83、p> BindLayer數(shù)據(jù)綁定指的是根據(jù)數(shù)據(jù)源中的數(shù)據(jù)在MapX地圖中指定的位置創(chuàng)建點(diǎn)圖層。在BindLayer數(shù)據(jù)綁定過程中首先需要做的是創(chuàng)建一個(gè)BindLayer對(duì)象。創(chuàng)建BindLayer對(duì)象的具體過程是申明一個(gè)BindLayer類型數(shù)據(jù)并根據(jù)具體的數(shù)據(jù)源設(shè)置BindLayer的屬性,而BindLayer對(duì)象的屬性見表3-1。</p><p> 表3-1 BindLayer對(duì)象的屬性</p
84、><p> 在創(chuàng)建BindLayer對(duì)象后接下來就是利用該對(duì)象實(shí)現(xiàn)數(shù)據(jù)的綁定。在BindLayer對(duì)象進(jìn)行數(shù)據(jù)綁定的過程中會(huì)出現(xiàn)以下兩種情況:</p><p> 其一源數(shù)據(jù)中存在X-Y坐標(biāo)時(shí)是根據(jù)(x,y)坐標(biāo)指定的位置創(chuàng)建點(diǎn)圖層以實(shí)現(xiàn)數(shù)據(jù)的綁定。這種情況下還必須將BindLayer對(duì)象的LayerType屬性定義為miBindLayerTypeXY以及定義其RefColumn1屬性名或者
85、相對(duì)應(yīng)索引同時(shí)也要定義其RefColumn2屬性為數(shù)據(jù)源中涉及Y坐標(biāo)的字段名或者相對(duì)應(yīng)索引。</p><p> 第二種情況則是通過數(shù)據(jù)源中包含的相關(guān)參考信息來確定點(diǎn)被創(chuàng)建的位置從而實(shí)現(xiàn)數(shù)據(jù)的綁定。當(dāng)出現(xiàn)這種情況時(shí),需要把BindLayer對(duì)象的LayerType屬性定義為miBindLayerTypePointRef以及定義其RefColumn1屬性為數(shù)據(jù)源中相關(guān)參考信息的字段名或者相對(duì)應(yīng)索引同時(shí)也要將其Ref
86、erenceLayer屬性設(shè)置為所引用的具有參考信息文件的名稱。另外還需說明的是其RefColumn2屬性,如果其RefColumn1屬性不唯一則需要定義RefColumn2為另一個(gè)參考信息的名稱;反之則不需要設(shè)置RefColumn2。</p><p> 3.2.2借助MapX的Datasets集合進(jìn)行數(shù)據(jù)綁定</p><p> 借助MapX的Datasets集合進(jìn)行數(shù)據(jù)綁定的過程中是
87、可以不用指出數(shù)據(jù)源本身所具備的的屬性,這是因?yàn)镸apX具有自動(dòng)分析數(shù)據(jù)的功能并會(huì)以一種最佳的方式將數(shù)據(jù)源綁定到MapX地圖上。</p><p> 同樣該綁定方式也有兩種方法,其一是在設(shè)計(jì)階段利用Visual Basic中的數(shù)據(jù)綁定控件并結(jié)合MapX地圖對(duì)象的Dataset屬性來完成。另一中方法使用Datasets集合的Add方法即Datasets.Add方法,這也是數(shù)據(jù)綁定時(shí)常用的方法。下面便是對(duì)Dataset
88、s.Add方法的詳細(xì)介紹。</p><p> Datasets.Add方法在編程中的語法:Datasets.Add Type,SourceData,[Name],[Geofield],[SecondaryGeofield],[BindLayer],[Fields],[Dynamic]</p><p> 說明:上述語法中[方括號(hào)]中的參數(shù)是可選參數(shù),即在其8個(gè)參數(shù)中前兩個(gè)是必選的后6個(gè)參
89、數(shù)則可以根據(jù)具體情況適當(dāng)選擇。其中Type參數(shù)是指添加到Datasets集合的數(shù)據(jù)類型,該參數(shù)所能接受的參數(shù)見表3-2。</p><p> 表3-2 參數(shù)Type所接受的類型數(shù)據(jù)</p><p> 語法中SourceData參數(shù)是取決于外接數(shù)據(jù)源的類型,實(shí)際是該參數(shù)是MapX鏈接外部數(shù)據(jù)源的一個(gè)接口,數(shù)據(jù)的綁定也就是通過該接口來完成的。Name參數(shù)是數(shù)據(jù)集合中的字符串,加入Datase
90、ts集合后該參數(shù)具有唯一的編號(hào)。作為一個(gè)可選參數(shù),如果再綁定的過程中未指定,MapX將自動(dòng)為其編號(hào)。Geofield參數(shù)是包含源數(shù)據(jù)中地理信息的字段名稱或?qū)?yīng)的索引。如果在綁定的過程中未將其指定,則MapX將自動(dòng)查找各個(gè)字段以確定GeoDictionary文件中包含地理信息的字段。所匹配的字段并不一定是有關(guān)地理數(shù)據(jù)的字段,也可以是具有唯一關(guān)鍵字的字段。另外作為源數(shù)據(jù)中的GeoField字段一定要是唯一的,只有這樣才能正確的將源數(shù)據(jù)綁定的
91、MapX地圖上進(jìn)行查看,否則MapX將重復(fù)的值進(jìn)行數(shù)據(jù)值上的合計(jì)。當(dāng)然,如果在明確知道源數(shù)據(jù)中存在地理信息的字段的情況下應(yīng)人工指定,這樣會(huì)減少M(fèi)apX自動(dòng)查找的過程進(jìn)而提高程序的運(yùn)行效率。與Geofield參數(shù)具有一定的相似性的是SecondaryGeofield參數(shù),該參數(shù)出現(xiàn)的唯一可能是數(shù)據(jù)綁定過程中圖層對(duì)應(yīng)的關(guān)鍵字不具有唯一性,也只有在這中情況下該參數(shù)才是有效的</p><p> 上述已經(jīng)對(duì)數(shù)據(jù)綁定方法進(jìn)
92、行了詳細(xì)的介紹,但是要完成數(shù)據(jù)的綁定必須在使用這些方法前將源數(shù)據(jù)中包含地理數(shù)據(jù)的的關(guān)鍵字段編入為索引字段并且還要在GeoDictionary中指定地圖和其關(guān)鍵字段。另外需要說明的是在Datasets.Add方法中涉及的GeoDictionary文件是能夠查找與源數(shù)據(jù)綁定的相關(guān)信息。</p><p> 3.3基于MapX房地產(chǎn)專題信息管理系統(tǒng)的模型以及功能設(shè)計(jì)</p><p> 由于不同
93、區(qū)域的房產(chǎn)和地產(chǎn)在實(shí)際生活中存在一定的差異所以基于MapX房地產(chǎn)信息管理系統(tǒng)的建立是具有較強(qiáng)的區(qū)域性和針對(duì)性。該系統(tǒng)是一種信息化管理的現(xiàn)代化工具,其主要用戶是房地產(chǎn)管理部門。為了更為全面的實(shí)現(xiàn)管理方面的功能,對(duì)系統(tǒng)的需求性分析是建立該系統(tǒng)的重要環(huán)節(jié)。</p><p> 該系統(tǒng)的建立首先是和相關(guān)的房地產(chǎn)管理部門溝通,由房地產(chǎn)管理者提出其對(duì)該系統(tǒng)在功能和運(yùn)行環(huán)境等其他方面的總體要求,然后由開發(fā)者在滿足客服需求同時(shí)進(jìn)
94、行系統(tǒng)的調(diào)試,并指出初級(jí)階段的開發(fā)法案,其中包括開發(fā)所用到的編程語言、開發(fā)運(yùn)行的環(huán)境、數(shù)據(jù)庫技術(shù)、系統(tǒng)總體功能設(shè)計(jì)等,并再次和相關(guān)管理部門進(jìn)行多次協(xié)調(diào)和商定,以及對(duì)相關(guān)的文檔、圖形資料、數(shù)據(jù)資料等進(jìn)行整理、歸納、提煉,最終確定開發(fā)方案。只有對(duì)系統(tǒng)的需求進(jìn)行必要的分析才能避免在開發(fā)中出現(xiàn)頻繁的變動(dòng),影響工程周期。</p><p> 完成系統(tǒng)需求性分析后,接下來的工作是對(duì)系統(tǒng)總體結(jié)構(gòu)的設(shè)計(jì)。在相關(guān)部門需求的基礎(chǔ)上,
95、系統(tǒng)的總體結(jié)構(gòu)一般會(huì)包括:MapX地圖數(shù)據(jù)的管理、系統(tǒng)形成的界面、系統(tǒng)實(shí)現(xiàn)的功能、房地產(chǎn)數(shù)據(jù)的存儲(chǔ)與管理、數(shù)據(jù)的顯示以及相關(guān)數(shù)據(jù)的錄入與輸出等。雖然基于MapX的房地產(chǎn)信息管理系統(tǒng)具有一定的區(qū)域性和針對(duì)性,但是其系統(tǒng)總體結(jié)構(gòu)都會(huì)涉及上述的所介紹的各個(gè)方面或者其中某幾個(gè)方面。</p><p> 在系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)完成后便可以根據(jù)該系統(tǒng)的總體結(jié)構(gòu)來完成系統(tǒng)功能方面的規(guī)劃和設(shè)計(jì)。在系統(tǒng)功能設(shè)計(jì)方面主要包括了以下幾個(gè)方
96、面:</p><p> 其一是房地產(chǎn)地圖操作方面,其中有涉及了地圖的基本操作如放大、縮小、漫游、居中和地圖的其他操作如面積測(cè)量、距離測(cè)量、圖層控制;其二是信息查詢方面,信息的查詢是有包含了地圖信息查詢即通過從地圖上指定后顯示對(duì)應(yīng)的屬性信息以及通過屬性信息來定位圖形數(shù)據(jù);同時(shí)還包含了房產(chǎn)信息查詢;另外一方面就是數(shù)據(jù)庫的管理,數(shù)據(jù)庫的管理過程主要涉及了數(shù)據(jù)的錄入、輸出、編輯、修改、刪除等方面。在數(shù)據(jù)分析方面如房地產(chǎn)
97、專題圖的制作:此外還有一些輔助功能如實(shí)時(shí)顯示當(dāng)前坐標(biāo)、鷹眼視圖、常用功能的快捷設(shè)置等,輔助方面的功能是根據(jù)實(shí)際需要而選擇的,同時(shí)也是為了實(shí)現(xiàn)系統(tǒng)的便捷管理。需這里需要說明的是由于房地產(chǎn)本身具有的區(qū)域性和針對(duì)性,在系統(tǒng)功能方面的要求需要根據(jù)實(shí)際情況進(jìn)行某個(gè)或者某些方面的開發(fā)。</p><p> 4結(jié)合實(shí)例開發(fā)深入了解基于MapX的房地產(chǎn)專題信息管理</p><p> 4.1開發(fā)實(shí)例的介紹
98、</p><p> 該實(shí)例開發(fā)是以河南工程學(xué)院校本部1:1000地形圖為房地產(chǎn)專題信息的主要資料,并依此為依據(jù)獲取空間數(shù)據(jù)如校園內(nèi)各部分實(shí)體的坐標(biāo)、平面面積、地形資料等以及相關(guān)房產(chǎn)和地產(chǎn)的數(shù)據(jù)文檔。同時(shí)該實(shí)例開發(fā)是以Visual Basic6.0作為開發(fā)環(huán)境并以Access作為數(shù)據(jù)庫平臺(tái),最終完成基于MapX的有關(guān)河南工程學(xué)院校本部的房地產(chǎn)的信息管理系統(tǒng)。</p><p> 在經(jīng)過與校
99、相關(guān)房地產(chǎn)管理部門的溝通與商定,以及對(duì)該校區(qū)相關(guān)圖形數(shù)據(jù)、房地產(chǎn)的屬性資料等文檔的分析與歸納,最終形成了對(duì)該實(shí)例系統(tǒng)的功能結(jié)構(gòu)設(shè)計(jì)的方案。該實(shí)例系統(tǒng)中其功能結(jié)構(gòu)的設(shè)計(jì)包括以下幾個(gè)方面:(1)系統(tǒng)界面的設(shè)計(jì);(2)房地產(chǎn)地圖數(shù)據(jù)管理;(3)房地產(chǎn)屬性數(shù)據(jù)的存儲(chǔ)與管理;(4)房地產(chǎn)屬性信息和地圖數(shù)據(jù)的雙向聯(lián)系。同時(shí)根據(jù)該實(shí)例系統(tǒng)的功能結(jié)構(gòu)并提出了系統(tǒng)功能的設(shè)計(jì)方案,對(duì)于該系統(tǒng)要完成的功能如下:(1)地圖的操作功能,其中包括地圖放大、縮小、居
100、中、漫游、圖層控制、面積測(cè)量、距離測(cè)量;(2)房地產(chǎn)專題地圖的制作;(3)數(shù)據(jù)庫的管理,其中涉及了數(shù)據(jù)的查詢、修改、刪除等基本管理操作;(4)房地產(chǎn)信息查詢功能,其中包括了地圖數(shù)據(jù)的點(diǎn)選擇并以此顯示相關(guān)的屬性信息。另外通過相關(guān)的屬性數(shù)據(jù)來查詢地圖位置;(5)實(shí)例系統(tǒng)需要的輔助功能,該功能主要鷹眼視圖、實(shí)時(shí)顯示當(dāng)前坐標(biāo)、文件路徑的顯示、捕捉功能、地圖的輸出。</p><p> 最終形成開發(fā)系統(tǒng)如圖4-1:<
101、/p><p> 圖4-1 房地產(chǎn)專題信息管理系統(tǒng)</p><p> 4.2應(yīng)用實(shí)例中實(shí)現(xiàn)房地產(chǎn)地圖的嵌入</p><p> 在房地產(chǎn)開發(fā)實(shí)例中地圖的嵌入是最基本的環(huán)節(jié),具體步驟如下:</p><p><b> (1)底圖的制作</b></p><p> 首先通過收集已有控制點(diǎn)并利用全站儀進(jìn)行
102、野外數(shù)據(jù)采集,然后基于南方cass7.0繪制校園房地產(chǎn)平面地圖。</p><p> (2)制作校園房地產(chǎn)電子地圖(地圖為Gst格式)</p><p> 由于Dwg格式的文件與Gst格式的文件在數(shù)據(jù)結(jié)構(gòu)存在差異,所有在Dwg格式的校園平面圖進(jìn)行轉(zhuǎn)換前應(yīng)做好以下工作:①將圖中同類地物放在同一圖層中如建筑物圖層、運(yùn)動(dòng)場(chǎng)圖層、校內(nèi)道路圖層、綠化用地圖層、其他用地圖層②刪除冗余數(shù)據(jù)如刪除多余的標(biāo)
103、注、點(diǎn)比較密集的線段要進(jìn)行適當(dāng)刪點(diǎn)③對(duì)圖層中線、多邊形的閉合性以及閉合圖形的線自相交性進(jìn)行檢查與修正。</p><p> 經(jīng)過上述處理之后在借助南方Cass7.0以及MapInfo Professional 7.0 SCP軟件制作Gst格式的校園房地產(chǎn)電子地圖,具體操作過程如下:首先在南方Cass7.0軟件中將打開的Dwg格式的校園平面圖另存為AutoCAD R12/LT12 DXF格式;其次通過MapInfo
104、 Professional 7.0 SCP軟件中“表/轉(zhuǎn)入”的功能將DXF格式文件中每個(gè)圖層數(shù)據(jù)轉(zhuǎn)換為MapX所需的數(shù)據(jù)格式,并且在這個(gè)過程中設(shè)置投影為Non-Earth(meters);最后借助MapInfo Professional 7.0 SCP軟件中“工具/MapX Geoset工具/另存MapX Geoset”的功能將其轉(zhuǎn)換為能夠嵌入MapX中的Gst格式的文件。</p><p><b>
105、(3)地圖的嵌入</b></p><p> 在地圖嵌入的過程中,需要借助可視化開發(fā)工具M(jìn)icrosoft Visual Basic 6.0來實(shí)現(xiàn)基于MapX的地圖的嵌入功能。首先在Microsoft Visual Basic 6.0軟件中通過新建標(biāo)準(zhǔn)EXE并借助該窗口中“部件/工程”插入MapInfo MapX V5控件(即MapX控件)。其次在代碼窗口中加入相應(yīng)的代碼,以下是實(shí)例中地圖嵌入的主要代
106、碼說明:</p><p> Map1.GeoSet = App.Path & "\map\河南工程學(xué)院校本部.gst"</p><p> 在該句代碼中Map1指MapX控件名稱(在下文中的Map1代表相同的意義);GeoSet指MapX控件加載Gst文件的屬性;“=”右邊指的是Gst格式的校園電子圖的絕對(duì)路徑。</p><p> 另
107、外地圖的嵌入并不僅僅指的是基于MapX控件將Gst格式電子地圖嵌入可視化開發(fā)環(huán)境中而且還需為該電子地圖設(shè)置對(duì)應(yīng)的地圖顯示的坐標(biāo)系以及處理數(shù)字坐標(biāo)的坐標(biāo)系如X-Y坐標(biāo)的處理。在Gst格式的電子地圖中對(duì)于每一幅地圖都有其特定的坐標(biāo)系,其中包括控制地圖顯示的坐標(biāo)系和處理數(shù)字坐標(biāo)的坐標(biāo)系,無論哪一個(gè)坐標(biāo)系設(shè)置出錯(cuò)都會(huì)影響最終結(jié)果。地圖顯示的坐標(biāo)系是在生成Gst格式的電子地圖的過程中已經(jīng)設(shè)置了相應(yīng)的投影;對(duì)于處理數(shù)字坐標(biāo)的坐標(biāo)系則需要通過MapX
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于java的房地產(chǎn)信息管理系統(tǒng)的畢業(yè)設(shè)計(jì)開題報(bào)告
- 房地產(chǎn)信息管理系統(tǒng)
- 房地產(chǎn)信息管理系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)
- 房地產(chǎn)信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)畢業(yè)設(shè)計(jì)
- 基于web的房地產(chǎn)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 工程管理房地產(chǎn)方向畢業(yè)設(shè)計(jì)
- 房地產(chǎn)ERP信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)財(cái)務(wù)信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 保利房地產(chǎn)信息管理系統(tǒng)的分析與設(shè)計(jì).pdf
- 房地產(chǎn)企業(yè)財(cái)務(wù)信息管理研究
- 房地產(chǎn)策劃畢業(yè)設(shè)計(jì)
- 房地產(chǎn)信貸管理信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)綜合信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 某公司房地產(chǎn)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)銷售信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)中介信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)移動(dòng)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 博園房地產(chǎn)信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 房地產(chǎn)企業(yè)項(xiàng)目信息管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論