Exemple #1
0
        /// <summary>
        /// Prepares the supplied features for intersect detection that should be
        /// performed by <see cref="CadastralMapModel.CleanEdit"/>. This modifies
        /// line features by setting the <see cref="LineFeature.IsMoved"/> property.
        /// Called by the <see cref="Complete"/> method
        /// </summary>
        /// <param name="fa">The features that may contain lines that need to be prepared</param>
        void PrepareForIntersect(Feature[] fa)
        {
            foreach (Feature f in fa)
            {
                LineFeature line = (f as LineFeature);
                if (line != null && line.IsTopological)
                {
                    line.IsMoved = true;

                    // Ensure any polygons in the vicinity have been marked for a rebuild - this
                    // covers new lines that are incident on existing points (where no lines will
                    // get divided).
                    line.MarkPolygons();
                }
            }
        }