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 //List<IPoint> listpt = new List<IPoint>();
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 else
29 {
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 }