qhg103
路人甲
路人甲
  • 注册日期2004-07-12
  • 发帖数48
  • QQ
  • 铜币311枚
  • 威望0点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
阅读:1521回复:2

请教在地图上临时标注画线,谢谢

楼主#
更多 发布于:2005-09-21 15:08
<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>
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15946
  • QQ554730525
  • 铜币25338枚
  • 威望15363点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
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>
举报 回复(0) 喜欢(0)     评分
qhg103
路人甲
路人甲
  • 注册日期2004-07-12
  • 发帖数48
  • QQ
  • 铜币311枚
  • 威望0点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
2楼#
发布于:2005-09-28 10:50
谢谢,我先拿下来用
举报 回复(0) 喜欢(0)     评分
游客

返回顶部