阅读:1802回复:1
关于ITextSymbol的问题
<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> |
|
1楼#
发布于:2007-01-24 11:59
<P>ITextSymbol也有点的概念</P>
<P>取出点返回点操作</P> |
|
|