且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

ITopologicalOperator Intersect

更新时间:2022-09-18 12:33:14

   /// <summary>
        /// 判断2个几何图形是否相交
        /// </summary>
        /// <param name="oneGeometry"></param>
        /// <param name="otherGeometry"></param>
        /// <returns></returns>
        public bool Intersect(IGeometry oneGeometry, IGeometry otherGeometry)
        {
            try
            {
                ISpatialReferenceFactory3 pSRF = new SpatialReferenceEnvironmentClass();
                ISpatialReference pSR = pSRF.CreateGeographicCoordinateSystem((int)esriSRGeoCSType.esriSRGeoCS_Beijing1954);
                pSR.SetDomain(-400, -400, 400, 400);

 

                oneGeometry.SpatialReference = pSR;
                otherGeometry.SpatialReference = pSR;

                ITopologicalOperator iTopoOperator = (ITopologicalOperator)oneGeometry;

                
                IGeometry outGeometry = iTopoOperator.Intersect(otherGeometry, esriGeometryDimension.esriGeometryNoDimension);
                if (!outGeometry.IsEmpty)
                {
                    return true;
                }
                else
                {
                    return false;
                }           
            }
            catch (Exception ex)
            {
                return false;
            }
        }

分类: ESRI

本文转自Lei Zhang的博客博客园博客,原文链接:http://www.cnblogs.com/threestone/archive/2010/08/19/1803174.html,如需转载请自行联系原作者