久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区

您的位置:網站首頁 > CAD新聞

C#+ArcEngine加載CAD數據的幾種方法

時間:2011-04-21 10:47:18 來源:未知

打開cad文件的幾種方法

  方法一、通過遍歷CAD數據集,依次加載中點線面注記等圖層,所加載的數據均為一個獨立的圖層。

  IWorkspaceFactory pWorkspaceFactory;
  IFeatureWorkspace pFeatureWorkspace;
  IFeatureLayer pFeatureLayer;
  IFeatureDataset pFeatureDataset;
  //打開CAD數據集
  pWorkspaceFactory = new CadWorkspaceFactoryClass();
  pFeatureWorkspace = (IFeatureWorkspace)pWorkspaceFactory.OpenFromFile(directoryPath, 0);
  //打開一個要素集
  pFeatureDataset = pFeatureWorkspace.OpenFeatureDataset(fileName);
  //IFeaturClassContainer可以管理IFeatureDataset中的每個要素類
  IFeatureClassContainer pFeatureClassContainer = (IFeatureClassContainer)pFeatureDataset;
  //對CAD文件中的要素進行遍歷處理
  for (int i = 0; i < pFeatureClassContainer.ClassCount - 1; i++)
  {
  IFeatureClass pFeatureClass = pFeatureClassContainer.get_Class(i);
  if (pFeatureClass.FeatureType == esriFeatureType.esriFTAnnotation)
  {
  //如果是注記,則添加注記層
  pFeatureLayer = new CadAnnotationLayerClass();
  }
  else//如果是點、線、面,則添加要素層
  {
  pFeatureLayer = new FeatureLayerClass();
  pFeatureLayer.Name = pFeatureClass.AliasName;
  pFeatureLayer.FeatureClass = pFeatureClass;
  this.axmc_Main.Map.AddLayer(pFeatureLayer);
  this.axmc_Main.ActiveView.**();
  }

  }

  方法二、直接打開CAD數據的點線面注記等要素類,所加載的數據均為一個獨立的圖層。

 具體代碼如下:

   CadWorkspaceFactoryClass fac=new CadWorkspaceFactoryClass ();
   String filePath="E:\cad";
   IFeatureWorkspace space=fac.OpenFromFile(filePath,0) as IFeatureWorkspace ;
   下面是打開FeatureClass的代碼:
   //線
   IFeatureClass polyline =space.OpenFeatureClass("NewCAD.dwg:Polyline");  
   IFeatureLayer layer=new CadFeatureLayerClass ();
   layer.FeatureClass =polyline;
   //點
   IFeatureClass point=space.OpenFeatureClass ("NewCAD.dwg:Point");
   layer=new CadFeatureLayerClass ();
   layer.FeatureClass =point;
   //面  
   IFeatureClass polygon=space.OpenFeatureClass ("NewCAD.dwg:Polygon");
   ayer=new CadFeatureLayerClass();
   layer.FeatureClass =polygon;
   //注記  
   IFeatureClass anno=space.OpenFeatureClass ("NewCAD.dwg:Annotation");
   layer=new CadAnnotationLayerClass();
   layer.FeatureClass =anno;
