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下递归追索一个包的所有必要依赖项apt_dep.sh
    龙芯系统下,GTK与OPENGL共舞
    Linux应用程序自行开启Core Dump生成功能
    Daliy Algorithm -- day 102
    Daliy Algorithm -- day 101
    Daliy Algorithm -- day 100
    Daliy Algorithm -- day 99
    Daliy Algorithm -- day 98
    Daliy Algorithm -- day 97
    使用R语言进行简单的线性回归
  • 原文地址:https://www.cnblogs.com/yhlx125/p/3511215.html
Copyright © 2011-2022 走看看