zoukankan      html  css  js  c++  java
  • AE读取CAD图层包括注记

            public override void FillDatabase(Teigha.DatabaseServices.Database pDb)
            {
                IFeatureClassContainer pFeatureClassContainer = pCADFeatureDataset as IFeatureClassContainer;
                IEnumFeatureClass pEnumFeatureClass = pFeatureClassContainer.Classes;
                IFeatureClass pFeatureClass = pEnumFeatureClass.Next();
               
                while (pFeatureClass != null)
                {               
                    LoadLayer(pFeatureClass, pDb);
                    Debug.WriteLine(pFeatureClass.FeatureType.ToString() + "-" + pFeatureClass.AliasName + "-" + pFeatureClass.ShapeType.ToString());
                    pFeatureClass = pEnumFeatureClass.Next();
                }
            }
            private void LoadLayer(IFeatureClass pFeatureClass, Teigha.DatabaseServices.Database pDb)
            {
    
                int indx = pFeatureClass.FindField("Layer");
                int idxColor = pFeatureClass.FindField("Color");
                int idxText = pFeatureClass.FindField("TxtMemo");
                int idxHandle = pFeatureClass.FindField("Handle");
               
                pCursor = pFeatureClass.Search(null, false);
                IFeature pFeature2 = pCursor.NextFeature();
                //写入点线
              
              if (pFeatureClass.FeatureType == esriFeatureType.esriFTCoverageAnnotation)
                    {
                        while (pFeature2 != null)
                        {
                            string geoName = "C_" + pFeature2.get_Value(indx).ToString();
                            string sAnnotation = pFeature2.get_Value(idxText).ToString();
                            IPoint pPoint = pFeature2.Shape as IPoint;
                            double x = 0, y = 0;
                            pPoint.QueryCoords(out x, out y);
                            Point3d pt = new Point3d(x, y, 0);
                            addTextEnt(modelSpaceId, pt, pt, sAnnotation, 2, TextHorizontalMode.TextLeft, TextVerticalMode.TextTop, LayerNames[geoName], ttfStyleId);
                            pFeature2 = pCursor.NextFeature();
                        }
                    }
                    else
                    {
                        if (pFeatureClass.ShapeType == esriGeometryType.esriGeometryPoint)
                        {
                            while (pFeature2 != null)
                            {
                                IPoint pt = pFeature2.Shape as IPoint;
                                pFeature2 = pCursor.NextFeature();
                            }
                        }
                        else if (pFeatureClass.ShapeType == esriGeometryType.esriGeometryPolyline)
                        {
                            short shtColor = 1;
                            while ((pFeature2 = pCursor.NextFeature()) != null)
                            {
                                string geoName = "C_" + pFeature2.get_Value(indx).ToString();
                            }
                        }
                        else if (pFeatureClass.ShapeType == esriGeometryType.esriGeometryPolygon)
                        {
                            short shtColor = 1;
                            while ((pFeature2 = pCursor.NextFeature()) != null)
                            {
                                string geoName = "C_" + pFeature2.get_Value(indx).ToString();                           
                            }
                        }
                }
               System.Runtime.InteropServices.Marshal.ReleaseComObject(pCursor);
                pCursor = null;
            }
        }


     

  • 相关阅读:
    Ubuntu下用NdisWrapper安装网卡驱动
    Ubuntu下轻松切换GDM, LightDM , KDM
    Ubuntu常用软件推荐,图文详细说明及下载
    Matlab绘图-很详细,很全面
    安装sunvirtualbox
    Ubuntu下使用虚拟机安装Windows XP(sunvirtualbox)
    Ubuntu下安装vmware 9.0 + 注册码
    Linux如何用QQ?Linux下QQ使用的几种方案
    怎么解决 ubuntu 装kde桌面遇到的汉化问题
    Ubuntu下安装KDE及安装中文环境
  • 原文地址:https://www.cnblogs.com/yhlx125/p/3511215.html
Copyright © 2011-2022 走看看