一、判断点是否在面内
判断点是否在面内,AE提供了两个方法可以简单实现此功能: TopologicalOperator和RelationalOperator.
pFeature是一个面.
pTmpPt=pTmpFeature.Shape as IPoint
1、利用ITopologicalOperator接口
ITopologicalOperator pRegionTopo = (ITopologicalOperator)pFeature.Shape;
if (pRegionTopo.Intersect(pTmpPt, esriGeometryDimension.esriGeometry0Dimension) != null)
{
//表示点在面上
}
2、利用 IRelationalOperator接口
IRelationalOperator pRelOpt = pFeature.Shape as IRelationalOperator;
if (pRelOpt.Contains(pTmpPt))
{
//表示面包含点
}
这里需要注意的就是,要保证点和面的空间参考必须一致,否则会出错.