日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

符号化Symbol(符号)体系(转载)

發(fā)布時(shí)間:2025/3/15 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 符号化Symbol(符号)体系(转载) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? 轉(zhuǎn)自:http://blog.sina.com.cn/s/blog_4ce8fd7c0100h4lt.html

ArcGIS Engine9.3為開發(fā)人員提供了32種符號(hào),主要分為三大類符號(hào)MarkerSymbol(點(diǎn)符號(hào))、 LineSymbol(線符號(hào))和FillSymbol(填充符號(hào))。此外還有兩種特殊類型的符號(hào):一種是TextSymbol用于文字標(biāo)注;另一種是3D Chart符號(hào),用于顯示餅圖等三維對(duì)象。


1.MarkerSymbol對(duì)象
??MarkerSymbol用于修飾點(diǎn)對(duì)象的符號(hào),它擁有十三個(gè)子類,其中不同的子類可以產(chǎn)生不同類型的點(diǎn)符號(hào)。所有的MarkerSymbol類都實(shí)現(xiàn)了IMarkerSymbol接口,這個(gè)接口定義了標(biāo)記符號(hào)的公共方法和屬性,如角度、顏色、大小和X,Y偏移量等。

點(diǎn)符號(hào)類型描述
ArrowMarkerSymbol預(yù)定義的箭頭符號(hào)
BarChartSymbol柱狀圖符號(hào)
CharacterMarker3DSymbol三維字體符號(hào)
CharacterMarkerSymbol字體符號(hào)
Marker3DSymbol3D?符號(hào)
MultiLayerMarkerSymbol多個(gè)符號(hào)疊加產(chǎn)生新點(diǎn)符號(hào)
PictureMarkerSymbol圖片符號(hào)(bmpemf)
PiechartSymbol餅圖符號(hào)
SimpleMarker3DSymbol簡(jiǎn)單3D符號(hào)
SimpleMarkerSymbol簡(jiǎn)單符號(hào)
StackedChartSymbol堆疊符號(hào)
TextMarkerSymbol文字符號(hào)用來符號(hào)化點(diǎn)??

//創(chuàng)建SimpleMarkerSymbolClass對(duì)象

ISimpleMarkerSymbol?pSimpleMarkerSymbol =?new?SimpleMarkerSymbolClass();

//創(chuàng)建RgbColorClass對(duì)象為pSimpleMarkerSymbol設(shè)置顏色

IRgbColor?pRgbColor =?new?RgbColorClass();
pRgbColor.Red = 255;

pSimpleMarkerSymbol.Color = pRgbColor
?as?IColor;

//設(shè)置pSimpleMarkerSymbol對(duì)象的符號(hào)類型,選擇鉆石
pSimpleMarkerSymbol.Style =
?esriSimpleMarkerStyle.esriSMSDiamond;

//設(shè)置pSimpleMarkerSymbol對(duì)象大小,設(shè)置為5
pSimpleMarkerSymbol.Size = 5;

//顯示外框線
pSimpleMarkerSymbol.Outline =
?true;

//為外框線設(shè)置顏色

IRgbColor?pLineRgbColor =?new?RgbColorClass();
pLineRgbColor.Green = 255;

pSimpleMarkerSymbol.OutlineColor = pLineRgbColor
?as?IColor;

//設(shè)置外框線的寬度

pSimpleMarkerSymbol.OutlineSize = 1;?

?

2.LineSymbol對(duì)象

LineSymbol對(duì)象是用于修飾線型幾何對(duì)象的符號(hào),它擁有八個(gè)子類,其中不同的子類可以產(chǎn)生不同類型的線符號(hào),所有的LineSymbol類都實(shí)現(xiàn)了ILineSymbol接口, ILineSymbol定義了兩個(gè)公共屬性:Color和Width。

線符號(hào)類型描述
CartographicLineSymbol實(shí)心或者虛線線符號(hào)
HashLineSymbol離散線符號(hào)
MarkerLineSymbol點(diǎn)線符號(hào)
MultiLayerLineSymbol多符號(hào)疊加產(chǎn)生新線符號(hào)
PictureLineSymbol圖片線符號(hào)
SimpleLine3DSymbol3D?線符號(hào)
SimpleLineSymbol預(yù)定義風(fēng)格的線符號(hào)
TextureLineSymbol (3DAnalyst)紋理貼 圖線符號(hào)


IArrowMarkerSymbol?pArrowMarker =?new?ArrowMarkerSymbolClass();

?

IRgbColor?pRgbColor =?new?RgbColorClass();
pRgbColor.Red = 255;

pArrowMarker.Color = pRgbColor
 as?IColor;?
pArrowMarker.Length = 10;

pArrowMarker.Width = 8;

pArrowMarker.Style =
?esriArrowMarkerStyle.esriAMSPlain;

IMarkerLineSymbol?pMarkerLine =?new?MarkerLineSymbolClass();
pMarkerLine.MarkerSymbol = arrowMarker;

IRgbColor?pLineColor =?new?RgbColorClass();
pLineColor.Blue = 255;

pMarkerLine.Color = pLineColor
?as?IColor;


3.FillSymbol對(duì)象

