nmlvjun
路人甲
路人甲
  • 注册日期2004-11-18
  • 发帖数35
  • QQ
  • 铜币127枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1669回复:1

关于ITextSymbol的问题

楼主#
更多 发布于:2007-01-24 10:58
<P>在下面的例子中,如果Symbol是ITextSymbol型的话,  怎么返回IEnvelope 呢?如Symbol是IMarkerSymbol,ILineSymbol或IFillSymbol都没问题</P>
<P>public ESRI.ArcGIS.Geometry.IGeometry CreateSymShape(ISymbol pSymbol,IEnvelope pEnvelope)<BR>  { <BR>   //判断是否为“点”符号<BR>   ESRI.ArcGIS.Display.IMarkerSymbol IMarkerSym;<BR>   IMarkerSym = pSymbol as IMarkerSymbol;<BR>   if (IMarkerSym != null)<BR>   {<BR>    // 为“点”符号则返回IEnvelope的中心点<BR>    IArea pArea ; <BR>    pArea = pEnvelope as IArea;<BR>    return pArea.Centroid as IGeometry;<BR>   }<BR>   else <BR>   {<BR>    //判断是否为“线”符号<BR>    ESRI.ArcGIS.Display.ILineSymbol IlineSym;<BR>    ESRI.ArcGIS.Display.ITextSymbol ITextSym;<BR>    IlineSym = pSymbol as ILineSymbol;<BR>    ITextSym = pSymbol as ITextSymbol;<BR>    if(IlineSym != null || ITextSym != null)<BR>    {<BR>     ESRI.ArcGIS.Geometry.IPolyline IpLine;<BR>     IpLine = new PolylineClass();</P>
<P>     IpLine.FromPoint = pEnvelope.LowerLeft ;<BR>     IpLine.ToPoint = pEnvelope.LowerRight  ;<BR>     return IpLine  as IGeometry;<BR>     <BR>    }<BR>    else<BR>    {<BR>     //直接返回一个IEnvelope矩形区域<BR>     return pEnvelope as IGeometry;<BR>    }<BR>   }    <BR>  }</P>
喜欢0 评分0
cl991036
管理员
管理员
  • 注册日期2003-07-25
  • 发帖数5913
  • QQ14265545
  • 铜币29655枚
  • 威望213点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • GIS帝国铁杆
1楼#
发布于:2007-01-24 11:59
<P>ITextSymbol也有点的概念</P>
<P>取出点返回点操作</P>
没钱又丑,农村户口。头可断,发型一定不能乱。 邮箱:gisempire@qq.com
举报 回复(0) 喜欢(0)     评分
游客

返回顶部