ArcGIS Engine代码段笔记【一】

来源:互联网 发布:qq游戏大厅官方mac 编辑:程序博客网 时间:2024/03/29 12:36

1、打开点云数据

        private void button4_Click(object sender, EventArgs e)        {            ESRI.ArcGIS.GeoDatabaseExtensions.ILasDataset pNewLas = new ESRI.ArcGIS.GeoDatabaseExtensions.LasDatasetClass();            pNewLas.Init(@"D:\tempfile\lasss.lasd");            ILasDatasetLayer pLasLayer = new LasDatasetLayerClass();            pLasLayer.Dataset = pNewLas;            axMapControl1.AddLayer(pLasLayer);        }
     ILasDataset pNewLas = new LasDatasetClass();     pNewLas.Init(@"D:\tempfile\lasss.lasd");     ILasDatasetLayer pLasLayer = new LasDatasetLayerClass();     pLasLayer.Dataset = pNewLas;     axMapControl1.AddLayer(pLasLayer);

2、导出图层为shapefile文件

 public void OperateConvertToShape(string sFileName, IFeatureClass pFC)        {            try            {                string str = sFileName;                string str2 = str.Substring(str.LastIndexOf(@"\") + 1);                string str3 = str.Substring(0, (str.Length - str2.Length) - 1);                IPropertySet set = new PropertySetClass();                set.SetProperty("DATABASE", str3);                IWorkspaceName pWorkSpaceName = new WorkspaceNameClass();                pWorkSpaceName.ConnectionProperties = set;                pWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesFile.shapefileWorkspaceFactory.1";                IFeatureClassName pFeatureClassName = new FeatureClassNameClass();                IDatasetName pDatasetName = pFeatureClassName as IDatasetName;                pDatasetName.Name = str2;                pDatasetName.WorkspaceName = pWorkSpaceName;                IDataset dataset = pFC as IDataset;                IWorkspaceName sWorkSpaceName = new WorkspaceNameClass();                sWorkSpaceName.ConnectionProperties = dataset.Workspace.ConnectionProperties;                if (dataset.Workspace.WorkspaceFactory.get_WorkspaceDescription(true) == "File Geodatabases")                {                    sWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesGDB.FileGDBWorkspaceFactory.1";                }                else if (dataset.Workspace.WorkspaceFactory.get_WorkspaceDescription(true) == "Access Geodatabases")                {                    sWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesGDB.AccessWorkspaceFactory.1";                }                else if (dataset.Workspace.WorkspaceFactory.get_WorkspaceDescription(true) == "SDE Geodatabases")                {                    sWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesGDB.SdeWorkspaceFactory.1";                }                else if (dataset.Workspace.WorkspaceFactory.get_WorkspaceDescription(true) == "In Memory Workspaces")                {                    sWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesGDB.InMemoryWorkspaceFactory.1";                }                else if (dataset.Workspace.WorkspaceFactory.get_WorkspaceDescription(true) == "Shapefiles")                {                    sWorkSpaceName.WorkspaceFactoryProgID = "esriDataSourcesFile.shapefileWorkspaceFactory.1";                }                IFeatureClassName sFeatureClassName = new FeatureClassNameClass();                IDatasetName sDatasetName = sFeatureClassName as IDatasetName;                sDatasetName.Name = dataset.Name;                sDatasetName.WorkspaceName = sWorkSpaceName;                IFeatureDataConverter featureDataConverter = new FeatureDataConverterClass();                featureDataConverter.ConvertFeatureClass(sFeatureClassName, null, null, pFeatureClassName, null, null, "", 0x3e8, 0);                MessageBox.Show("shape文件转出完毕!", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);            }            catch (Exception exception)            {                MessageBox.Show(exception.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);            }        }










0 0
原创粉丝点击