FillSymbol是用來修飾如多邊形等具有面積的幾何形體的符號(hào)對(duì)象,它擁有十一個(gè)子類如表4所示它實(shí)現(xiàn)了IFillSymbol,這個(gè)接口定義了兩個(gè)屬性Color和OutLine,以滿足所有類型的FillSymbol對(duì)象的公共屬性設(shè)置。

填充符號(hào)類型描述
ColorRampSymbol (Carto)用于渲染Raster數(shù)據(jù)的顏色帶
ColorSymbol (Carto)用于渲染Raster數(shù)據(jù)的顏色符號(hào)
DotDensityFillSymbol點(diǎn)密度填充符號(hào)
GradientFillSymbol漸變填充符號(hào)
LineFillSymbol包含線符號(hào)的填充符號(hào)
MarkerFillSymbol包含點(diǎn)符號(hào)的填充符號(hào)
MultiLayerFillSymbol多符號(hào)疊加產(chǎn)生新填充符號(hào)
PictureFillSymbol圖片填充符號(hào)
RasterRGBSymbol用于渲染Raster數(shù)據(jù) RGBSymbol
SimpleFillSymbol簡(jiǎn)單填充符號(hào)
TextureFillSymbol紋理貼圖填充符號(hào)

以MarkerLineSymbol構(gòu)建為例演示如何創(chuàng)建一個(gè)線符號(hào):

//為填充符號(hào)創(chuàng)建外框線符號(hào)

IColor?pLineColor =?new?RgbColorClass();

ICartographicLineSymbol?pCartoLineSymbol =?new?CartographicLineSymbolClass();

pCartoLineSymbol.Width = 2;

pCartoLineSymbol.Color = pLineColor;

//創(chuàng)建一個(gè)填充符號(hào)

ISimpleFillSymbol?pSmplFillSymbol =?new?SimpleFillSymbol();

//設(shè)置填充符號(hào)的屬性

IColor?pRgbClr =?new?RgbColorClass();

IFillSymbol?pFillSymbol = pSmplFillSymbol;

pFillSymbol.Color = pRgbClr;

pFillSymbol.Outline = pCartoLineSymbol;

4.TextSymbol對(duì)象
TextSymbol對(duì)象是用于修飾文字元素的,文字元素在要素標(biāo)注等方面很有用處。TextSymbol符號(hào)最重要的設(shè)置對(duì)象是它的字符,它實(shí)現(xiàn)了三個(gè)主要的接口來設(shè)置字符:ITextSymbol 、 ISimpleTextSymbol 和 IFormattedTextSymbol 。

ITextSymbol接口是定義文本字符樣式的主要接口,它定義的ITextSymbol::Font屬性是產(chǎn)生一個(gè)TextSymbol符號(hào)的關(guān)鍵。可以使用IFontDisp接口來設(shè)置字體的大小和是否是粗體、傾斜等屬性。使用ITextSymbol接口還可以定義TextSymbol對(duì)象的顏色、角度、水平排列方式、垂直排列方式和文本等內(nèi)容。

以下是一個(gè)構(gòu)建TextSymbol的函數(shù):
///<summary>

///生成文本符號(hào)

///</summary>

///<param name="pTxtSymbol">文本符號(hào)</param>

///<param name="sFontName">字體名稱</param>

///<param name="iFont">字體大小</param>

///<param name="iColor">字體顏色</param>

public?static?void?MakeTextSymbol(ref?ITextSymbol pTxtSymbol,?string?sFontName,?int?iFont,?int?iColor)

{try
{

pTxtSymbol.Font.Name = sFontName;

pTxtSymbol.Font.Size = (decimal)iFont;

IRgbColor pRGBColor =?new?RgbColorClass();

pRGBColor.RGB = iColor;

pTxtSymbol.Color = (IColor)pRGBColor;

pTxtSymbol.Angle = 0;

pTxtSymbol.RightToLeft =?false;

pTxtSymbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter;

pTxtSymbol.VerticalAlignment = esriTextVerticalAlignment.esriTVABaseline;

}

catch?(Exception?Err)
{

MessageBox.Show(Err.Message,?"提示",?MessageBoxButtons.OK,?MessageBoxIcon.Information);
}
}


5. 3DChartSymbol對(duì)象
3DChartSymbol是一個(gè)抽象類,它擁有三個(gè)子類:BarChart、PieChart和StackedChart。BarChartSymbol是最常用的三維著色符號(hào),它使用不同類型的柱子來代表一個(gè)要素類中不同的屬性,而柱子的高度取決于屬性值的大小。

PieChartSymbol符號(hào)進(jìn)行著色的方法是使用一個(gè)餅圖來顯示不同要素類中的不同屬性,不同的屬性按照它們的數(shù)值大小占有一個(gè)餅圖中的不同比例的扇形區(qū)域。

PieChartSymbol符號(hào)進(jìn)行著色的方法是使用一個(gè)餅圖來顯示不同要素類中的不同屬性,不同的屬性按照它們的數(shù)值大小占有一個(gè)餅圖中的不同比例的扇形區(qū)域。

轉(zhuǎn)載于:https://www.cnblogs.com/Joetao/articles/5543926.html

總結(jié)

以上是生活随笔為你收集整理的符号化Symbol(符号)体系(转载)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。