public IPoint get_TrueCentroid(IPolyline pLine)
        {
            IPoint pTrueCentroid = new PointClass();
            double pTC_X = 0;
            double pTC_Y = 0;
            ISegmentCollection pSegs = (ISegmentCollection)pLine;
            for (int k = 0; k <= (pSegs.SegmentCount - 1); k++)
            {
                ISegment seg = pSegs.get_Segment(k);
                double length = seg.Length / 2;
                IPoint pFP = seg.FromPoint;
                IPoint pTP = seg.ToPoint;
                pTC_X = ((pFP.X + pTP.X) * length) + pTC_X;
                pTC_Y = ((pFP.Y + pTP.Y) * length) + pTC_Y;
            }
            pTrueCentroid.X = pTC_X / pLine.Length;
            pTrueCentroid.Y = pTC_Y / pLine.Length;
            return pTrueCentroid;