private void 创建矢量ToolStripMenuItem_Click(object sender, EventArgs e)
{
//工作空间
IWorkspaceFactory workspaceFactory = new ShapefileWorkspaceFactory();
IWorkspace workspace = workspaceFactory.OpenFromFile(@"D:\Data\shp\create", 0);
IFeatureWorkspace featureWorkspace = (IFeatureWorkspace)workspace;
//字段
IFields fields = new Fields();
IFieldsEdit fieldsEdit = (IFieldsEdit)fields;
IField field = new Field();
IFieldEdit fieldEdit = (IFieldEdit)field;
fieldEdit.Name_2 = "SHAPE";
fieldEdit.Type_2 = esriFieldType.esriFieldTypeGeometry;
//几何图形
IGeometryDef geoDef = new GeometryDef();
IGeometryDefEdit geoDefEdit = (IGeometryDefEdit)geoDef;
geoDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPoint;//具体的图形为点
geoDefEdit.SpatialReference_2 = (ISpatialReference)new UnknownCoordinateSystem();//空间参考
fieldEdit.GeometryDef_2 = geoDef;
fieldsEdit.AddField(field);
field = new Field();
fieldEdit = (IFieldEdit)field;
fieldEdit.Name_2 = "id";
fieldEdit.Type_2 = esriFieldType.esriFieldTypeString;
fieldEdit.Length_2 = 10;
fieldsEdit.AddField(field);
IFeatureClass featureClass = featureWorkspace.CreateFeatureClass("newPoint.shp", fields, null, null, esriFeatureType.esriFTSimple, "SHAPE", "");
IFeatureLayer featureLayer = new FeatureLayer();
featureLayer.FeatureClass = featureClass;
featureLayer.Name = "newPoint.shp";
axMapControl1.AddLayer(featureLayer);
}
ArcEngine(十)创建矢量图层
最新推荐文章于 2023-04-19 13:56:01 发布