阅读:1695回复:2
请教在地图上临时标注画线,谢谢
<P>请教各位,我是用VB+AO独立开发,现在需要在地图上临时画一条线,和标注,但是都没有显示出来,要画的线对象,长度,坐标都是对的,请帮忙看一下</P>
<P><BR> '标注距离<BR> Dim pLineSymbol As esriDisplay.ILineSymbol<BR> Dim pRGBColor As IRgbColor<BR> <BR> Set pLineSymbol = New SimpleLineSymbol<BR> Set pRGBColor = New RgbColor<BR> pRGBColor.Red = 255<BR> pLineSymbol.Color = pRGBColor<BR> g_pActiveView.ScreenDisplay.StartDrawing g_pActiveView.ScreenDisplay.hdc, esriNoScreenCache<BR> g_pActiveView.ScreenDisplay.SetSymbol pLineSymbol<BR> g_pActiveView.ScreenDisplay.DrawPolyline pLine<BR> g_pActiveView.ScreenDisplay.FinishDrawing<BR>这里的PLINE ,就是垂线,长度,坐标都对,就是在地图上看不到, <BR><BR> g_pActiveView.ScreenDisplay.StartDrawing 0, esriNoScreenCache<BR> g_pActiveView.ScreenDisplay.SetSymbol pSymbol<BR> Set pGeometry = pLine.ToPoint<BR> g_pActiveView.ScreenDisplay.DrawText pGeometry, "距离为:" ; Distance ; "国标为:" ; objGuoBiao<BR> g_pActiveView.ScreenDisplay.FinishDrawing</P> <P>这一小段是标注,也看不到,</P> |
|
1楼#
发布于:2005-09-24 23:36
<P> 用下面的程序可以实现,ag_redLineSymbol<BR>是个定义好的简单线符号,ptmpline<BR>是一条ipolyline</P>
<P>dim pLineElem As ILineElement</P> <P> dim pGraphicsCon As IGraphicsContainer<BR> dim pElement As IElement </P> <P> Set pElement = New LineElement<BR> ptmpline.SnapToSpatialReference<BR> pElement.Geometry = ptmpline<BR> Set pLineElem = pElement<BR> pLineElem.Symbol = ag_redLineSymbol<BR> pGraphicsCon.AddElement pElement, 0</P> |
|
|
2楼#
发布于:2005-09-28 10:50
谢谢,我先拿下来用
|
|