久久国产色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_欧美 国产 日本_好吊色欧美一区二区三区
久在线观看视频| www精品久久| 亚洲直播在线一区| 国产精品久久久久久影视| 久久99精品国产一区二区三区| 粉嫩高清一区二区三区精品视频| 国产美女三级视频| 国产区精品视频| 国产乱子伦精品| 国产美女精品视频| 99视频免费播放| 91好吊色国产欧美日韩在线| 97精品欧美一区二区三区| 91精品视频专区| 国产成人精品国内自产拍免费看| 91国产精品视频在线| 91久久久久久久| 久久琪琪电影院| 久久久久久免费精品| 久久精彩免费视频| 国产精品成人av在线| 久久久久国产精品一区| 亚洲精品成人久久久998| 性一交一乱一伧国产女士spa| 少妇高潮喷水久久久久久久久久| 日本一本草久p| 精品欧美日韩| 成人精品一区二区三区电影黑人| 91精品国产精品| www.美女亚洲精品| 久久亚洲电影天堂| 亚洲一区二区三区午夜| 日本不卡一区二区三区四区| 欧美日韩亚洲免费| 国产日韩综合一区二区性色av| 成人在线一区二区| 国产成人精品电影| 国产精品国产三级国产专区53| 亚洲最大成人在线| 欧美理论一区二区| 不卡影院一区二区| 日韩在线不卡视频| 亚洲字幕在线观看| 日韩国产精品一区二区三区| 激情五月五月婷婷| 国产精品一区二区免费看| 68精品久久久久久欧美| 久久久91精品国产一区不卡| 九色91av视频| 日本高清视频精品| 国产精品一区久久久| 久久国产精品免费观看| 久久伊人色综合| 日韩在线综合网| 国产视频精品网| 久久久久久久网站| 亚洲最新在线| 精品无人乱码一区二区三区的优势| 久久免费福利视频| 在线视频不卡一区二区三区| 日韩欧美一区三区| 99在线观看| 欧美xxxx18国产| 欧美亚洲国产另类| 久久久伊人欧美| 一区二区三区在线视频看| 今天免费高清在线观看国语| 国产成人av影视| 亚洲一区二区三区视频| 国产欧美精品在线| 国产精品久久久久久久久久三级| 日本福利视频导航| 国产极品在线视频| 亚洲精品日韩在线观看| 国产欧美日韩一区二区三区| www.日本久久久久com.| 亚洲二区三区四区| 草莓视频一区| 一区二区精品免费视频| 精品少妇在线视频| 国产精品久久久一区二区三区| 欧美一区亚洲一区| 久久精品国产精品亚洲精品色 | 国产精品免费看一区二区三区| 日本中文字幕成人| 久久综合久久网| 亚洲欧洲久久| 国产精品亚洲欧美导航| 国产精品久久久久福利| 欧美激情亚洲天堂| 色婷婷av一区二区三区久久| 性色av一区二区三区| 91成人综合网| 视频一区免费观看| 久久99中文字幕| 欧美中文字幕精品| www.日韩av.com| 加勒比在线一区二区三区观看| 久久精品国产久精国产思思| 欧美性久久久久| 国产精品视频导航| 国产色一区二区三区| 精品乱码一区| 高清av免费一区中文字幕| 中文字幕久精品免| 99电影在线观看| 五月天婷亚洲天综合网鲁鲁鲁| 国产精品69页| 性欧美激情精品| 久久99精品久久久水蜜桃| 青青久久av北条麻妃黑人| 日韩中文字幕在线| 免费黄色福利视频| 在线观看一区二区三区三州| av观看免费在线| 手机看片日韩国产| 精品国产自在精品国产浪潮 | 日韩精品久久久毛片一区二区| 久久久噜噜噜www成人网| 欧美精品123| 中文字幕日韩精品一区二区| 91av在线不卡| 欧美性在线视频| 精品久久精品久久| 91精品成人久久| 欧美亚洲成人网| 色综合视频网站| 国产freexxxx性播放麻豆| 国内精品久久久| 亚洲综合一区二区不卡| 久久国产精品久久精品国产| 欧美精品卡一卡二| 一本久道综合色婷婷五月| 国产对白在线播放| 国产一区二区三区高清视频| 亚洲精品中字| 国产精品免费入口| 久久欧美在线电影| 国产在线一区二区三区四区| 亚洲精品欧美极品| 国产精品视频午夜| 91久久国产综合久久91精品网站| 欧美在线观看网址综合| 一区二区三区四区免费视频| 国产成人无码一二三区视频| 99视频免费播放| 欧美高清视频一区| 亚洲黄色一区二区三区| 国产精品久久久久久久久男| 久久青青草原一区二区| 国产情侣第一页| 人妻无码久久一区二区三区免费| 色中色综合影院手机版在线观看| 国产高清www| 国产欧美一区二区三区在线| 日韩黄色片在线| 亚洲永久激情精品| 国产精品高潮呻吟视频| 国产a级黄色大片| 高清欧美性猛交| 蜜桃麻豆www久久国产精品| 午夜精品理论片| 美日韩精品免费观看视频| 久久久精品视频成人| 91国语精品自产拍在线观看性色| 黄色片久久久久| 日韩国产欧美一区| 动漫3d精品一区二区三区| 色综合久久中文字幕综合网小说| 色视频www在线播放国产成人 | 成人免费观看a| 免费看污久久久| 日韩精品―中文字幕| 午夜精品一区二区三区在线播放 | 欧美久久在线观看| 日本一本中文字幕| 少妇高潮喷水久久久久久久久久| 一区二区精品免费视频| 精品国产第一页| 国产精品区一区| 国产精品无码av在线播放| 九九热久久66| 国产成人综合亚洲| 久久久人成影片一区二区三区| 99在线影院| 99在线看视频| 成人久久18免费网站漫画| 高清一区二区三区四区五区| 国产美女永久无遮挡| 国产乱码精品一区二区三区日韩精品| 国产有码在线一区二区视频| 国产主播在线看| 国产欧美一区二区三区另类精品 | 一区高清视频| 中文字幕乱码人妻综合二区三区| 欧美精品免费看| 精品国产一区二区三区四区vr | 日韩中文字幕av| 日韩中文字幕在线视频播放| 久久精品日韩精品|