ArcEngine开发,如何将IFeature转化成ILine对象?

时间:2021-06-24 15:01:06
我有一个IFeature对象(知道它是一个只有两个端点的直线)。那我如何将它转化,而得到一个ILine对象

5 个解决方案

#1


IFeature有一个shape 的属性.你取得后然后转化成ILine就行了.

不过转化之前最好判断一下是不是ILine类型,以防转化出错.

#2


楼上的方法是错误的,ILine和IPolyLine是不能转换的,IFeature.Shape是一个高级实体,ILine是低级实体,是不能直接转换的,如果要取得ILine的话需要通过ISegmentCollection接口处理:
Dim pSegmentCol As ISegmentCollection
Set pSegmentCol = pFeature.Shape
Set pLine = pSegmentCol.Segment(0)

#3


楼上是高手

#4


mark.

#5


应该是yemao20说的那样吧

#1


IFeature有一个shape 的属性.你取得后然后转化成ILine就行了.

不过转化之前最好判断一下是不是ILine类型,以防转化出错.

#2


楼上的方法是错误的,ILine和IPolyLine是不能转换的,IFeature.Shape是一个高级实体,ILine是低级实体,是不能直接转换的,如果要取得ILine的话需要通过ISegmentCollection接口处理:
Dim pSegmentCol As ISegmentCollection
Set pSegmentCol = pFeature.Shape
Set pLine = pSegmentCol.Segment(0)

#3


楼上是高手

#4


mark.

#5


应该是yemao20说的那样吧