//其實在Coverage文件的開發方式與Autocad方法類似,可以參考.


  方法三、利用繪圖空間直接加載CAD數據集,加載后各類型數據作為一個圖層顯示。

  

  IWorkspaceFactory pWorkspaceFactory = new CadWorkspaceFactoryClass();

  IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(directoryPath, 0);

  //--定義一個CAD畫圖空間,并把上邊打開的工作空間賦給它

  ICadDrawingWorkspace pCadDrawingWorkspace = pWorkspace as ICadDrawingWorkspace;#p#分頁標題#e#

  //--定義一個CAD的畫圖數據集,并且打開上邊指定的工作空間中一幅CAD圖

  //--然后賦值給CAD數據集

  ICadDrawingDataset pCadDrawingDataset = pCadDrawingWorkspace.OpenCadDrawingDataset(fileName);

  //--通過ICadLayer類,把上邊得到的CAD數據局賦值給ICadLayer類對象的

  //--CadDrawingDataset屬性

  ICadLayer pCadLayer = new CadLayerClass();

  pCadLayer.CadDrawingDataset = pCadDrawingDataset;

  //--利用MapControl加載CAD層

  this.axmc_Main.Map.AddLayer(pCadLayer);
  this.axmc_Main.ActiveView.**();

  方法四、也是遍歷CAD點線面,但是不用檢查數據類型是否為注記。

  IWorkspaceFactory pWorkspaceFactory = new CadWorkspaceFactoryClass();
  IFeatureWorkspace pFeatureWorkspace = pWorkspaceFactory.OpenFromFile(directoryPath, 0) as IFeatureWorkspace;
  IFeatureDataset pFeatureDataset = pFeatureWorkspace.OpenFeatureDataset(fileName);
  IFeatureClassContainer pFeatureClassContainer = (IFeatureClassContainer)pFeatureDataset;
  for (int i = 0; i < pFeatureClassContainer.ClassCount - 1; i++)
  {
  IFeatureClass pFeatureClass = pFeatureClassContainer.get_Class(i);
  IFeatureLayer pFeatureLayer = new FeatureLayerClass();
  pFeatureLayer.FeatureClass = pFeatureClass;
  //ICadLayer pCadLayer = new CadLayerClass();
  //pCadLayer = pFeatureLayer as ICadLayer;
  this.axmc_Main.Map.AddLayer(pFeatureLayer);
  this.axmc_Main.ActiveView.**();

  }

  方法五、類似與方法三。

  //Add passed file to MapControl
  ICadDrawingDataset pCadDrawingDataset = GetCadDrawingDataset(directoryPath, fileName);
  if (pCadDrawingDataset == null) return;
  ICadLayer pCadLayer = new CadLayerClass();
  pCadLayer.CadDrawingDataset = pCadDrawingDataset;
  pCadLayer.Name = fileName;
  this.axmc_Main.AddLayer(pCadLayer, 0);

  /// <summary>
  /// 獲取記錄集
  /// </summary>
  /// <param name="directoryPath"></param>
  /// <param name="fileName"></param>
  /// <returns></returns>
  private ICadDrawingDataset GetCadDrawingDataset(string directoryPath, string fileName)
  {
  //Create a WorkspaceName object
  IWorkspaceName pWorkspaceName = new WorkspaceNameClass();
  pWorkspaceName.WorkspaceFactoryProgID = "esriDataSourcesFile.CadWorkspaceFactory";
  pWorkspaceName.PathName = directoryPath;
  //Create a CadDrawingName object
  IDatasetName pDatasetName = new CadDrawingNameClass();
  pDatasetName.Name = fileName;
  pDatasetName.WorkspaceName = pWorkspaceName;
  //Open the CAD drawing
  IName pName = (IName)pDatasetName;
  return (ICadDrawingDataset)pName.Open();
 


久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区
久久久精品在线| 91精品国自产在线观看| 国产精品国产三级国产aⅴ浪潮 | 国产99视频在线观看| 日韩一二三在线视频播| 久久国产成人精品国产成人亚洲 | 欧美日韩一区二区视频在线观看| 水蜜桃亚洲精品| 亚洲国产婷婷香蕉久久久久久99| 精品国产一区二区三区在线| 国产精品国产一区二区| 国产精品久久久久久久午夜 | 丁香六月激情婷婷| 欧美一区二区三区综合| 日本一区二区在线| 免费在线a视频| 国产一区二区色| av资源站久久亚洲| 91美女片黄在线观| 久章草在线视频| 久久久99久久精品女同性| 久久成人av网站| 亚洲丰满在线| 狠狠97人人婷婷五月| 国产无限制自拍| 久久精品日产第一区二区三区 | 国产精品日韩二区| 伊人久久大香线蕉精品| 色哺乳xxxxhd奶水米仓惠香| 欧美亚洲另类在线一区二区三区| 麻豆av一区二区三区| 国产精品9999久久久久仙踪林| 久久久国产视频| 亚洲二区自拍| 国产欧美在线看| 久久天天躁狠狠躁夜夜躁 | 欧美日韩一区二区三区在线观看免| 国产乱肥老妇国产一区二 | 欧美日韩第一视频| 日韩精品欧美在线| 成人av网站观看| 国产精品久久久久久久9999| 无码人妻精品一区二区三区66| 激情视频在线观看一区二区三区| 久久免费一区| 亚洲一区在线免费| 国产色综合天天综合网| 久久九九有精品国产23| 日本wwwcom| 国产夫妻自拍一区| 夜夜爽www精品| 国产日产欧美a一级在线| 久久久国产精品视频| 欧洲午夜精品久久久| 久久久久久久久久久视频| 亚洲午夜激情| av天堂永久资源网| 欧美激情二区三区| 国产裸体舞一区二区三区| 久久亚洲电影天堂| 国产无套粉嫩白浆内谢的出处 | 欧美综合激情网| 成人免费在线网| 精品国产乱码久久久久久108| 日本一本草久p| 日韩在线视频导航| 男人的天堂狠狠干| 国产精品视频免费观看www| 欧美视频在线第一页| 国产精品视频最多的网站| 欧美 日韩 国产 在线观看| 国产精品国产亚洲精品看不卡| 国产日韩一区二区在线观看| 又粗又黑又大的吊av| 91国产美女视频| 欧美精品欧美精品系列c| 精品国产三级a∨在线| 国产精品自拍片| 亚洲视频导航| 国产极品精品在线观看| 日韩视频在线视频| 欧美成年人视频网站欧美| 国产精品一区二区性色av| 亚洲精品一区二| 久久久av电影| 不卡一卡2卡3卡4卡精品在| 亚洲国产欧美一区二区三区不卡 | 亚洲欧美日韩另类精品一区二区三区| 国产福利视频一区| 精品午夜一区二区三区| 亚洲女人毛片| 国产精品旅馆在线| 国产精品揄拍一区二区| 日本一区二区三区四区在线观看| 欧美大片va欧美在线播放| 久草资源站在线观看| 国产日韩欧美在线看| 日韩国产欧美精品| 亚洲一区精品视频| 久久夜色撩人精品| 久久久精品亚洲| 国产精品99久久免费黑人人妻| 国语自产精品视频在线看| 日韩av免费一区| 亚洲一区二区在线看| 欧美激情综合色综合啪啪五月| 国产精品免费一区豆花| 国产脚交av在线一区二区| 国产精品一区二区电影| 国产欧美丝袜| 国产美女精品视频| 国产精品手机视频| 国产精品网址在线| 国产精品免费视频一区二区| 九色在线视频观看| 久久久久久人妻一区二区三区| 国产xxxx振车| 久久久久久久久久久亚洲| 久久www免费人成精品| 久久久成人精品| 久久亚洲精品毛片| 亚洲午夜激情| 日韩在线观看a| 日本黄网站免费| 欧美一区二区影视| 国产色一区二区三区| 成人精品视频久久久久| 91精品在线播放| 国产成人午夜视频网址| 国产精品国产三级国产专区53 | 日本精品一区二区三区高清 久久 日本精品一区二区三区视频 | xxxx性欧美| 国产精品久久久一区二区三区| 国产精品国产亚洲伊人久久| 亚洲一区二区三区sesese| 日本视频久久久| 激情五月综合色婷婷一区二区| 国产欧美日韩免费| 国产高清一区二区三区| 国产精品日韩精品| 婷婷久久青草热一区二区| 欧美亚洲另类制服自拍| 99视频网站| 国产精品免费在线播放| 日本女人高潮视频| 成人免费网站在线| 国产精品美女免费视频| 自拍视频一区二区三区| 欧美一区观看| 久久久久久久久久久免费精品 | 国产在线精品一区免费香蕉| 91精品国产91久久久久久不卡 | 国产美女久久久| 国产精品国产三级国产专区53 | 欧美成ee人免费视频| av免费观看网| 九九精品在线播放| 欧美日韩亚洲在线 | 99精品免费在线观看| 国产精品第100页| 欧美性视频网站| 日韩一区在线视频| 日本一区二区三区www| 91久久精品国产91性色| 精品国产乱码久久久久久108| 黄色片一级视频| 国产精品久久久久久久久影视| 中文字幕一区二区三区精彩视频| 免费久久久久久| 国产精品久久久久久久av电影 | 国产精品欧美久久| 黄色一级大片免费| 久久艳片www.17c.com| 国产欧美一区二区三区在线| 久久天天躁夜夜躁狠狠躁2022| 欧美成ee人免费视频| 久久久精品在线观看| 黄色一级片网址| 另类美女黄大片| 成人精品久久一区二区三区| 精品久久久久亚洲| 91精品久久久久久久| 亚洲欧美日韩精品综合在线观看 | 欧美精品成人在线| 久久久免费精品视频| 欧美中文字幕在线| 精品国模在线视频| 国产乱码一区| 无码av天堂一区二区三区| 久草资源站在线观看| 国模精品系列视频| 亚洲97在线观看| 日韩一区av在线| 国产精品影院在线观看| 日本韩国在线不卡| 欧美日本亚洲视频| 国产成人精品电影| 超碰在线97av| 国模吧一区二区| 日韩av一级大片|