1 private void 输出断面点ToolStripMenuItem_Click(object sender, EventArgs e) 2 { 3 ESRI.ArcGIS.Geodatabase.IWorkspaceFactory wsf = new ESRI.ArcGIS.DataSourcesFile.ShapefileWorkspaceFactory(); 4 IWorkspace ws = wsf.OpenFromFile(@"F:\1-水利项目\安徽水利\0826处理", 0); 5 6 IFeatureClass autoStation = (ws as IFeatureWorkspace).OpenFeatureClass("站点位置线"); 7 IFeatureClass f1 = (ws as IFeatureWorkspace).OpenFeatureClass("断面点"); 8 9 int num = autoStation.FeatureCount(null);10 //Listlistpt = new List ();11 int k = 0;12 for (int i = 0; i < num; i++) //for (int i = 0; i < ptc.PointCount; i++)// for (int i = 0; i < num; i++)13 {14 IPolyline pl = autoStation.GetFeature(i).Shape as IPolyline;15 IPointCollection ptc = pl as IPointCollection;16 if (i < num - 1)17 {18 IPoint pt = ptc.get_Point(0);19 k++;20 IFeature fea = f1.CreateFeature();21 fea.Shape = pt;22 fea.set_Value(fea.Fields.FindField("Id"), k);23 fea.set_Value(fea.Fields.FindField("longi"), pt.X);24 fea.set_Value(fea.Fields.FindField("latit"), pt.Y);25 fea.Store();26 27 }28 else29 {30 IPoint pt = ptc.get_Point(0);31 k++;32 IFeature fea = f1.CreateFeature();33 fea.Shape = pt;34 fea.set_Value(fea.Fields.FindField("Id"), k);35 fea.set_Value(fea.Fields.FindField("longi"), pt.X);36 fea.set_Value(fea.Fields.FindField("latit"), pt.Y);37 fea.Store();38 pt = ptc.get_Point(1);39 k++;40 fea = f1.CreateFeature();41 fea.Shape = pt;42 fea.set_Value(fea.Fields.FindField("Id"), k);43 fea.set_Value(fea.Fields.FindField("longi"), pt.X);44 fea.set_Value(fea.Fields.FindField("latit"), pt.Y);45 fea.Store();46 }47 }48 }