您的位置:首页 > 其它

CAD 二次开发 图层操作(2)获取所有图层名称

2013-09-17 16:51 771 查看
接续上文。

如果添加图层的方法读懂之后,实现获取所有图层名称就变得轻而易举了。仅需遍历图层表LayerRecord,取出记录存储即可。具体方法如下:

 #region "取得当前所有图层名称"

        /// <summary>

        /// 取得当前所有图层名称

        /// </summary>

        /// <returns>图层名称集合</returns>

        public ArrayList GetLayerName()

        {

            ArrayList layers = new ArrayList();

                      using (Database db = HostApplicationServices.WorkingDatabase)

            {

                              using (Transaction trans = db.TransactionManager.StartTransaction())

                {

                                      using (LayerTable lt = (LayerTable)trans.GetObject(db.LayerTableId, OpenMode.ForRead))

                    {

                                              foreach (ObjectId id in lt)

                        {

                                                      LayerTableRecord ltr = (LayerTableRecord)trans.GetObject(id, OpenMode.ForRead);

                                                      layers.Add(ltr.Name);

                        }

                    }

                    trans.Commit();

                }

            }

            return layers;

        }

        #endregion

 

对于以上代码,不再赘述。获得当前图档中所有图层名称,实现完毕.

 

如有问题:请加qq1419226548或QQmail给我。 若转载,请注明出处。谢谢。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: