本書(shū)基于ArcGIS Engine 10,以C#.NET 2010為開(kāi)發(fā)語(yǔ)言進(jìn)行講解。內(nèi)容包括ArcGIS Engine編程基礎(chǔ)、GIS應(yīng)用軟件的開(kāi)發(fā)方式、地圖基本操作、查詢統(tǒng)計(jì)、地圖制圖、數(shù)據(jù)編輯、空間分析、管網(wǎng)幾何網(wǎng)絡(luò)分析、交通網(wǎng)絡(luò)分析、三維分析等。本書(shū)配有大量具有實(shí)際背景的編程案例,并給出實(shí)現(xiàn)思路和代碼詳解,隨書(shū)光盤(pán)中包含所有實(shí)例的源代碼和數(shù)據(jù),供讀者對(duì)照練習(xí)。
本書(shū)強(qiáng)調(diào)實(shí)用性、全面性和實(shí)戰(zhàn)性,案例豐富、由易及難、便于自學(xué),可作為高等學(xué)校GIS、測(cè)繪工程、RS等測(cè)繪類專業(yè)本科生和研究生的教材。
本書(shū)*后提供了一個(gè)Esri大賽一等獎(jiǎng)的獲獎(jiǎng)作品,供在校本科研究生學(xué)生參考,特別是對(duì)于將要參加大賽的同學(xué)來(lái)講是一個(gè)難得的實(shí)例。對(duì)于剛剛踏入測(cè)繪地信行業(yè)的工作者來(lái)講,很多工程項(xiàng)目都可以基于本實(shí)例進(jìn)行修改和補(bǔ)充來(lái)完成自己的實(shí)際工程項(xiàng)目。
前 言
桌面GIS、WebGIS和移動(dòng)GIS是GIS軟件開(kāi)發(fā)的三種模式。桌面GIS的功能更為豐富,軟件設(shè)計(jì)更加靈活,加之歷史溯源,GIS軟件開(kāi)發(fā)的初學(xué)者往往都是從桌面GIS的開(kāi)發(fā)入門(mén),這也符合軟件開(kāi)發(fā)的一般學(xué)習(xí)規(guī)律。具體到ArcGIS的開(kāi)發(fā),就需要學(xué)習(xí)者從ArcGISEngine入手。由于ArcGIS的桌面、服務(wù)器和移動(dòng)端是采用一套ArcObjects構(gòu)建的,因此在掌握了ArcGISEngine的開(kāi)發(fā)思路和開(kāi)發(fā)接口以后,就會(huì)很容易地過(guò)渡到WebGIS和移動(dòng)GIS的開(kāi)發(fā)上來(lái)。同時(shí),由于基于ArcGISEngine進(jìn)行二次開(kāi)發(fā)已經(jīng)成為業(yè)界桌面GIS開(kāi)發(fā)的事實(shí)上的標(biāo)準(zhǔn),因此GIS行業(yè)的開(kāi)發(fā)者大都是從學(xué)習(xí)ArcGISEngine開(kāi)始的。
地理信息科學(xué)專業(yè)學(xué)生的專業(yè)技能往往被簡(jiǎn)單描述為,掌握GIS的基礎(chǔ)理論(可以理解為本科所學(xué)的理論課程),掌握一門(mén)GIS軟件(往往特指ArcGIS),學(xué)會(huì)使用一種語(yǔ)言進(jìn)行GIS軟件開(kāi)發(fā)(基于ArcGISEngine使用C#語(yǔ)言開(kāi)發(fā)是最常見(jiàn)的方式)。以作者多年的教學(xué)經(jīng)驗(yàn)來(lái)看,絕大多數(shù)學(xué)生經(jīng)過(guò)四年的學(xué)習(xí)能夠基本掌握GIS的理論知識(shí),大部分學(xué)生能夠熟悉ArcGIS軟件的操作,但是只有少數(shù)學(xué)生能夠掌握ArcGIS軟件的開(kāi)發(fā)。這是因?yàn)?一個(gè)專業(yè)的所有理論課程是一個(gè)前后銜接、互相支持的體系,當(dāng)所有課程學(xué)完這個(gè)體系也就比較容易建立起來(lái)。ArcGIS軟件盡管體系龐大,學(xué)習(xí)有一定難度,但它是專業(yè)理論知識(shí)的體現(xiàn)和印證,經(jīng)過(guò)多次練習(xí)也是能夠掌握其操作過(guò)程的。軟件開(kāi)發(fā)不僅需要熟悉編程語(yǔ)言,熟悉ArcGISEngine紛繁蕪雜的接口,還要熟悉軟件架構(gòu)與軟件設(shè)計(jì)的有關(guān)知識(shí),而且軟件開(kāi)發(fā)具有一定的靈活性和創(chuàng)造性,使得學(xué)習(xí)難度加大,導(dǎo)致學(xué)生普遍存在畏難心理。由此,盡管存在強(qiáng)烈的學(xué)習(xí)愿望,實(shí)踐上卻往往停留在語(yǔ)言的語(yǔ)法學(xué)習(xí)和ArcGISEngine的接口學(xué)習(xí)層面上,一遍遍翻閱書(shū)本卻不去寫(xiě)下一行代碼,導(dǎo)致眼高手低、心有余而力不足。當(dāng)然缺少一本合適的參考書(shū)也是一個(gè)重要的因素。
本書(shū)站在學(xué)生的角度,面向工程的實(shí)際應(yīng)用,充分兼顧不同層次讀者的知識(shí)結(jié)構(gòu)和知識(shí)水平來(lái)設(shè)計(jì)。具有權(quán)威性、全面性和實(shí)戰(zhàn)性,由易及難、由淺入深、循循善誘、內(nèi)容豐富,既使基礎(chǔ)比較薄弱而又有強(qiáng)烈的ArcGISEngine開(kāi)發(fā)欲望的讀者容易入門(mén),又使具有一定基礎(chǔ)的讀者有提高水平的余地。
全書(shū)分為4篇12章。第1篇是入門(mén)篇,包括第1~2章,在總體上介紹了ArcGISEngine編程的基本概念和開(kāi)發(fā)桌面GIS應(yīng)用軟件的幾種不同的方式。第2篇是數(shù)據(jù)篇,包括第3~6章,主要講解地圖的基本操作、空間查詢與統(tǒng)計(jì)、地圖制圖和數(shù)據(jù)編輯等。這一部分內(nèi)容是任何一個(gè)GIS系統(tǒng)都必須具備的功能。第3篇是分析篇,包括第7~11章,主要講解矢量和柵格數(shù)據(jù)空間分析、幾何網(wǎng)絡(luò)分析、交通網(wǎng)絡(luò)分析和三維分析等內(nèi)容。第4篇是實(shí)例篇,包括第12章,介紹了Esri杯全國(guó)軟件開(kāi)發(fā)大賽總決賽一等獎(jiǎng)的獲獎(jiǎng)作品,并提供了全套的源代碼,供讀者學(xué)習(xí)參考。
在學(xué)習(xí)過(guò)程中,建議所有讀者都讀一下第1章和第2章,從總體上了解ArcGISEngine編程的概念和方法。第2章介紹的ArcGIS二次開(kāi)發(fā)的歷史有助于讀者了解ArcGISEngine的由來(lái),便于更好地理解ArcGISEngine的程序設(shè)計(jì)與架構(gòu)。第3章是地圖的基本操作,包括數(shù)據(jù)加載、地圖瀏覽、量測(cè)、書(shū)簽、數(shù)據(jù)視圖和布局視圖、鷹眼和圖層控制等內(nèi)容。這一章是初學(xué)者必須認(rèn)真學(xué)習(xí)的章節(jié)。一是該章內(nèi)容是所有GIS軟件必備的,二是該章接口較少、相對(duì)簡(jiǎn)單,便于自學(xué)。從未進(jìn)行過(guò)編程的讀者,建議將這一章的代碼按照光盤(pán)逐字逐句地重新敲一遍,以體會(huì)軟件編譯與簡(jiǎn)單調(diào)試的技巧。第4章查詢與統(tǒng)計(jì)對(duì)應(yīng)于ArcGIS的選擇菜單,包括屬性查詢、空間查詢和圖形查詢,還包括選擇集的設(shè)置和統(tǒng)計(jì)分析等功能。第5章介紹地圖的樣式與符號(hào)化、專題制圖、地圖整飾等內(nèi)容。第6章數(shù)據(jù)編輯以一個(gè)編輯流程的操作順序?yàn)橹骶進(jìn)行空間數(shù)據(jù)編輯的詳細(xì)講解。這幾部分內(nèi)容是一個(gè)GIS軟件的功能框架,如果讀者特別是在校學(xué)生熟練掌握這些內(nèi)容,也就能算一個(gè)基本合格的GIS程序員了?臻g分析篇的內(nèi)容有一定的深度,讀者可以根據(jù)需要有選擇地學(xué)習(xí)。第7章矢量分析介紹了空間拓?fù)浜涂臻g關(guān)系、疊加分析、數(shù)據(jù)格式轉(zhuǎn)換、添加X(jué)Y 數(shù)據(jù)和使用GP工具進(jìn)行分析等內(nèi)容。第8章柵格分析的內(nèi)容對(duì)應(yīng)于ArcGIS的空間分析,可實(shí)現(xiàn)空間插值、填挖方的計(jì)算、密度分析等工程中常用的功能。鑒于廣大讀者對(duì)網(wǎng)絡(luò)分析很感興趣,而現(xiàn)有的教材和參考書(shū)對(duì)這一部分往往語(yǔ)焉不詳,或者概念不甚清楚。本書(shū)特意安排了第9章幾何網(wǎng)絡(luò)分析和第10章交通網(wǎng)絡(luò)分析兩章供讀者甄別學(xué)習(xí),幾何網(wǎng)絡(luò)分析主要解決城市管線的網(wǎng)絡(luò)分析,對(duì)應(yīng)于ArcGIS的UtilityNetworkAnalyst工具條;交通網(wǎng)絡(luò)分析用于模擬現(xiàn)實(shí)世界的交通網(wǎng)絡(luò),對(duì)應(yīng)于NetworkAnalyst工具條。第11 章三維分析介紹了MultiPatch 和TIN 的各種分析,還給出了SceneControl和GlobeControl進(jìn)行三維可視化的方法,并給出了一個(gè)三維數(shù)字校園的綜合實(shí)例,貼近學(xué)生生活,激發(fā)學(xué)習(xí)興趣。第12章是Esri大賽全國(guó)總決賽一等獎(jiǎng)的獲獎(jiǎng)作品,全部由在校本科生完成。讀者特別是在校學(xué)生可以此為對(duì)照,看看自己的編程水平處在一個(gè)什么樣的位置。在你認(rèn)真學(xué)習(xí)完本書(shū)并掌握了本書(shū)的內(nèi)容后,相信你的編程水平定會(huì)超過(guò)獲獎(jiǎng)作品的水平。
本書(shū)讀者應(yīng)該特別注意光盤(pán)代碼和數(shù)據(jù)的配合使用。本書(shū)代碼都經(jīng)過(guò)嚴(yán)格測(cè)試,確保都能正確運(yùn)行,如果在使用中發(fā)現(xiàn)不能正常運(yùn)行的情況,首先應(yīng)該檢查自己的軟件配置和數(shù)據(jù)情況,然后再去考慮代碼是否存在錯(cuò)誤。本書(shū)的代碼來(lái)源于作者的長(zhǎng)期積累,包括很多實(shí)際工程的代碼,其中必然有來(lái)自于ArcGISEngine幫助和網(wǎng)上的代碼,但是這些代碼經(jīng)過(guò)了多次加工,已無(wú)法溯源,也就無(wú)法一一標(biāo)引。由此,盡管本書(shū)的代碼大多來(lái)源于工程實(shí)踐且具有很強(qiáng)的工程價(jià)值,但作者并不授權(quán)讀者將這些代碼應(yīng)用于商業(yè)活動(dòng)。同時(shí)在編入本書(shū)的過(guò)程中,為了方便讀者的學(xué)習(xí),減弱了很多代碼的封裝力度,但是考慮工程上往往具有較強(qiáng)的封裝性,在本書(shū)的后幾章中對(duì)代碼進(jìn)行了適度封裝,讀者要注意哪些函數(shù)是自己編寫(xiě)的,哪些函數(shù)是系統(tǒng)提供的。還有,不同章節(jié)在實(shí)現(xiàn)類似功能的時(shí)候,代碼也不完全一樣,作者刻意保留了這些差別,目的是使讀者認(rèn)識(shí)到同一個(gè)功能可以具有不同的實(shí)現(xiàn)方法,便于開(kāi)闊視野、打開(kāi)思路。
除了第3章建議從未編過(guò)程序的讀者一個(gè)個(gè)字母敲入之外,當(dāng)掌握了代碼輸入的基本技巧和熟悉了基本的調(diào)試方法后,其他章節(jié)的代碼建議直接拷貝到自己的工程中,或者直接運(yùn)行光盤(pán)的代碼,在你體會(huì)到程序正確運(yùn)行的喜悅的同時(shí),也進(jìn)一步激發(fā)了你學(xué)習(xí)編程的興趣和克服困難的信心,這對(duì)于快速入門(mén)是大有裨益的。因?yàn)楹芏喑鯇W(xué)者都是在學(xué)習(xí)了較長(zhǎng)一段時(shí)間后,發(fā)現(xiàn)自己的代碼總是不能運(yùn)行而慢慢地磨掉了學(xué)習(xí)的信心和樂(lè)趣,從而放棄學(xué)習(xí)編程的。
此外讀者在學(xué)習(xí)ArcGISEngine編程的時(shí)候,要注意編程實(shí)現(xiàn)的功能和ArcGIS已有功能的聯(lián)系。實(shí)際上,大多工程項(xiàng)目的功能如果不編寫(xiě)程序,僅僅使用ArcGIS也基本上可以滿足要求,之所以還要編程,目的無(wú)非是更便捷化、智能化、個(gè)性化一些。在某種程度上來(lái)講,編程序不就是把軟件多次點(diǎn)擊實(shí)現(xiàn)的功能合并成一次點(diǎn)擊而實(shí)現(xiàn)嗎? 在這種意義上說(shuō),讀者要想學(xué)好編程,首先應(yīng)該熟悉ArcGIS軟件,在實(shí)現(xiàn)一些功能的時(shí)候,建議先在ArcGIS中操作一遍,看看它是如何設(shè)計(jì)和操作的,這將有助于優(yōu)化代碼編寫(xiě)和功能實(shí)現(xiàn)的流程。
為使本書(shū)博采眾長(zhǎng),特意邀請(qǐng)了多個(gè)高校的教師和企事業(yè)單位的一線程序員參加編寫(xiě)。本書(shū)架構(gòu)由山東科技大學(xué)的牟乃夏、戴洪磊,青島市勘察測(cè)繪研究院的王海銀,南陽(yáng)師范學(xué)院的李丹,河南城建學(xué)院的高松峰、武漢理工大學(xué)的詹云軍和濟(jì)南大學(xué)的馮群等多次討論確定并各負(fù)責(zé)了一部分內(nèi)容的編寫(xiě)。參加本書(shū)編寫(xiě)的人員還有山東科技大學(xué)的張靈先、楊騰飛、王普樂(lè)、祝帥兵、張園園,青島積成電子有限公司的李乃林,北京洛斯達(dá)科技發(fā)展有限公司的劉永濤,福建省地質(zhì)測(cè)繪院廈門(mén)分院的洪平衛(wèi)等。研究生駱川、楊佰義、張昌景、郭俏琳、趙雨琪、張娟、朱海川、徐玉靜、趙明月等,對(duì)各章節(jié)的文稿和代碼進(jìn)行了反復(fù)的檢查和測(cè)試。為了驗(yàn)證初學(xué)者,特別是在校本科生對(duì)本書(shū)的需求與期望,本科生林尚緯等人也對(duì)部分文稿進(jìn)行了學(xué)習(xí)和編程,他們從一個(gè)初學(xué)者的角度提出了中肯的意見(jiàn)。測(cè)繪出版社的編輯為本書(shū)的出版付出了大量心血,在此一并表示衷心感謝!
本書(shū)從2012年開(kāi)始規(guī)劃和編寫(xiě),由于體系龐大,參與人員眾多,著實(shí)遇到了不少困難,加之我個(gè)人工作的羈絆、中途個(gè)別參編人員的更換,也曾有過(guò)放棄的念頭。但此時(shí)我以山東省高級(jí)訪問(wèn)學(xué)者和博士后身份來(lái)到中科院地理所陸鋒研究員的團(tuán)隊(duì)進(jìn)行學(xué)習(xí)和科研,這個(gè)團(tuán)隊(duì)奮發(fā)向上的激情、精益求精的理念、團(tuán)結(jié)務(wù)實(shí)的態(tài)度和孜孜以求的精神使我在各種困難中學(xué)會(huì)了堅(jiān)持和堅(jiān)強(qiáng),也促使了本書(shū)的出版,再次特別向這個(gè)團(tuán)隊(duì)表示感謝和敬意!
盡管本書(shū)近90萬(wàn)字,但是依然不能全面闡述ArcGISEngine編程的所有內(nèi)容。ArcGISEngine的幫助才是最全面、最豐富的編程知識(shí)庫(kù),讀者在熟悉了ArcGISEngine的編程后,要學(xué)習(xí)和習(xí)慣使用它的幫助來(lái)完成本書(shū)沒(méi)有覆蓋的功能。
雖然本書(shū)編寫(xiě)用了兩年半的時(shí)間,所有章節(jié)多次易稿,但由于我們水平所限,錯(cuò)誤與不妥之處在所難免,敬請(qǐng)讀者批評(píng)指正。讀者的批評(píng)和建議請(qǐng)致信mounaixia@163.com,或者訪問(wèn)作者的新浪博客和微博@山東科大牟乃夏老師GISer,作者將不定期發(fā)布本書(shū)的勘誤,讀者的建議、意見(jiàn)和學(xué)習(xí)指導(dǎo)等。
牟乃夏(1973-),男,博士、博士后,山東科技大學(xué)測(cè)繪學(xué)院副教授,山東省基礎(chǔ)地理與數(shù)字化技術(shù)重點(diǎn)實(shí)驗(yàn)室副主任。已主持和參與國(guó)家863項(xiàng)目、國(guó)家自然科學(xué)基金、國(guó)家科技支撐計(jì)劃、國(guó)家重大科技專項(xiàng)以及中國(guó)博士后科學(xué)基金、山東省自然科學(xué)基金等國(guó)家和省部級(jí)科研項(xiàng)目及橫向項(xiàng)目數(shù)十項(xiàng)。發(fā)表文章40余篇,出版教材2部,申請(qǐng)專利2項(xiàng),獲得軟件著作權(quán)40余項(xiàng)。目前主要從事基于大數(shù)據(jù)的空間數(shù)據(jù)挖掘、智慧城市等方向的理論與應(yīng)用研究以及GIS行業(yè)應(yīng)用軟件(城市管線GIS、環(huán)保GIS和應(yīng)急決策GIS等)的研發(fā)工作。
目錄
第1章 ArcGIS Engine編程基礎(chǔ)
1.1 ArcGIS Engine概述
1.1.1 ArcGIS Engine簡(jiǎn)介
1.1.2 ArcGIS Engine功能
1.1.3 ArcGIS Engine與ArcObjects
1.1.4 ArcGIS Engine類庫(kù)
1.1.5 ArcGIS Engine控件
1.2 ArcGIS Engine開(kāi)發(fā)資源
1.2.1 幫助文檔
1.2.2 自帶示例
1.2.3 在線幫助
1.2.4 網(wǎng)上資源
1.3 Esri開(kāi)發(fā)方式簡(jiǎn)介
1.3.1 AML語(yǔ)言開(kāi)發(fā)方式
1.3.2 Avenue語(yǔ)言開(kāi)發(fā)方式
1.3.3 MapObjects開(kāi)發(fā)方式
1.3.4 VBA開(kāi)發(fā)方式
1.3.5 ArcObjects開(kāi)發(fā)方式
1.4 對(duì)象模型圖
1.4.1 對(duì)象模型圖中的類與接口
1.4.2 查看OMD圖
1.5 ArcGIS Engine的安裝
1.5.1 ArcGIS License Manager的安裝
1.5.2 ArcGIS Engine Runtime for Windows的安裝
1.5.3 ArcObjects SDK for the Microsoft.NET Framework的安裝
1.6 本章小節(jié)
第2章 桌面GIS應(yīng)用軟件的開(kāi)發(fā)方式
2.1 使用VBA進(jìn)行桌面軟件開(kāi)發(fā)
2.1.1 VBA開(kāi)發(fā)方式
2.1.2 VBA代碼的安全性
2.2 使用DLL進(jìn)行桌面軟件開(kāi)發(fā)
2.2.1 DLL開(kāi)發(fā)方式
2.2.2 DLL功能的應(yīng)用部署
2.3 使用Addin進(jìn)行桌面軟件開(kāi)發(fā)
2.3.1 Addin開(kāi)發(fā)方式
2.3.2 Addin的安裝部署
2.4 使用ArcGIS Engine構(gòu)建獨(dú)立應(yīng)用程序
2.5 不同開(kāi)發(fā)方式的比較
2.6 本章小結(jié)
第3章 地圖基本操作
3.1 空間數(shù)據(jù)與工作空間
3.1.1 空間數(shù)據(jù)
3.1.2 工作空間
3.2 MapControl控件接口
3.2.1 IMapControlDefault接口
3.2.2 IMapControl2接口
3.2.3 IMapControl3接口
3.2.4 IMapControl4接口
3.2.5 IMapControlEvents2接口
3.3 數(shù)據(jù)加載
3.3.1 加載地圖文檔
3.3.2 加載Shapefile數(shù)據(jù)
3.3.3 加載柵格數(shù)據(jù)
3.3.4 加載CAD數(shù)據(jù)
3.3.5 加載個(gè)人地理數(shù)據(jù)庫(kù)數(shù)據(jù)
3.3.6 加載文件地理數(shù)據(jù)庫(kù)數(shù)據(jù)
3.3.7 加載ArcSDE空間數(shù)據(jù)庫(kù)數(shù)據(jù)
3.3.8 加載文本文件數(shù)據(jù)
3.4 地圖文檔保存
3.4.1 地圖文檔保存
3.4.2 地圖文檔另存為
3.5 地圖瀏覽
3.5.1 放大與縮小
3.5.2 拉框放大與縮小
3.5.3 漫游
3.5.4 全圖顯示
3.5.5 歷史視圖切換
3.6 書(shū) 簽
3.6.1 添加書(shū)簽
3.6.2 書(shū)簽管理
3.7 ICommand和ITool命令操作地圖
3.8 量 測(cè)
3.8.1 狀態(tài)欄坐標(biāo)顯示
3.8.2 距離測(cè)量
3.8.3 面積測(cè)量
3.9 要素選擇操作
3.9.1 要素選擇
3.9.2 縮放至選擇
3.9.3 清除選擇
3.10 地圖導(dǎo)出
3.11 視圖同步
3.11.1 鷹眼窗口
3.11.2 數(shù)據(jù)視圖與布局視圖的同步
3.12 TOCControl控件
3.12.1 TOCControl與數(shù)據(jù)視圖的關(guān)聯(lián)
3.12.2 圖層顯示順序調(diào)整
3.12.3 TOCControl的右鍵菜單
3.13 本章小結(jié)
第4章 查詢統(tǒng)計(jì)
4.1 屬性查詢
4.1.1 相關(guān)類與接口
4.1.2 實(shí)例詳解
4.2 空間查詢
4.2.1 相關(guān)類與接口
4.2.2 實(shí)例詳解
4.3 圖形查詢
4.3.1 相關(guān)類與接口
4.3.2 實(shí)例詳解
4.4 選擇集
4.4.1 相關(guān)類與接口
4.4.2 實(shí)例詳解
4.5 查詢選項(xiàng)設(shè)置
4.5.1 相關(guān)類和接口
4.5.2 實(shí)例詳解
4.6 統(tǒng)計(jì)分析
4.6.1 相關(guān)的類和接口
4.6.2 實(shí)例詳解
4.7 本章小結(jié)
第5章 地圖制圖
5.1 顏色模型
5.1.1 顏色模型分類
5.1.2 顏色對(duì)象
5.2 地圖符號(hào)化
5.2.1 點(diǎn)要素符號(hào)化
5.2.2 線要素符號(hào)化
5.2.3 面要素符號(hào)化
5.2.4 文本符號(hào)化
5.2.5 符號(hào)選擇器
5.2.6 樣式管理器
5.3 地圖標(biāo)注
5.3.1 TextElement標(biāo)注
5.3.2 Annotation注記
5.3.3 MapTips顯示
5.4 專題地圖制圖
5.4.1 單一符號(hào)化
5.4.2 唯一值符號(hào)化
5.4.3 唯一值多字段符號(hào)化
5.4.4 分級(jí)色彩符號(hào)化
5.4.5 分級(jí)符號(hào)化
5.4.6 比例符號(hào)化
5.4.7 點(diǎn)密度符號(hào)化
5.4.8 統(tǒng)計(jì)圖表符號(hào)化
5.4.9 雙值符號(hào)化
5.4.10 多比例尺符號(hào)化
5.5 地圖整飾
5.5.1 添加圖例
5.5.2 添加指北針
5.5.3 添加比例尺
5.5.4 添加地圖格網(wǎng)
5.6 制圖模板
5.7 空間參考
5.7.1 創(chuàng)建空間參考
5.7.2 同一基準(zhǔn)面的坐標(biāo)轉(zhuǎn)換
5.7.3 不同基準(zhǔn)面的坐標(biāo)轉(zhuǎn)換
5.8 打印輸出
5.8.1 打印設(shè)置
5.8.2 打印預(yù)覽
5.8.3 打印
5.8.4 地圖輸出
5.9 本章小結(jié)
第6章 空間數(shù)據(jù)編輯
6.1 簡(jiǎn) 介
6.1.1 操作步驟
6.1.2 實(shí)現(xiàn)思路
6.1.3 代碼說(shuō)明
6.2 編輯對(duì)象
6.2.1 幾何對(duì)象
6.2.2 DisplayFeedback對(duì)象
6.3 開(kāi)始編輯
6.3.1 IEngineEditor接口介紹
6.3.2 功能實(shí)現(xiàn)
6.4 設(shè)置編輯圖層
6.4.1 IEngineEditLayers接口介紹
6.4.2 功能實(shí)現(xiàn)
6.5 設(shè)置編輯任務(wù)
6.5.1 IEngineEditTask接口介紹
6.5.2 功能實(shí)現(xiàn)
6.6 編輯操作
6.6.1 選擇要素
6.6.2 移動(dòng)要素
6.6.3 添加要素
6.6.4 刪除要素
6.6.5 撤銷操作
6.6.6 恢復(fù)操作
6.7 節(jié)點(diǎn)編輯
6.7.1 移動(dòng)節(jié)點(diǎn)
6.7.2 添加節(jié)點(diǎn)
6.7.3 刪除節(jié)點(diǎn)
6.8 屬性編輯
6.9 保存編輯
6.10 結(jié)束編輯
6.11 本章小結(jié)
第7章 矢量數(shù)據(jù)空間分析
7.1 空間拓?fù)浞治?br />
7.1.1 相關(guān)類與接口
7.1.2 實(shí)例詳解——緩沖區(qū)分析
7.1.3 實(shí)例詳解——獲取多邊形要素邊界
7.2 空間關(guān)系運(yùn)算
7.2.1 相關(guān)類與接口
7.2.2 實(shí)例詳解——查找一多邊形要素的所有鄰接要素
7.3 疊加分析
7.3.1 相關(guān)類與接口
7.3.2 實(shí)例詳解——兩相交面圖層的裁剪分析
7.4 數(shù)據(jù)格式轉(zhuǎn)換
7.4.1 相關(guān)類與接口
7.4.2 實(shí)例詳解——將Shapefile數(shù)據(jù)導(dǎo)入File Geodatabase中
7.4.3 實(shí)例詳解——通過(guò)數(shù)據(jù)解析方式實(shí)現(xiàn)Shapefile數(shù)據(jù)轉(zhuǎn)CAD
格式數(shù)據(jù)
7.5 添加X(jué)、Y數(shù)據(jù)
7.5.1 相關(guān)類與接口
7.5.2 實(shí)例詳解——將帶有X、Y字段的Excel數(shù)據(jù)表轉(zhuǎn)化為點(diǎn)數(shù)據(jù)
7.6 使用GP工具進(jìn)行空間分析
7.6.1 相關(guān)類與接口
7.6.2 實(shí)例詳解——利用GP工具實(shí)現(xiàn)緩沖區(qū)分析
7.6.3 實(shí)例詳解——利用GP工具實(shí)現(xiàn)Shapefile數(shù)據(jù)轉(zhuǎn)CAD數(shù)據(jù)
7.7 本章小結(jié)
第8章 柵格數(shù)據(jù)空間分析
8.1 環(huán)境設(shè)置
8.2 空間插值
8.2.1 反距離權(quán)重法
8.2.2 克里金法
8.2.3 樣條函數(shù)法
8.2.4 趨勢(shì)面法
8.2.5 自然鄰域法
8.3 柵格表面分析
8.3.1 坡度計(jì)算
8.3.2 坡向計(jì)算
8.3.3 等值線計(jì)算
8.3.4 填挖方計(jì)算
8.3.5 山體陰影
8.3.6 曲率計(jì)算
8.3.7 可見(jiàn)性分析
8.4 柵格計(jì)算
8.4.1 IMathOp接口
8.4.2 ITrigOp接口
8.4.3 ILogicalOp接口
8.4.4 IBitwiseOp接口
8.5 柵格統(tǒng)計(jì)
8.6 密度分析
8.6.1 核密度分析
8.6.2 線密度分析
8.6.3 點(diǎn)密度分析
8.7 提取分析
8.7.1 按屬性提取
8.7.2 按掩模提取
8.7.3 按形狀提取
8.8 距離分析
8.8.1 歐氏距離
8.8.2 成本距離
8.8.3 成本路徑
8.8.4 廊道分析
8.9 重分類
8.9.1 使用表重分類
8.9.2 使用ASCII文件重分類
8.9.3 分割
8.10 條件分析
8.11 本章小結(jié)
第9章 管網(wǎng)幾何網(wǎng)絡(luò)分析
9.1 幾何網(wǎng)絡(luò)
9.1.1 幾何網(wǎng)絡(luò)要素
9.1.2 邏輯網(wǎng)絡(luò)
9.1.3 幾何網(wǎng)絡(luò)屬性
9.2 顯示網(wǎng)絡(luò)流向
9.2.1 相關(guān)類與接口
9.2.2 實(shí)例詳解
9.3 網(wǎng)絡(luò)追蹤分析
9.3.1 相關(guān)類與接口
9.3.2 實(shí)例詳解
9.4 爆管分析
9.4.1 實(shí)例程序操作步驟
9.4.2 實(shí)例程序