Exemple #1
0
        /// <inheritdoc />
        public override void Apply(IEntireCoordinateSequenceFilter filter)
        {
            if (filter is null)
            {
                throw new ArgumentNullException(nameof(filter));
            }

            _shell.Apply(filter);
            if (!filter.Done)
            {
                foreach (var hole in _holes)
                {
                    hole.Apply(filter);
                    if (filter.Done)
                    {
                        break;
                    }
                }
            }

            if (filter.GeometryChanged)
            {
                GeometryChanged();
            }
        }
Exemple #2
0
        /// <inheritdoc />
        public override void Apply(IEntireCoordinateSequenceFilter filter)
        {
            if (filter is null)
            {
                throw new ArgumentNullException(nameof(filter));
            }

            if (_coordinates.Count == 0)
            {
                return;
            }

            filter.Filter(_coordinates);

            if (filter.GeometryChanged)
            {
                GeometryChanged();
            }
        }