예제 #1
0
        public void Clear(WKSEnvelope tileWksBox, WKSEnvelope allWksBox)
        {
            var unhandledErrors = new List <TError>(_attributeErrors.Count);

            foreach (TError error in _attributeErrors)
            {
                if (
                    !EdgeMatchUtils.VerifyHandled(error.BorderConnection.Feature,
                                                  tileWksBox, allWksBox) ||
                    !EdgeMatchUtils.VerifyHandled(error.NeighborBorderConnection.Feature,
                                                  tileWksBox, allWksBox))
                {
                    unhandledErrors.Add(error);
                }
            }

            _attributeErrors.Clear();
            _attributeErrors.AddRange(unhandledErrors);
        }
예제 #2
0
        public void Clear(WKSEnvelope tileEnvelope, WKSEnvelope allEnvelope)
        {
            var toRemove = new List <TNeighborConnection>();

            foreach (TNeighborConnection neighborConnection in NeighborConnections)
            {
                if (
                    EdgeMatchUtils.VerifyHandled(
                        neighborConnection.NeighborBorderConnection.Feature.Shape,
                        tileEnvelope, allEnvelope))
                {
                    toRemove.Add(neighborConnection);
                }
            }

            foreach (TNeighborConnection remove in toRemove)
            {
                _neighborConnections.Remove(remove);
            }
        }