AO叠置分析 C#

用AO做叠置分析 涉及到的接口  IBasicGeoprocessor

但是需要注意: intersect只能对线和面状图层做  代码如下

 


//             ILayer pLayer;
//
//             pLayer =this.axMapControl1.Map.get_Layer (0);    //设置输入的表
//             IFeatureLayer pInputFeaLayer = pLayer as IFeatureLayer;
//
//             ITable pInputTable = pInputFeaLayer as ITable;
//             IFeatureClass pInputFeaClass = pInputFeaLayer.FeatureClass;
//
//             ILayer pLayer2;
//             pLayer2 = this.axMapControl1.Map.get_Layer (1);          //设置Overlay表
//             IFeatureLayer pOverlayFeatureLayer;
//             pOverlayFeatureLayer = pLayer2 as IFeatureLayer;
//             ITable pOverlayTable;
//             pOverlayTable = pOverlayFeatureLayer as ITable;
//
//             if (pInputTable == null || pOverlayTable == null)
//             {
//                 MessageBox.Show ("Table check failed");
//                 return;
//             }
//
//             IFeatureClassName pFeaClassName;
//             pFeaClassName = new FeatureClassNameClass ();
//             pFeaClassName.FeatureType = pInputFeaClass.FeatureType; //esriFeatureType.esriFTSimple;
//             pFeaClassName.ShapeFieldName = pInputFeaClass.ShapeFieldName; //"Shape";
//             pFeaClassName.ShapeType = pInputFeaClass.ShapeType;
//
//             IWorkspaceName pNewWSName;
//             pNewWSName = new WorkspaceNameClass ();
//             pNewWSName.WorkspaceFactoryProgID = "esriDataSourcesFile.ShapefileWorkspaceFactory";
//             pNewWSName.PathName = @"d:\temp";
//
//             IDatasetName pDatasetName;
//             pDatasetName = pFeaClassName as IDatasetName;
//             pDatasetName.Name = "Intersect_result";
//             pDatasetName.WorkspaceName = pNewWSName;
//
//             double tol = 0;
//             IBasicGeoprocessor pBasicGeoprocessor;
//             pBasicGeoprocessor = new BasicGeoprocessorClass ();
//             pBasicGeoprocessor.SpatialReference = this.axMapControl1.Map.SpatialReference;
//             IFeatureClass pOutputFeaClass;
//             try
//             {
//                 pOutputFeaClass = pBasicGeoprocessor.Intersect (pInputTable,false,pOverlayTable,false,tol,pFeaClassName);
//             }
//             catch (System.Exception ex)
//             {
//                 MessageBox.Show ("执行Intersect时发生错误." + ex.Message);
//                 return;
//             }
//
//
//
//             IFeatureLayer pOutputFeaLayer;
//             pOutputFeaLayer = new FeatureLayerClass ();
//             pOutputFeaLayer.FeatureClass = pOutputFeaClass;
//             pOutputFeaLayer.Name = pOutputFeaClass.AliasName;
//             this.axMapControl1.Map.AddLayer (pOutputFeaLayer);

 

 

存此备查  不知道还有没有其他更好的接口 有知道的朋友告诉我一声

转载于:https://www.cnblogs.com/hihikoo/archive/2009/07/16/1524993.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值