Esempio n. 1
0
        //得到所有交点
        private static IPointCollection GetAllIntersect(IFeature pFeat, List <IFeature> listFeats)
        {
            IPointCollection pItersectCol = new MultipointClass();

            IPointCollection pPntColTemp = pFeat.Shape as IPointCollection;
            IPolyline        pPolyline   = pPntColTemp as IPolyline;

            foreach (IFeature pFeatTemp in listFeats)
            {
                IGeometry pGeometry = pFeat.Shape;
                if (!pFeat.Equals(pFeatTemp))
                {
                    IPointCollection pItersectColTemp = GetIntersection(pFeatTemp.Shape, pPolyline);
                    if (pItersectColTemp != null)
                    {
                        pItersectCol.AddPointCollection(pItersectColTemp);
                    }
                }
            }

            return(pItersectCol);
        }