GIS与人工智能是未来GIS的归宿

为我们的世界建模

导航

ArcSDE中创建要素类

IFields pFields = new FieldsClass();

IFieldsEdit pFieldsEdit = (IFieldsEdit)pFields;

IGeometryDef pGometryDef = new GeometryDefClass();

IGeometryDefEdit pGeometryDefEdit = (IGeometryDefEdit)pGometryDef;

{

pGeometryDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPolygon;

     pGeometryDefEdit.HasM_2 = false;

     pGeometryDefEdit.HasZ_2 = true;

     pGeometryDefEdit.SpatialReference_2 = (ISpatialReference)axMap1.SpatialReference;

     pGeometryDefEdit.SpatialReference.SetZDomain(-1000, 60000);

}

IField pField = new FieldClass();

IFieldEdit pFieldEdit = (IFieldEdit)pField;

pFieldEdit.Name_2 = "SHAPE";

pFieldEdit.Type_2 = esriFieldType.esriFieldTypeGeometry;

pFieldEdit.GeometryDef_2 = pGometryDef;

pFieldsEdit.AddField(pField);

 

pField = new FieldClass();

pFieldEdit = (IFieldEdit)pField;

pFieldEdit.Name_2 = "GRIDNAME";

pFieldEdit.Type_2 = esriFieldType.esriFieldTypeString;

pFieldEdit.Length_2 = 40;

pFieldsEdit.AddField(pFieldEdit);

 

pField = new FieldClass();

pFieldEdit = (IFieldEdit)pField;

pFieldEdit.Name_2 = "SHAPE.AREA";

pFieldEdit.Type_2 = esriFieldType. esriFieldTypeDouble;

pFieldsEdit.AddField(pFieldEdit);

 

pField = new FieldClass();

pFieldEdit = (IFieldEdit)pField;

pFieldEdit.Name_2 = "SHAPE.LEN";

pFieldEdit.Type_2 = esriFieldType. esriFieldTypeDouble;

pFieldsEdit.AddField(pFieldEdit);

 

//创建网格图层

SDELINK.SdeOracle sdeOracle = Md.OracleSDELink;

 

IFeatureWorkspace pFeatureWorkspace = sdeOracle.getOracleFeatureWS();

IFeatureDataset pFeatureDataset= pFeatureWorkspace.OpenFeatureDataset(sDataSetName);

try

{

pFeatureDataset.CreateFeatureClass(sGridLayerName + "12", pFields, null, null, esriFeatureType.esriFTSimple, "shape", "");

}

catch (Exception ex2)

{

MessageBox.Show("创建失败!\r\n"+ex2.Message);

return;

}

posted on 2011-05-25 15:51  kisstome88  阅读(683)  评论(0编辑  收藏  举报