|
阅读:1053回复:0
AE中UniqueRender-唯一值渲染的一个简单例子(VB.Net源码)
<font style="background-color: rgb(204, 232, 207);" face="Verdana"><font style="background-color: rgb(204, 232, 207);" face="Verdana"><strong style="color: rgb(0, 0, 0);">直接上源码,供大家一看</strong><br>
<br> ''' <summary><br> ''' 根据某一字段的值用不同的Symbol加以渲染<br> ''' </summary><br> ''' <param name="pGeoFeatureLayer">渲染的Layer</param><br> ''' <remarks></remarks></font><br> Private Sub UniqueRender(ByVal pGeoFeatureLayer As IGeoFeatureLayer)<br> Dim pUniqueRender As IUniqueValueRenderer = New UniqueValueRenderer<br> Dim pColor As IColor<br> Dim pCMSymbol As ICharacterMarkerSymbol<br> Dim pFont As stdole.IFontDisp = New stdole.StdFont<br> pFont.Name = "ESRI Default Marker"<br> pColor = New RgbColor<br> pColor.RGB = RGB(56, 168, 0)<br> pCMSymbol = New CharacterMarkerSymbol<br> pCMSymbol.Font = pFont<br> pCMSymbol.CharacterIndex = 33<br> pCMSymbol.Color = pColor<br> pCMSymbol.Size = 10<br> pUniqueRender.FieldCount = 1<br> pUniqueRender.Field(0) = g_FieldType<br> pUniqueRender.DefaultSymbol = pCMSymbol<br> pUniqueRender.UseDefaultSymbol = True</font> <br><font style="background-color: rgb(204, 232, 207);" face="Verdana"> pColor = New RgbColor<br> pColor.RGB = RGB(255, 255, 0)<br> pCMSymbol = New CharacterMarkerSymbol<br> pCMSymbol.Font = pFont<br> pCMSymbol.CharacterIndex = 80<br> pCMSymbol.Color = pColor<br> pCMSymbol.Size = 20<br> ''添加的不同类型,其中featureclass中必须有与之对应的字段<br> pUniqueRender.AddValue(2, "Type1", pCMSymbol)</font></p> <p><font style="background-color: rgb(204, 232, 207);" face="Verdana"> pColor = New RgbColor<br> pColor.RGB = RGB(85, 255, 0)<br> pCMSymbol = New CharacterMarkerSymbol<br> pCMSymbol.Font = pFont<br> pCMSymbol.CharacterIndex = 88<br> pCMSymbol.Color = pColor<br> pCMSymbol.Size = 20<br> pUniqueRender.AddValue(3, "Type2", pCMSymbol)</font></p> <p><font style="background-color: rgb(204, 232, 207);" face="Verdana"> pGeoFeatureLayer.Renderer = pUniqueRender<br> pGeoFeatureLayer.DisplayField = "Type" '用于唯一值渲染的字段名<br> End Sub</font></p> |
|
|