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(0, index);
string fileName = strFullPath.Substring(index + 1);
string DataSaveFilePath=@"D:\CADToShape\";cadGISInfo = new stMdbInfo();
cadGISInfo.mdbFeaturesName = new List<string>();
cadGISInfo.mdbname = fileName;//打开cad数据集
pWorkspaceFactory = new CadWorkspaceFactoryClass();
pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(filePath, 0);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. CAD数据不通过ArcGIS导出为MDB

    从南方CASS的宣传文章中了解到可以不通过ArcGIS中间件导出为MDB 从GDAL对MDB文件的介绍中了解到,MDB中的Shape字段存储的图形Blob信息和Shp文件写入图形的方式一致 OGR o ...

  2. ArcGIS软件CAD数据通过转换建立GIS数据库

    教程照片及其他详细信息请关注微信公众号:夫也的笔记 公众号内容包含:ArcGIS.ENVI.MATLAB.Python和R语言教程和实际案例分享. 趁着寒假,系统的学习一下ArcGIS,我边学边写,你 ...

  3. CAD数据相互转换注意事项(一)

    原文发布时间:2014-10-22 作者:lkfree 在使用fme进行数据转换时,AUTOCAD的dwg数据和ESRI的shape.gdb.mdb是很常见的格式,本次我们针对cad在转换时的参数设置 ...

  4. CAD数据导入数据库

    CAD数据导入数据库 1.读取CAD数据 分层读取CAD数据 /// <summary>/// 获取CAD图层(点线面)/// </summary>/// <param ...

  5. GIS数据与CAD数据间带属性字段互相转换还原工具,解决ArcGIS等软件进行GIS数据转CAD数据无法保留属性字段问题

    GIS数据与CAD数据间带属性字段互相转换还原工具,解决ArcGIS等软件进行GIS数据转CAD数据无法保留属性字段问题 当shapefile.mdb.gdb等格式的GIS数据,需要转换成dwg格式数 ...

  6. CAD数据与ArcGIS数据的互转换(转载)

    CAD数据往往是分层管理的,将CAD数据转成arcgis数据,最担心的莫过于丢失了属性数据,arcgis9.2提供了一种方法,可以将CAD数据完整的转换为personal geodatabase,属性 ...

  7. CAD数据与ArcGIS数据的互转换

    CAD数据往往是分层管理的,将CAD数据转成arcgis数据,最担心的莫过于丢失了属性数据,arcgis9.2提供了一种方法,可以将CAD数据完整的转换为personal geodatabase,属性 ...

  8. 开源GIS(二十)——CAD数据添加属性转GIS数据

    目录 一.引言 二.CAD与GIS数据基本对应关系 三.cad属性数据添加(图块与块属性) 1.图块 2.块属性 3.ArcGIS中打开导出 四.总结 一.引言 最近南阳又启动了永动机事件,汽车加水制 ...

  9. CAD数据在柔性制造中的重要作用

    在面向智能制造的今天,数据的高效传输与处理应用非常重要,传统制造中的SMT贴片编程人工作业方式仍被大多数中小企业沿用.经调查了解,目前人工做一套新产品程序平均在两个小时以上,这种效率低下的数据处理过程 ...

最新文章

  1. C语言宏定义使用技巧
  2. 线下实操:搭建微服务天气预报应用!
  3. java 二进制报文头_转自:java 文件格式二进制头文件校验
  4. python ctypes模块安装_ctypes模块扩展python
  5. net start mysql 无法启动mysql解决方案之一【NET HELPMSG 3534】
  6. vite打包编译后类名混淆冲突问题处理
  7. uc通讯不成功php版本过高,Ucenter通信失败排查方法
  8. c语言wpf99乘法表,使用JSP输出九九乘法表
  9. 图论 —— 生成树 —— 最小生成树 —— Prim
  10. QT For Android 运行的时候找不到手机怎么办?
  11. Python基础2-Python中文乱码(转)
  12. win10u盘被写保护怎么解除_Win10系统下U盘写保护应该如何破除!
  13. 天龙八部服务器维护怎么进去,天龙八部怎么进不去?维护了吗?到什么时候?...
  14. Greenplum5推出跨云能力,并与阿里云和腾讯云合作落地
  15. 用Python写一个走迷宫的小程序(图形化:matplotlib,dfs,prim)
  16. 对比灵敏度丨信噪比 - 开会用的全向麦克风应该怎么选?
  17. linux手机E680的几个概念
  18. 仿慕课网Android端app——慕课Ime(自写服务器接口)
  19. 华为nova5 pro怎么升级鸿蒙系统,鸿蒙系统终于来了!这几款华为手机都可以升级了...
  20. 让div水平居中的css方法

热门文章

  1. 重新安装Jenkins
  2. pandownload事件_pandownload被执法背后是中国盗版的末路
  3. python getattr用法_python自省函数getattr的用法
  4. pythondifflib详解_python difflib模块示例讲解
  5. 化学实验中计算机技术的应用,浅谈计算机在基础化学实验中的应用
  6. 织梦自定义html文本,织梦内容模型自定义字段及调用方法
  7. jpa 原生sql 查询返回一个实体_JPA查询--使用原生sql 并且把查询结果转为实体对象...
  8. html 弹窗 支持ie8,浏览器兼容性的问题、支持IE8、不支持IE6、想解决这个问题、两个都支持、...
  9. linux socket closeconnection,求助:socket的Connection refused
  10. 冬小麦病虫害的高光谱识别方法研究