阅读:1914回复:1
两个要素分别在两个图层,有什么思路能判断它们之间的关系?
<LI class=msgarticle>请问,在同一图层中,可以通过pRelationalOperator.Contains等方法进行要素间的关系运算,但现在我的两个要素分别在两个图层,有什么思路能判断它们之间的关系? </LI>
<P>思路如下:将其中一个图层的一个要素取出,然后获得它的shape属性对象,将这个属性对象作为另一个要素做空间运算的geometry属性。</P> <P>pFeature1代表A图层的要素,pFeature2代表B图层的要素<BR>ITopologicalOperator pTopologicalOperator=(ITopologicalOperator)pFeature1.Shape;<BR>ESRI.ArcGIS.Geometry.IRelationalOperator pRelationalOperator = pTopologicalOperator as ESRI.ArcGIS.Geometry.IRelationalOperator;<BR>MessageBox.Show(pRelationalOperator.Within(pFeature2.Shape).ToString());</P> <P><BR>执行到MessageBox总报如下错误:<BR>未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 Example.exe 中。<BR>其他信息: HRESULT 中的异常:0x80040215。<BR></P> |
|
1楼#
发布于:2007-04-11 20:17
<P>老兄,我也碰到了同样的问题,但我是用ITopologicalOperator.Intersect()函数时报错的,不知道为什么呢,你解决了么?急!~!!</P>
|
|