|
阅读:1796回复:2
ArcEngine+c#,如何求某条线的平行线?
<P>如题!</P>
|
|
|
1楼#
发布于:2006-09-26 09:57
<P>给你说个思路吧,既然算的是平行线,可得出X轴方向上的坐标是相同的(这个思路是关键)</P>
<P>假设平行线之间距离为M</P> <P>1.首先得到该线上的所有节点,并按顺序放到一个数组IPointCollection ACol = Polyline as IpointCollection中。 </P> <P>2.new一个新的IPointCollection BCol</P> <P>3.循环ACol,按平行线的距离算出数组中每个点的偏移点</P> <P> for(int i =0 ;i<ACol.cout;i++){</P> <P> IPoint oldPoint = ACol.<STRONG>QueryPoint(i)</STRONG> as iPoint;</P> <P> IPoint NewPoint = new pointclass();</P> <P> NewPoint.X =oldPoint.x;</P> <P> NewPoint.Y = oldPoint.Y+M;//M是平行线之间的距离</P> <P> BCol.addpoint(NewPoint);</P> <P>}</P> <P>4. 把BCol 转换成线,该线则是目标平行线</P> <P> IPolyline pPolyline = BCol as Ipolyline;</P> <P>基本上是数学运算,没别的。</P><img src="images/post/smile/dvbbs/em02.gif" /> |
|
|
|
2楼#
发布于:2006-09-27 09:41
知道了,谢谢,<STRONG><FONT face=Verdana color=#da2549>hsghxm,非常感谢.</FONT></STRONG>
|
|