Exemple #1
0
        /// <summary>
        /// Delegate called to process every line feature in the model.
        /// Called by <c>Build</c>
        /// </summary>
        /// <param name="o">An item found in the spatial index.</param>
        /// <returns>True (always), indicating that the spatial query should keep going.</returns>
        /// <exception cref="Exception">If an error occurred building a polygon.</exception>
        bool ProcessLine(ISpatialObject o)
        {
            Debug.Assert(o is LineFeature);
            LineFeature line = (LineFeature)o;

            try
            {
                line.BuildPolygons(m_NewPolygonExtent, m_Index);
                return(true);
            }

            catch (Exception e)
            {
                string msg = String.Format("Error building polygon starting at line {0} ({1})",
                                           line.ToString(), e.Message);
                throw new Exception(msg);
            }
        }