ArcEngine可以帮助开发者在地图上添加文本,并且可以指定文本的位置。开发者可以使用ArcEngine的API来指定文本的位置,以及文本的大小、颜色等属性。此外,ArcEngine还提供了一些预定义的文本样式,可以帮助开发者快速添加文本。
(1)你试试用AxTOCControl.Updata()(2)//如果pRenderer是IUniqueValueRenderer
pRenderer.AddValue(pValue, pHeading, pSymbol)
pRenderer.set_Label(pValue, pLabel)//这里的pLabel可以就是符号旁边的标注
//如果pRenderer是ISimpleRenderer,看你的问题描述应该是这种类型的渲染
pRenderer.Label = pLabel;//这里的pLabel可以就是符号旁边的标注
这样的的开发主要用在 ArcSever 开发中;ArcEngine 是用来开发桌面的。当然你想在 ArcEngine 中实现此功能,也不是不可以。
图钉 和 小泡 可通过 IElement接口来绘制。
思路可以是这样的:
(如:你想在 A 点实现这样的 *** 作)
1、你可以截取 图钉 和 小泡 的图片各两张,通过ArcGIS制作成点状
符号;
2、在程序打开时,通过 IElement接口 在 A 点处 绘制一个图钉(即:
将做好的 图钉 符号通过代码加到 A 点的位置);
3、在AxMapControl添加一个单击事件,代码内容为:
如果,点击的是 A 点,则删除 A点处的 图钉 符号 并加载 小泡
符号,且d出 A点的信息窗体。如果,点击的不是是 A 点,且 A点
有 小泡 符号,则清空 小泡 符号,并加载 图钉 符号 ,同时关闭
信息窗体。
(下面有一些 关于 IElement 的代码,供你参考)
IElement pElement = null
IGeometry geometry = pFeature.Shape
switch (geometry.GeometryType)
{
case esriGeometryType.esriGeometryPolygon:
IFillShapeElement pPolygonElement = new PolygonElementClass()
pPolygonElement.Symbol = pFillSymbol// 面符号
pElement = pPolygonElement as IElement
pElement.Geometry = geometry
break
case esriGeometryType.esriGeometryPolyline:
ILineElement pLineElement = new LineElementClass()
pLineElement.Symbol = pLineSymbol// 线符号
pElement = pLineElement as IElement
pElement.Geometry = geometry
break
case esriGeometryType.esriGeometryPoint:
IMarkerElement pMarkerElement = new MarkerElementClass()
pMarkerElement.Symbol = pMarkerSymbol// 点符号
pElement = pMarkerElement as IElement
pElement.Geometry = pFeature.Shape
break
}axMapControl1.ActiveView.GraphicsContainer.AddElement(pElement, 0)// 添加 pElement
( 将 点符号 换成你需要添加 的 小泡 或 图标 符号即可!当然其它符号处也要做相应的 修改!)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)