版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24GISGIS應(yīng)用開發(fā)應(yīng)用開發(fā)Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET 主講:主講:蘭小機(jī)蘭小機(jī) GISGIS博士、教授博士、教授 Email : E
2、mail : QQ QQ :305333315305333315 課件:課件: 4/ 4/ 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24蘭小機(jī)簡(jiǎn)歷蘭小機(jī)簡(jiǎn)歷l主要經(jīng)歷主要經(jīng)歷 19881988年年7 7月月畢業(yè)于南方冶金學(xué)院工程測(cè)量專業(yè),獲畢業(yè)于南方冶金學(xué)院工程測(cè)量專業(yè),獲學(xué)士學(xué)位學(xué)士學(xué)位,并留校,并留校任
3、教任教 19941994年年6 6月月畢業(yè)于武漢測(cè)繪科技大學(xué)工程測(cè)量專業(yè),獲畢業(yè)于武漢測(cè)繪科技大學(xué)工程測(cè)量專業(yè),獲碩士學(xué)位碩士學(xué)位,回,回校任教校任教 20052005年年6 6月月畢業(yè)于南京師范大學(xué)畢業(yè)于南京師范大學(xué)地圖學(xué)與地理信息系統(tǒng)地圖學(xué)與地理信息系統(tǒng)專業(yè),獲專業(yè),獲理學(xué)理學(xué)博士學(xué)位博士學(xué)位,回校任教,回校任教l主要研究方向主要研究方向 GISGIS應(yīng)用開發(fā)應(yīng)用開發(fā) 分布式并行計(jì)算環(huán)境下空間數(shù)據(jù)的存儲(chǔ)管理分布式并行計(jì)算環(huán)境下空間數(shù)據(jù)的存儲(chǔ)管理 空間數(shù)據(jù)庫(kù)理論與空間數(shù)據(jù)庫(kù)理論與GMLGISGMLGIS GMLGML空間數(shù)據(jù)挖掘空間數(shù)據(jù)挖掘 空間數(shù)據(jù)集成與共享空間數(shù)據(jù)集成與共享江西理工大學(xué)江
4、西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24科研科研項(xiàng)目項(xiàng)目國(guó)家自然科學(xué)基金項(xiàng)目國(guó)家自然科學(xué)基金項(xiàng)目-面向面向GMLGML的時(shí)空關(guān)聯(lián)規(guī)則及序列模式挖掘的時(shí)空關(guān)聯(lián)規(guī)則及序列模式挖掘研究研究( (編號(hào):編號(hào):4097123440971234) ) ,3535萬元,主持萬元,主持國(guó)家自然科學(xué)基金項(xiàng)目國(guó)家自然科學(xué)基金項(xiàng)目-本原本原GMLGML空間數(shù)據(jù)庫(kù)理論及空間數(shù)據(jù)庫(kù)理論及GMLGISGMLGI
5、S與傳與傳統(tǒng)統(tǒng)GISGIS集成研究集成研究(編號(hào):(編號(hào):4076101740761017) ,1616萬元,主持萬元,主持國(guó)家自然科學(xué)基金項(xiàng)目國(guó)家自然科學(xué)基金項(xiàng)目 - - GMLGML空間數(shù)據(jù)存儲(chǔ)索引機(jī)制研究空間數(shù)據(jù)存儲(chǔ)索引機(jī)制研究(編號(hào):(編號(hào):4040104540401045) ,2626萬元,排名第二萬元,排名第二地理信息科學(xué)江蘇省重點(diǎn)實(shí)驗(yàn)室開發(fā)基金項(xiàng)目地理信息科學(xué)江蘇省重點(diǎn)實(shí)驗(yàn)室開發(fā)基金項(xiàng)目 - -面向?qū)ο蟮拿嫦驅(qū)ο蟮腉MLGML空間數(shù)據(jù)庫(kù)及其應(yīng)用研究空間數(shù)據(jù)庫(kù)及其應(yīng)用研究(編號(hào):(編號(hào):JK20050302JK20050302) ,5 5萬元主持萬元主持江西省教育廳科技項(xiàng)目江西省教
6、育廳科技項(xiàng)目GMLGML空間數(shù)據(jù)庫(kù)理論及空間數(shù)據(jù)庫(kù)理論及GMLGISGMLGIS研究研究,1 1萬萬元,主持元,主持萍鄉(xiāng)市基礎(chǔ)地理信息系統(tǒng)研究與開發(fā),萍鄉(xiāng)市基礎(chǔ)地理信息系統(tǒng)研究與開發(fā),2222萬元,主持萬元,主持城市公眾地理信息服務(wù)系統(tǒng)研究與開發(fā),城市公眾地理信息服務(wù)系統(tǒng)研究與開發(fā),1010萬元,主持萬元,主持江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24教學(xué)目標(biāo)教學(xué)目標(biāo)l
7、GISGIS應(yīng)用開發(fā)應(yīng)用開發(fā)課程是課程是GISGIS研究生重要的研究生重要的專業(yè)課程,通過課程的學(xué)習(xí),專業(yè)課程,通過課程的學(xué)習(xí),了解了解ArcGIS ArcGIS 軟件體系結(jié)構(gòu)及軟件體系結(jié)構(gòu)及ArcObjectsArcObjects (ArcGIS(ArcGIS Engine)Engine)組件構(gòu)成,并能熟練使用組件構(gòu)成,并能熟練使用ArcObjectsArcObjects (ArcGIS(ArcGIS Engine)Engine) 進(jìn)行進(jìn)行應(yīng)用型應(yīng)用型GISGIS開發(fā)開發(fā); ; 掌握應(yīng)掌握應(yīng)用型用型GISGIS開發(fā)的基本思路、技術(shù)方法開發(fā)的基本思路、技術(shù)方法. .江西理工大學(xué)江西理工大學(xué) D
8、eveloping GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24Chap.6 Chap.6 空間數(shù)據(jù)的可視化表達(dá)空間數(shù)據(jù)的可視化表達(dá) (4 4學(xué)時(shí))學(xué)時(shí))l 本章內(nèi)容:本章內(nèi)容: ColorColor對(duì)象對(duì)象 SymbolSymbol對(duì)象對(duì)象 符號(hào)樣式庫(kù)與符號(hào)化控符號(hào)樣式庫(kù)與符號(hào)化控件件 制作專題圖制作專題圖 制圖表現(xiàn)制圖表現(xiàn)1. 1. 地圖標(biāo)注地圖標(biāo)注江西理工大學(xué)江西理工大學(xué) Developing GIS Applic
9、ations with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24ArcMapArcMap中空間數(shù)據(jù)符號(hào)化方法中空間數(shù)據(jù)符號(hào)化方法l 普通的符號(hào)化方法普通的符號(hào)化方法單一符號(hào)單一符號(hào)(Single Symbol)(Single Symbol)分類符號(hào)分類符號(hào)(C(Categoryategory Symbol) Symbol)Unique Values RendererUnique Values Renderer分級(jí)符號(hào)分級(jí)符號(hào)(Graduated Symbol)
10、(Graduated Symbol)分級(jí)色彩分級(jí)色彩(Graduated Color)(Graduated Color)比例符號(hào)比例符號(hào)(Proportional Symbol)(Proportional Symbol)點(diǎn)值符號(hào)點(diǎn)值符號(hào)(Dot density)(Dot density)組合符號(hào)組合符號(hào)(Multivariate Symbol)(Multivariate Symbol)統(tǒng)計(jì)圖形統(tǒng)計(jì)圖形(Statistical Charts)(Statistical Charts)l 制圖表現(xiàn)(制圖表現(xiàn)(RepresentationRepresentation) (9.29.2新增功能)新增功能
11、)江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24l空間數(shù)據(jù)符號(hào)化主要元素空間數(shù)據(jù)符號(hào)化主要元素符號(hào)(對(duì)象)符號(hào)(對(duì)象) 色彩(對(duì)象)色彩(對(duì)象)著色(對(duì)象)著色(對(duì)象)l符號(hào)(對(duì)象)符號(hào)(對(duì)象)著色(對(duì)象)著色(對(duì)象)lIGeoFeatureLayer.Renderer IGeoFeatureLayer.Renderer 用于要素圖層的符用于要素圖層的符號(hào)化,號(hào)化,符號(hào)化信息
12、保存在要素圖層中符號(hào)化信息保存在要素圖層中。l 制圖表現(xiàn)制圖表現(xiàn)(Representation)(Representation)符號(hào)化信息保存在要素類符號(hào)化信息保存在要素類(FeatureClass)(FeatureClass)中中。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.1 6.1 顏色對(duì)象顏色對(duì)象l 顏色(顏色(ColorColor)是所有符號(hào)和地圖元素的基本屬
13、性)是所有符號(hào)和地圖元素的基本屬性之一。之一。ArcObjectsArcObjects提供了多種顏色模型:提供了多種顏色模型:RGBRGB(紅色、綠色、藍(lán)色)顏色模型:(紅色、綠色、藍(lán)色)顏色模型:RGBColorRGBColorHSVHSV(色調(diào)、飽和度、亮度)顏色模型:(色調(diào)、飽和度、亮度)顏色模型:HSVColor HSVColor CMYKCMYK(青色、洋紅色、黃色、黑色)顏色模型:(青色、洋紅色、黃色、黑色)顏色模型:CmykColor CmykColor 灰度顏色:灰度顏色:GrayColorGrayColorCIELABCIELAB顏色(在顏色(在ArcObjectsArcOb
14、jects中使用,與設(shè)備無關(guān))中使用,與設(shè)備無關(guān))1. 1. 色帶(色帶(ColorRampColorRamp)江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24RGBRGB模型模型江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications wit
15、h ArcObjects using C#.NET2021/7/24CMYKCMYK模型模型 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24HSVHSV模型模型lhue : 0-360 hue : 0-360 lsaturation : 0-100 saturation : 0-100 lvalue :0-100 value :0-100 江西理工大學(xué)江西理工大學(xué) Devel
16、oping GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.1.1 Color6.1.1 Color對(duì)象對(duì)象l ColorColor對(duì)象是一個(gè)抽象類,它有對(duì)象是一個(gè)抽象類,它有5 5個(gè)顏色個(gè)顏色子類,即子類,即CmykColorCmykColor、RGBColorRGBColor、HSVColorHSVColor、HLSColorHLSColor和和GrayColorGrayColor,它們,它們可以使用可以使用ICol
17、orIColor接口定義的方法設(shè)置顏接口定義的方法設(shè)置顏色對(duì)象的基本屬性。色對(duì)象的基本屬性。 IColor.RGBIColor.RGB屬性會(huì)返回一個(gè)屬性會(huì)返回一個(gè)LONGLONG數(shù)值,而不是數(shù)值,而不是RGBRGB模型模型需要的需要的R R、G G、B B上的三個(gè)值,如上的三個(gè)值,如白色的白色的 RGBRGB屬性返回值屬性返回值為為1677721516777215,而不是用戶需要的,而不是用戶需要的255255、255255、255255三個(gè)值。三個(gè)值。如果采用如果采用ArcObjectsArcObjects的顏色選擇對(duì)話框選取一個(gè)顏色后的顏色選擇對(duì)話框選取一個(gè)顏色后使用,程序員就必須使用使用
18、,程序員就必須使用 RGBRGB值的寫法。值的寫法。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24l 下面是兩種數(shù)值方式互相轉(zhuǎn)換的函數(shù)。下面是兩種數(shù)值方式互相轉(zhuǎn)換的函數(shù)。l RGBRGB值轉(zhuǎn)換為值轉(zhuǎn)換為L(zhǎng)ONGLONG值值private long RGBToLong(int Red, int Green ,int Blue ) private long RGBToLong(i
19、nt Red, int Green ,int Blue ) return Red + (0 x100 return Red + (0 x100 * * Green) + (0 x10000 Green) + (0 x10000 * * Blue); Blue); l LONGLONG值轉(zhuǎn)換為值轉(zhuǎn)換為RGBRGB值值private short LongtoRGB(long RGBlong)private short LongtoRGB(long RGBlong) short pbyte = new short3 ;short pbyte = new short3 ;pbyte0 = (short
20、) (RGBlong % 0 x100) ;pbyte0 = (short) (RGBlong % 0 x100) ;pbyte1 = (short) (RGBlong / 0 x100) % 0 x100);pbyte1 = (short) (RGBlong / 0 x100) % 0 x100);pbyte2 = (short) (RGBlong / 0 x10000) % 0 x100);pbyte2 = (short) (RGBlong / 0 x10000) % 0 x100);return pbyte;return pbyte; 江西理工大學(xué)江西理工大學(xué) Developing GI
21、S Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24lIRgbColor, ICmykColor, IHsvColor, IHlsColor, IRgbColor, ICmykColor, IHsvColor, IHlsColor, 和和IGrayColorIGrayColor接口接口繼承自繼承自IColorIColor接口接口。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObj
22、ects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24HSVHSV模型顏色構(gòu)造器模型顏色構(gòu)造器l private private IHsvColorIHsvColor HSVColor(int hue , int saturation , int val ) HSVColor(int hue , int saturation , int val ) / /定義一個(gè)定義一個(gè)IHSVColorIHSVColor類型對(duì)象類型對(duì)象IHsvColorIHsvColor pHsvColor = n
23、ew HsvColorClass();pHsvColor = new HsvColorClass();/ /設(shè)置它的值設(shè)置它的值pHsvColor.Hue = hue;pHsvColor.Hue = hue;pHsvColor.Saturation = saturation;pHsvColor.Saturation = saturation;pHsvColor.Value = val;pHsvColor.Value = val;return pHsvColor;return pHsvColor; 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with Arc
24、Objects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24RGBRGB顏色構(gòu)造器顏色構(gòu)造器l private private IRgbColorIRgbColor getRGB(int r,int g,int b) getRGB(int r,int g,int b) IRgbColorIRgbColor pColor = new RgbColorClass(); pColor = new RgbColorClass();pColor.Red = r;pColor.Red = r;pC
25、olor.Green = g;pColor.Green = g;pColor.Blue = b;pColor.Blue = b;return pColor;return pColor; 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.1.2 6.1.2 顏色對(duì)話框顏色對(duì)話框l ArcObjectsArcObjects中提供了幾種顏色對(duì)話框供程序中提供了幾種顏色對(duì)話框供程序員
26、使用:?jiǎn)T使用:顏色板(顏色板( Colorpalatte Colorpalatte )對(duì)象)對(duì)象 、顏色選擇器(顏色選擇器( ColorSelector ColorSelector )對(duì)象)對(duì)象和和顏色顏色瀏覽器(瀏覽器( ColorBrowser ColorBrowser )對(duì)象)對(duì)象。 Available with ArcGIS DesktopAvailable with ArcGIS Desktop江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications
27、 with ArcObjects using C#.NET2021/7/24顏色板對(duì)象顏色板對(duì)象 ColorpalatteColorpalattelColorPaletteColorPalette顏色板對(duì)顏色板對(duì)象一共排列了象一共排列了120120種種顏色供用戶使用,如顏色供用戶使用,如圖所示。圖所示。 ColorPaletteColorPalette類實(shí)現(xiàn)了兩個(gè)接口:類實(shí)現(xiàn)了兩個(gè)接口:IColorPaletteIColorPalette和和 ICustomColorPaletteICustomColorPalette。江西理工大學(xué)江西理工大學(xué) Developing GIS Applicati
28、ons with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24l IColorPaletteIColorPalette接口定義了接口定義了 ColorColor屬性和屬性和 TrackPopupMenuTrackPopupMenu方法,方法,使用這個(gè)接口可以從對(duì)話框中獲得一個(gè)顏色對(duì)象。下面是使用這個(gè)接口可以從對(duì)話框中獲得一個(gè)顏色對(duì)象。下面是使用調(diào)色板對(duì)象取出一個(gè)顏色的例子:使用調(diào)色板對(duì)象取出一個(gè)顏色的例子: IColorIColor pColor = new Rg
29、bColorClass(); pColor = new RgbColorClass();pColor.RGB = 255 ;pColor.RGB = 255 ; / /新建一個(gè)顏色板對(duì)象新建一個(gè)顏色板對(duì)象IColorPaletteIColorPalette pPalette = new ColorPaletteClass(); pPalette = new ColorPaletteClass(); / /定義一個(gè)范圍結(jié)構(gòu)定義一個(gè)范圍結(jié)構(gòu)tagRECT pRect = new tagRECT() ;tagRECT pRect = new tagRECT() ;pRect.left =10;pRe
30、ct.left =10;pRect.top =10;pRect.top =10;pPalette.TrackPopupMenu(ref pRect, pColor, false, 0);pPalette.TrackPopupMenu(ref pRect, pColor, false, 0); / /獲得新的顏色獲得新的顏色pColor = pPalette.Color;pColor = pPalette.Color;public bool TrackPopupMenu public bool TrackPopupMenu (ref tagRECTrect, (ref tagRECTrect,
31、ref IColorref IColor currentColor, currentColor, ref boolref bool orientation, orientation, ref intref int hParentWnd);hParentWnd);江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24顏色選擇器對(duì)象顏色選擇器對(duì)象l 顏色選擇器顏色選擇器(ColorSel
32、ector)(ColorSelector)對(duì)象提供了一種更精確選對(duì)象提供了一種更精確選擇顏色的方法。用戶可以擇顏色的方法。用戶可以點(diǎn)擊對(duì)話框上方右邊的小點(diǎn)擊對(duì)話框上方右邊的小箭頭,選擇箭頭,選擇RGBRGB、CMYKCMYK、HSVHSV多種顏色模型,通過多種顏色模型,通過拖曳顏色帶或者直接輸入拖曳顏色帶或者直接輸入具體顏色值的方法返回顏具體顏色值的方法返回顏色對(duì)象,如圖所示。色對(duì)象,如圖所示。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with
33、 ArcObjects using C#.NET2021/7/24l 下面是一個(gè)使用顏色選擇器對(duì)象獲取顏色對(duì)象的代碼段:下面是一個(gè)使用顏色選擇器對(duì)象獲取顏色對(duì)象的代碼段:/Set the initial color to be diaplyed when the dialog opens/Set the initial color to be diaplyed when the dialog opensIColorIColor pColor = new RgbColorClass(); pColor = new RgbColorClass();pColor.RGB = 255;pColor.R
34、GB = 255;IColorSelectorIColorSelector pSelector = new ColorSelectorClass(); pSelector = new ColorSelectorClass();pSelector.Color = pColor;pSelector.Color = pColor;/ Display the dialog/ Display the dialogif ( if ( pSelector.DoModal(0)pSelector.DoModal(0) ) ) IColorIColor pOutColor = pOutColor = pSele
35、ctor.Color;pSelector.Color; 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24顏色瀏覽器對(duì)象顏色瀏覽器對(duì)象l 顏色瀏覽器顏色瀏覽器(ColorBrowser)(ColorBrowser)對(duì)對(duì)象提供了多種顏色模型象提供了多種顏色模型(RGB, (RGB, CMYK, HSV, HLS, or gray)CMYK, HSV, HLS, or gray)供用
36、供用戶選擇顏色對(duì)象,如圖所示。戶選擇顏色對(duì)象,如圖所示。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24l 下面是一個(gè)使用顏色瀏覽器對(duì)象對(duì)象獲取顏色對(duì)象的代碼下面是一個(gè)使用顏色瀏覽器對(duì)象對(duì)象獲取顏色對(duì)象的代碼段:段:IRgbColorIRgbColor pNewColor; pNewColor;IRgbColorIRgbColor pInitColor = new RgbCol
37、orClass(); pInitColor = new RgbColorClass();/ the dialog will open with red as a default./ the dialog will open with red as a default.pInitColor.Red = 255;pInitColor.Red = 255;IColorBrowserIColorBrowser pColorBrowser = new ColorBrowserClass(); pColorBrowser = new ColorBrowserClass();pColorBrowser.Co
38、lor = pInitColor;pColorBrowser.Color = pInitColor;bool bool bColorSet = pColorBrowser.DoModal(0);bColorSet = pColorBrowser.DoModal(0);if (bColorSet) pNewColor = (IRgbColor) if (bColorSet) pNewColor = (IRgbColor) pColorBrowser.ColorpColorBrowser.Color; ;江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with A
39、rcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.1.3 ColorRamp6.1.3 ColorRamp對(duì)象對(duì)象l制作地圖專題圖的過程中,需要的制作地圖專題圖的過程中,需要的顏色常常不是一種,而是隨機(jī)或有顏色常常不是一種,而是隨機(jī)或有序產(chǎn)生的一個(gè)顏色帶。如果某個(gè)著序產(chǎn)生的一個(gè)顏色帶。如果某個(gè)著色對(duì)象需要色對(duì)象需要100100種顏色,程序員肯定種顏色,程序員肯定不能逐個(gè)產(chǎn)生出來,而是可以使用不能逐個(gè)產(chǎn)生出來,而是可以使用ArcObjectsArcObjects提供的顏
40、色帶提供的顏色帶( (ColorRampColorRamp) )對(duì)象。對(duì)象。lColorRampColorRamp類的對(duì)象可以產(chǎn)生顏色帶,類的對(duì)象可以產(chǎn)生顏色帶,這個(gè)類實(shí)現(xiàn)了這個(gè)類實(shí)現(xiàn)了IColorRampIColorRamp,定義了,定義了一系列顏色帶的公共方法,如一系列顏色帶的公共方法,如 SizeSize(產(chǎn)生多少種顏色),(產(chǎn)生多少種顏色),ColorsColors(顏色(顏色帶帶 IEnumColorIEnumColor)。)。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping
41、 GIS Applications with ArcObjects using C#.NET2021/7/24下表是四種顏色帶模型的例子。下表是四種顏色帶模型的例子。RandomColorRampRandomColorRamp使用使用HSVHSV顏色模型來確定一串顏色顏色模型來確定一串顏色PresetColorRampPresetColorRamp預(yù)設(shè)的顏色模式,可存儲(chǔ)預(yù)設(shè)的顏色模式,可存儲(chǔ)1313種顏色種顏色AlgorithmicColorRampAlgorithmicColorRamp 用起始顏色、終止顏色用起始顏色、終止顏色和某種算法和某種算法確確定一個(gè)顏色帶定一個(gè)顏色帶MultiPar
42、tColorRampMultiPartColorRamp疊加產(chǎn)生顏色帶疊加產(chǎn)生顏色帶Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/
43、7/24AlgorithmicColorRampAlgorithmicColorRamp顏色帶顏色帶lAlgorithmicColorRampAlgorithmicColorRamp是通過起止顏色來確定是通過起止顏色來確定多個(gè)在這兩個(gè)顏色之間的色帶多個(gè)在這兩個(gè)顏色之間的色帶。AlgorithmicColorRampAlgorithmicColorRamp類實(shí)現(xiàn)了兩個(gè)接口:類實(shí)現(xiàn)了兩個(gè)接口:IColorRampIColorRamp和和IAlgorithmicColorRampIAlgorithmicColorRamp,兩個(gè)接,兩個(gè)接口之間是接口繼承關(guān)系,后者包含了前者所口之間是接口繼承關(guān)系,后者
44、包含了前者所有的方法和屬性。有的方法和屬性。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24RandomColorRampRandomColorRamp顏色帶顏色帶lRandomColorRampRandomColorRamp對(duì)象供程序員產(chǎn)生隨機(jī)顏對(duì)象供程序員產(chǎn)生隨機(jī)顏色帶,色帶,RandomColorRampRandomColorRamp也需要設(shè)定一個(gè)范也需要設(shè)定一個(gè)范圍,但
45、是這個(gè)范圍是圍,但是這個(gè)范圍是HSVHSV顏色模型的,顏色顏色模型的,顏色將在這個(gè)范圍內(nèi)隨機(jī)出現(xiàn)。將在這個(gè)范圍內(nèi)隨機(jī)出現(xiàn)。 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.2 Symbol6.2 Symbol對(duì)象對(duì)象l ArcObjectsArcObjects主要使用主要使用MarkerSymbolMarkerSymbol、 LineSymbolLineSymbol和和Fi
46、llSymbolFillSymbol三種符號(hào)來繪制地理要素或圖形元素的三種符號(hào)來繪制地理要素或圖形元素的幾何形狀。幾何形狀。 此外還有兩種特殊的符號(hào):一種是此外還有兩種特殊的符號(hào):一種是TextSymbolTextSymbol用于文字標(biāo)注;另一種是用于文字標(biāo)注;另一種是3D ChartSymbol3D ChartSymbol,用,用于顯示餅圖等三維對(duì)象。于顯示餅圖等三維對(duì)象。l 所有的符號(hào)類都實(shí)現(xiàn)了所有的符號(hào)類都實(shí)現(xiàn)了ISymbolISymbol和和IMapLevelIMapLevel接口,接口,前者定義了一個(gè)符號(hào)對(duì)象的基本屬性和方法;前者定義了一個(gè)符號(hào)對(duì)象的基本屬性和方法;后后者定義的者定義
47、的MapLevelMapLevel屬性可以確定符號(hào)的顯示順序。屬性可以確定符號(hào)的顯示順序。江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.2.1 MarkerSymbol6.2.1 MarkerSymbol對(duì)象對(duì)象lMarkerSymbolMarkerSymbol對(duì)象是用于修飾點(diǎn)對(duì)象是用于修飾點(diǎn)對(duì)象的符號(hào),它擁有五個(gè)子類,對(duì)象的符號(hào),它擁有五個(gè)子類,其中不同的子類可以產(chǎn)生不
48、同類其中不同的子類可以產(chǎn)生不同類型的點(diǎn)符號(hào)。所有的型的點(diǎn)符號(hào)。所有的MarkerSymbolMarkerSymbol類都實(shí)現(xiàn)了類都實(shí)現(xiàn)了IMarkerSymbolIMarkerSymbol接口,這個(gè)接口定接口,這個(gè)接口定義了點(diǎn)狀符號(hào)的公共方法和屬性,義了點(diǎn)狀符號(hào)的公共方法和屬性,如角度、顏色、大小和如角度、顏色、大小和XYXY偏移量偏移量等。等。l點(diǎn)狀符號(hào)還可以用于構(gòu)建線、面點(diǎn)狀符號(hào)還可以用于構(gòu)建線、面符號(hào)。符號(hào)。 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applic
49、ations with ArcObjects using C#.NET2021/7/24SimpleMarkerSymbolSimpleMarkerSymbol實(shí)例實(shí)例ISimpleMarkerSymbolISimpleMarkerSymbol pMarkerSymbol = new pMarkerSymbol = new SimpleMarkerSymbolClassSimpleMarkerSymbolClass();();pMarkerSymbol.Style = pMarkerSymbol.Style = esriSimpleMarkerStyleesriSimpleMarkerStyl
50、e. esriSMSCross;. esriSMSCross;pMarkerSymbol.Color = getRGB(60,100,50);pMarkerSymbol.Color = getRGB(60,100,50);pMarkerSymbol.Angle = 60;pMarkerSymbol.Angle = 60;pMarkerSymbol.Size = 6;pMarkerSymbol.Size = 6;pMarkerSymbol.Outline = true;pMarkerSymbol.Outline = true;pMarkerSymbol.OutlineSize = 2;pMark
51、erSymbol.OutlineSize = 2;pMarkerSymbol.OutlineColor = getRGB(166, 122, 166);pMarkerSymbol.OutlineColor = getRGB(166, 122, 166);IPointIPoint pPoint = pPoint = pMapControl.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoipMapControl.ActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X, Y)
52、;nt(X, Y);object oMarkerSymbol = pMarkerSymbol;object oMarkerSymbol = pMarkerSymbol;pMapControl.DrawShape(pPoint, ref oMarkerSymbol);pMapControl.DrawShape(pPoint, ref oMarkerSymbol);Constant Value Description esriSMSCircle 0 The marker is a circle. esriSMSSquare 1 The marker is a square. esriSMSCros
53、s 2 The marker is a cross. esriSMSX 3 The marker is an X. esriSMSDiamond 4 The marker is a diamond. 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24CharacterMarkerSymbolCharacterMarkerSymbol實(shí)例實(shí)例MultiLayerMarkerSymb
54、olMultiLayerMarkerSymbol實(shí)例實(shí)例江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/246.2.2 LineSymbol6.2.2 LineSymbol對(duì)象對(duì)象l LineSymbolLineSymbol對(duì)象是用于修飾線型幾何對(duì)象的對(duì)象是用于修飾線型幾何對(duì)象的符號(hào),符號(hào),ILineSymbolILineSymbol定義了兩個(gè)公共屬性,定義了兩個(gè)公共屬性,即即Co
55、lorColor和和WidthWidth。l LineSymbolLineSymbol的子類有:的子類有:江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24MarkerLineSymbolMarkerLineSymbol實(shí)例實(shí)例private void DrawSelectedFeature(IPolyline polyline)private void DrawSelected
56、Feature(IPolyline polyline) IArrowMarkerSymbolIArrowMarkerSymbol arrowMarker = new arrowMarker = new ArrowMarkerSymbolClassArrowMarkerSymbolClass();(); arrowMarker.Color = getRGB(255, 255, 255); arrowMarker.Color = getRGB(255, 255, 255); arrowMarker.Length = 10; arrowMarker.Length = 10; arrowMarker.
57、Width = 8; arrowMarker.Width = 8; arrowMarker.Style = arrowMarker.Style = esriArrowMarkerStyle.esriAMSPlainesriArrowMarkerStyle.esriAMSPlain; ; IMarkerLineSymbolIMarkerLineSymbol markerLine = new markerLine = new MarkerLineSymbolClassMarkerLineSymbolClass();(); markerLine.MarkerSymbol = markerLine.M
58、arkerSymbol = arrowMarkerarrowMarker; ; markerLine.Color = getRGB(0, 255, 255); markerLine.Color = getRGB(0, 255, 255); 江西理工大學(xué)江西理工大學(xué) Developing GIS Applications with ArcObjects using C#.NETDeveloping GIS Applications with ArcObjects using C#.NET2021/7/24 ILinePropertiesILineProperties lineProperties
59、 = markerLine as lineProperties = markerLine as ILineProperties;ILineProperties; ITemplateITemplate template = new TemplateClass(); template = new TemplateClass(); template.AddPatternElement(30, 10); template.AddPatternElement(30, 10);/ /A pattern element is a mark A pattern element is a mark and a gap value, which is specified in points (approx 1/72 inch). and a gap value, which is specified in points (approx 1/72 inch). template.Interval = 10; template.Interval = 10;/ /Interval is the multiplier that determines the Interval is the multiplier that determines the width of the marks and gaps i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度家具甲醛含量檢測(cè)與維修合同范本3篇
- 2025年度混凝土工程合同風(fēng)險(xiǎn)評(píng)估與防范措施3篇
- 湖區(qū)環(huán)境治理行動(dòng)方案模版(2篇)
- 二零二五年度教育機(jī)構(gòu)擔(dān)保合作協(xié)議3篇
- 二零二五年度按揭借款合同利率調(diào)整機(jī)制3篇
- 網(wǎng)絡(luò)商城課課程設(shè)計(jì)
- 二零二五年度廣告車租賃與品牌推廣合作協(xié)議3篇
- 2025年十二歲生日演講稿范文(2篇)
- 2025年度電子商務(wù)銷售合同范本2篇
- 課題申報(bào)書:大學(xué)中學(xué)融通視域下拔尖創(chuàng)新人才早期培養(yǎng)評(píng)價(jià)標(biāo)準(zhǔn)體系構(gòu)建的實(shí)證研究
- GB/T 5023.5-2008額定電壓450/750 V及以下聚氯乙烯絕緣電纜第5部分:軟電纜(軟線)
- 2023年遼寧省交通高等??茖W(xué)校高職單招(英語(yǔ))試題庫(kù)含答案解析
- GB/T 36127-2018玉雕制品工藝質(zhì)量評(píng)價(jià)
- GB/T 304.3-2002關(guān)節(jié)軸承配合
- GB/T 23445-2009聚合物水泥防水涂料
- 漆畫漆藝 第三章
- (完整版)100道湊十法練習(xí)題
- 光伏逆變器一課件
- 2023年上海師范大學(xué)輔導(dǎo)員招聘考試筆試題庫(kù)及答案解析
- 嚴(yán)重精神障礙患者發(fā)病報(bào)告卡
- 《基礎(chǔ)馬來語(yǔ)》課程標(biāo)準(zhǔn)(高職)
評(píng)論
0/150
提交評(píng)論