/// <inheritdoc/> public override void SearchAndModifyAttributes(IEnvelope envelope, int chunkSize, FeatureSourceRowEditEvent rowCallback) { SearchAndModifyAttributes(new LineShapefileShapeSource(Filename, Quadtree, null), envelope, chunkSize, rowCallback); }
public ShapefileFeatureSourceSearchAndModifyAttributeParameters(FeatureSourceRowEditEvent featureEditCallback) { FeatureEditCallback = featureEditCallback; }
/// <inheritdoc/> public override void SearchAndModifyAttributes(IEnvelope envelope, int chunkSize, FeatureSourceRowEditEvent rowCallback) { SearchAndModifyAttributes(new PolygonShapefileShapeSource(Filename, Quadtree, null), envelope, chunkSize, rowCallback); }
/// <summary> /// Conditionally modify attributes as searched in a single pass via client supplied callback. /// </summary> /// <param name="sr">ShapeSource for this feature source</param> /// <param name="envelope">The envelope for vector filtering.</param> /// <param name="chunkSize">Number of shapes to request from the ShapeSource in each chunk</param> /// <param name="featureEditCallback">Callback on each feature</param> protected void SearchAndModifyAttributes(IShapeSource sr, Envelope envelope, int chunkSize, FeatureSourceRowEditEvent featureEditCallback) { var samp = new ShapefileFeatureSourceSearchAndModifyAttributeParameters(featureEditCallback); AttributeTable at = null; int startIndex = 0; do { samp.CurrentSearchAndModifyAttributeshapes = sr.GetShapes(ref startIndex, chunkSize, envelope); if (samp.CurrentSearchAndModifyAttributeshapes.Count > 0) { if (null == at) { at = GetAttributeTable(Filename); } at.Edit(samp.CurrentSearchAndModifyAttributeshapes.Keys, samp.OnRowEditEvent); } } while (samp.CurrentSearchAndModifyAttributeshapes.Count == chunkSize); }
/// <inheritdocs/> public abstract void SearchAndModifyAttributes(Envelope envelope, int chunkSize, FeatureSourceRowEditEvent rowCallback);
/// <summary> /// Conditionally modify attributes as searched in a single pass via client supplied callback. /// </summary> /// <param name="sr">ShapeSource for this feature source</param> /// <param name="envelope">The envelope for vector filtering.</param> /// <param name="chunkSize">Number of shapes to request from the ShapeSource in each chunk</param> /// <param name="featureEditCallback">Callback on each feature</param> protected void SearchAndModifyAttributes(IShapeSource sr, IEnvelope envelope, int chunkSize, FeatureSourceRowEditEvent featureEditCallback) { var samp = new ShapefileFeatureSourceSearchAndModifyAttributeParameters(featureEditCallback); AttributeTable at = null; int startIndex = 0; do { samp.CurrentSearchAndModifyAttributeshapes = sr.GetShapes(ref startIndex, chunkSize, envelope); if (samp.CurrentSearchAndModifyAttributeshapes.Count > 0) { if (null == at) at = GetAttributeTable(Filename); at.Edit(samp.CurrentSearchAndModifyAttributeshapes.Keys, samp.OnRowEditEvent); } } while (samp.CurrentSearchAndModifyAttributeshapes.Count == chunkSize); }
/// <inheritdocs/> public abstract void SearchAndModifyAttributes(IEnvelope envelope, int chunkSize, FeatureSourceRowEditEvent rowCallback);