ARCGIS PRO SDK 地图图层单一符号化_____线图层

1、定义渲染器线符号:

1)、自定义线符号

Dim Linesymbol As CIMLineSymbol = SymbolFactory.Instance.ConstructLineSymbol(ColorFactory.Instance.RedRGB,width ,SimpleLineStyle)

width: 要构造的线条符号的宽度。

SimpleLineStyle:类型见下表:如一条虚线:SimpleLineStyle.Dot

|------------|--------------------------------|
| 成员 | 描述 |
| Dash | 具有长破折号和短空格重复模式的虚线。 |
| DashDot | 具有重复模式的虚线-空格-小破折号-空格。 |
| DashDotDot | 具有破折号空间-小破折号空间-小破折号空间的重复模式的虚线。 |
| Dot | 一条虚线,具有均匀分布的小破折号的重复模式。 |
| Null | 不绘制的空线。 |
| Solid | 没有破折号的简单实线。 |

复制代码
Dim Linesymbol As CIMLineSymbol = SymbolFactory.Instance.ConstructLineSymbol(ColorFactory.Instance.RedRGB,1.0 ,SimpleLineStyle.Dot)

2)、调用已有的样式

复制代码
'获取当前工程中的所有样式
Dim symbolToApply As CIMSymbol
Dim Pitem As SymbolStyleItem
Dim symbol_dic = Project.Current.GetItems(Of StyleProjectItem)
'按名称获取样式
Dim style As StyleProjectItem = symbol_dic.First(Function(x) x.Name = "SDFHK")
Await QueuedTask.Run(Sub()
                         Dim key As String = "JZX"
                         Pitem = style.LookupItem(StyleItemType.LineSymbol, key)
                     End Sub)
symbolToApply = Pitem.Symbol

2、获得层的渲染器

复制代码
Dim currentRenderer As CIMSimpleRenderer = pFeatureLayer.GetRenderer

3、图层渲染

复制代码
'更新当前简单渲染器的符号引用
currentRenderer.Symbol = symbolToApply.MakeSymbolReference()
'更新要素图层渲染器
pFeaturelayer.SetRenderer(currentRenderer)
相关推荐
我叫Double4 小时前
GeneralAdmin
arcgis
GIS思维18 小时前
ArcGIS汉化不成功的解决方案
arcgis·arcgis汉化
xyt117222817720 小时前
宗地四至提取工具
python·arcgis
智航GIS1 天前
ArcGIS大师之路500技---055矢量数据去带号
arcgis
GIS思维1 天前
ArcGIS Pro3.5.2安装包+安装详细教程+系统需求
arcgis·arcgispro
GIS思维1 天前
ArcGIS土地利用现状图制作全流程
arcgis·地表覆盖·天地图·土地利用现状图
GIS思维1 天前
ArcGIS Pro查看多期数据变化!卷帘+多地图联动齐上架
arcgis·arcgispro·天地图
YuanYWRS1 天前
ArcGIS基础:如何删除同类多个图斑中面积较小,只保留其中面积最大的一个图斑的操作
arcgis·多个图斑取面积最大的一个
智航GIS2 天前
ArcGIS大师之路500技---054字段顺序调整
arcgis
YuanYWRS2 天前
ArcGIS基础:如何在字段计算器里,从1-100进行顺序编号
arcgis