Arcgis Engine 添加一个Symbol符号样式步骤

时间:2023-03-09 14:37:02
Arcgis Engine 添加一个Symbol符号样式步骤
    public static void DrawPictureMarkerSymbol(IGlobe globe, String layerName)
{
//添加一个图层
ESRI.ArcGIS.Carto.IGraphicsContainer globeGraphicsLayer = GetGraphiceContainer(globe, layerName);
//定义一个基础元素
ESRI.ArcGIS.Carto.IElement markerElement = new ESRI.ArcGIS.Carto.MarkerElementClass();
//定义一符号标记
IPictureMarkerSymbol pictureMarkerSymbol = GetPictureMarkSymbol();
//定义一个标签符号 此符号来自于样例符号的符号转换
ESRI.ArcGIS.Display.IMarkerSymbol markerSymbol = (ESRI.ArcGIS.Display.IMarkerSymbol)pictureMarkerSymbol;
//定义颜色属性
ESRI.ArcGIS.Display.IColor rgbColor = new ESRI.ArcGIS.Display.RgbColorClass();
rgbColor.RGB = ;
markerSymbol.Color = rgbColor;//颜色
markerSymbol.Size = ;//大小
//定义一经纬度
ESRI.ArcGIS.Geometry.IPoint point = new ESRI.ArcGIS.Geometry.Point();//位置
point.PutCoords(, );//位置经纬度
//将标签的形状设置为点
markerElement.Geometry = point;
// 添加到图层
ESRI.ArcGIS.Carto.IMarkerElement markerElement_2 = (ESRI.ArcGIS.Carto.IMarkerElement)markerElement;
markerElement_2.Symbol = markerSymbol;
globeGraphicsLayer.AddElement(markerElement, );//想图层添加对象,层叠顺序
//添加一个符号样式步骤
//1 定义一个图层或者获取现有图层 IGraphicsContainer
//2 定义一个基础元素 IElement
//3 定义一个要显示的符号样式(有三种,1 marker symbols 标记符号;2 line symbols 线符号;3 fill symbols 填充符号)
//4 定义基础符号标记接口 IMarkerSymbol
//5 把符号样式强转换为基础符号标记接口
//6 设置基础符号标记的属性
//7 定义一个经纬度坐标Point
//8 给基础元素的几何属性赋值此Point或者其他包含经纬度坐标的几何形状
//9 定义一个书签元素IMarkerElement
//10 把基础元素强转换为书签元素
//11 给书签元素的符号属性赋值基础符号标记
//12 在图层中添加基础元素
}