private void SaveToShp() { try { string layerName = "System:StatArea"; ILabelLayer lyr = GetLabelLayer((_activeViewer as ICurrentRasterInteractiver), layerName, _fieldNames); if (lyr == null || lyr.GetAllFeature().Length == 0) { MsgBox.ShowInfo("没有绘制AOI!"); return; } Feature[] features = lyr.GetAllFeature(); using (SaveFileDialog dialog = new SaveFileDialog()) { dialog.Filter = SupportedFileFilters.VectorFilterString; if (dialog.ShowDialog() == DialogResult.OK) { string fileName = dialog.FileName; TryExportPolygon(features, fileName); StringBuilder str = new StringBuilder(); str.AppendLine("矢量导出成功:"); str.AppendLine(fileName); MsgBox.ShowInfo(str.ToString()); } } } catch (Exception ex) { MsgBox.ShowInfo(ex.Message); } finally { } }
public void UpdateLayer(ref Feature fet) { if (fet != null) { ILabelLayer lyr = GetLabelLayer((_activeViewer as ICurrentRasterInteractiver), _layerName, fet.FieldNames); if (lyr != null) { ApplyColor(lyr); lyr.LabelDef.Fieldname = fet.FieldNames[0]; lyr.LabelDef.EnableLabeling = true; lyr.AddFeature(fet); Feature[] features = lyr.GetAllFeature(); fet = features[features.Length - 1]; AddFeatureToListView(fet); } } }