jojojojo2002 原文C#实现CAD数据转shape或mdb

  本文所指的CAD数据为不带空间参考和扩展数据的数据。如果CAD带了空间参考或是扩展属性数据的话,就要采用图形和属性分离的方法转CAD数据,即图形转完后需要挂接属性数据库。这里就不详细说明了. ArcGIS和CAD对空间数据的归纳有所不同,在AutoCad中,点线面可以在同一个图层中,但是在ArcGIS中,点线面被严格的区分为了point、polyline和polygon三种类型的图层,所以直接用ArcCatalog查看CAD数据时会看到五个图层(点线面、注记和Multipatch) 话不多说了,进入主题吧。

  下面的方法实现了点线面图层转成Shape文件:

public bool CadDataToShape(string _cadFilePath)
{
//工作空间
IWorkspaceFactory pWorkspaceFactory;
IFeatureWorkspace pFeatureWorkspace;
IFeatureLayer pFeatureLayer;
IFeatureDataset pFeatureDataset;//图层对应数据集 ESRI.ArcGIS.ConversionTools.FeatureClassToFeatureClass feaTofea = new FeatureClassToFeatureClass();
ESRI.ArcGIS.Geoprocessor.Geoprocessor pGeoPro = new ESRI.ArcGIS.Geoprocessor.Geoprocessor(); try
{
string strFullPath = _cadFilePath;
int index = strFullPath.LastIndexOf("\\");
string filePath = strFullPath.Substring(, index);
string fileName = strFullPath.Substring(index + );
string DataSaveFilePath=@"D:\CADToShape\"; cadGISInfo = new stMdbInfo();
cadGISInfo.mdbFeaturesName = new List<string>();
cadGISInfo.mdbname = fileName; //打开cad数据集
pWorkspaceFactory = new CadWorkspaceFactoryClass();
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, ); if (Directory.Exists(DataSaveFilePath + @"\\" + fileName))
{
DirectoryInfo dirInfo = new DirectoryInfo(DataSaveFilePath + @"\\" + fileName);
foreach (FileInfo file in dirInfo.GetFiles())
{
file.Delete();
}
Directory.Delete(DataSaveFilePath + @"\\" + fileName);
}
Directory.CreateDirectory(DataSaveFilePath + @"\\" + fileName);
cadGISInfo.mdbfilepath = DataSaveFilePath + @"\\" + fileName;
//打开一个要素集
pFeatureDataset = pFeatureWorkspace.OpenFeatureDataset(fileName); }

C#实现CAD数据转shape或mdb的更多相关文章

  1. FME之于规划CAD数据质量检测

    最近琢磨规划CAD数据转换入库GIS方面的技术问题,看过一些前辈的文章/文献,对于使用FME WorkBench方面,有了一些了解,往往直接转换数据丢失比较严重,而且GIS对图形属性和空间拓扑比较严格 ...

  2. Linux下实现CAD数据的导出

    近期公司项目涉及到CAD的导出,而且部署服务器申请不到Windows下的,所以技术上的解决方案就是寻求如何在Linux下实现CAD数据的导出. 于是百度了一下,找了几个相关库和软件. 1.dxflib ...

  3. GIS案例学习笔记-CAD数据分层导入现有模板实例教程

    GIS案例学习笔记-CAD数据分层导入现有模板实例教程 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 1. 原始数据: CAD数据 目标模板 2. 任务:分5个图层 ...

  4. ArcGIS案例学习笔记-CAD数据自动拓扑检查

    ArcGIS案例学习笔记-CAD数据自动拓扑检查 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 功能:针对CAD数据,自动进行拓扑检查 优点:类别:地理建模项目实例 ...

  5. 基于ArcGIS的CAD数据向GIS数据转换方法(转)

    基于ArcGIS的CAD数据向GIS数据转换方法 1 CAD数据与ArcGIS数据介绍 地图数据来源多种多样,大多数使用的是计算机辅助设计软件(CAD)制作的数据,CAD软件制图自动化程度高,操作简单 ...

  6. CAD数据分块,偏移校准,加载到百度地图、高德地图、谷歌等地图上

    前面分享过一篇如何将CAD海量数据显示在百度地图上(百度地图Canvas实现十万CAD数据秒级加载),但是很多开发者在CAD数据提取时遇到了问题,所以接下来的文章将介绍如何将CAD数据提取. 准备软件 ...

  7. 百度地图Canvas实现十万CAD数据秒级加载

    背景 前段时间工作室接到一个与地图相关的项目,我作为项目组成员主要负责地图方面的设计和开发.由于地图部分主要涉及的是前端页面的显示,作为一名Java后端的小白,第一次写了这么多HTML和JavaScr ...

  8. 【GIS数据处理】 利用空间关系建立线CAD数据和属性表关联

    这两天遇到一个不太容易解决的问题. 某燃气公司想自己对自建管线进行测绘便于数字化管理,在接受了简单的RTK测量培训和Cass成图培训后,就自己着手开干. 最近数据整理的差不多了,就提交给我请我帮忙核查 ...

  9. 使用FME对CAD数据进行过滤、中心点替换转为shapefile

    1.首先加载CAD数据,并暴露出需要使用到的相关字段.比如:block_number.fme_geometry.fme_type等字段. (本次的管网设备由于是一个圆圈里面有三个文字因此将fme_ty ...

随机推荐

  1. Spring框架学习之第2节

    传统的方法和使用spring的方法 使用spring,没有new对象,我们把创建对象的任务交给了spring的框架,通过配置用时get一下就行. 项目结构 applicationContext.xml ...

  2. Ubuntu rsync同步

    >服务器端:Ubuntu 9.10 - 192.168.1.3客户端:Ubuntu 10.04 - 192.168.1.73 我们先来设置一下服务器端的配置 1.ubuntu系统安装完之后,rs ...

  3. Centos环境下部署游戏服务器-Eclipse

    一直在想这篇文章该不该写,因为这篇文章更像是教你如何使用一个ide这种文章,毫无价值可言.但思来想去还是应给写.上篇文章主要说了编译原理和过程,这篇文章就是理论联系实际的典范.并且很多工程师一辈子都不 ...

  4. Class文件内容及常量池

    当JVM运行Java程序的时候,它会加载对应的class文件,并提取class文件中的信息存放在JVM开辟出来的方法区内存中.那么这个class文件里面到底有些什么内容呢? 一.class文件内容概述 ...

  5. 文件夹属性中只有"常规"解决办法

    Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shellex\PropertySheetHandlers] [HK ...

  6. 爬虫Larbin解析(二)——sequencer()

    分析的函数: void sequencer() //位置:larbin-2.6.3/src/fetch/sequencer.ccvoid sequencer() { bool testPriority ...

  7. ADODB.Connection 错误 '800a0e7a'。。

    今天帮同学调程序的时候发现的:错误提示如下: ADODB.Connection 错误 '800a0e7a' 未找到提供程序.该程序可能未正确安装. /hua1/manage/inc/conn.asp, ...

  8. [原]携程预选赛A题-聪明的猴子-GCD+DP

    题目: 聪明的猴子 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...

  9. Oracle Order Management DropShip Flow for R12

    Oracle Order Management DropShip Flow for R12 Email ThisBlogThis!Share to TwitterShare to FacebookSh ...

  10. 设置Sublime Text2 中代码提示

    打开sublime text的菜单 Preferences -> Package Settings -> GoSublime ->Settings – User  然后输入 { &q ...