CAD二次开发IFoxCAD框架系列(19)-图层操作

1. 根据名称查询指定的图层

查看层表中是否含有名为"MyLayer"的图层。

csharp 复制代码
         using var tr = new DBTrans();
            if(tr.LayerTable.Has("MyLayer"))
            {
                //要执行的操作
            }

2. 遍历图层名称

遍历图层表并打印每个图层的名字 。

csharp 复制代码
            using var tr = new DBTrans();
            tr.LayerTable.GetRecordNames().ForEach(action: (layname) => layname.Print());

3. 图层新增

创建一个名为"MyLayer"的图层,要求图层颜色为红色,线宽为 0.3mm,可打印。

csharp 复制代码
        [CommandMethod(nameof(createLayer))]
        public void createLayer()
        {
            using var tr = new DBTrans();
            tr.LayerTable.Add("MyLayer",it =>
            {
                it.Color = Color.FromColorIndex(ColorMethod.ByColor, 1);
                it.LineWeight = LineWeight.LineWeight030;
                it.IsPlottable = true;
            });
        }

4. 图层修改

查找名为"MyLayer"的图层,并将图层"MyLayer"的名称改为"MyLayer2",颜色改为 2 号色,设为不可打印。

csharp 复制代码
        [CommandMethod(nameof(updateLayer))]
        public void updateLayer()
        {
            using var tr = new DBTrans();
            if (tr.LayerTable.Has("MyLayer"))
            {
                tr.LayerTable.Change("MyLayer", lt => {
                    lt.Name = "MyLayer2";
                    lt.Color = Color.FromColorIndex(ColorMethod.ByAci, 2);
                    lt.IsPlottable = false;
                });
            }
        }

5. 图层删除

csharp 复制代码
using var tr = new DBTrans();
tr.LayerTable.Delete("0");// 删除图层 0
tr.LayerTable.Delete("Defpoints");// 删除图层Defpoints
tr.LayerTable.Delete("1");// 删除不存在的图层 1
tr.LayerTable.Delete("2");// 删除有图元的图层 2
tr.LayerTable.Delete("3");// 删除图层 3

强制删除图层

csharp 复制代码
using var tr = new DBTrans();
tr.LayerTable.Remove("2"); // 强制删除存在图元的图层 2

上面基本上涵盖了咱们对图层的基本操作,

相关推荐
pchmi2 小时前
CNN常用卷积核
深度学习·神经网络·机器学习·cnn·c#
yuanpan3 小时前
23种设计模式之《组合模式(Composite)》在c#中的应用及理解
开发语言·设计模式·c#·组合模式
滴_咕噜咕噜4 小时前
C#基础总结:常用的数据结构
开发语言·数据结构·c#
万兴丶7 小时前
Unity 适用于单机游戏的红点系统(前缀树 | 数据结构 | 设计模式 | 算法 | 含源码)
数据结构·unity·设计模式·c#
程序猿多布8 小时前
C#设计模式 学习笔记
设计模式·c#
软件黑马王子15 小时前
Unity游戏制作中的C#基础(5)条件语句和循环语句知识点全解析
游戏·unity·c#
shepherd枸杞泡茶15 小时前
第3章 3.3日志 .NET Core日志 NLog使用教程
c#·asp.net·.net·.netcore
Aimeast21 小时前
关于选择最佳.NET Core SSH服务器库的全面分析
c#·ssh
蒋劲豪1 天前
WPF项目暴露WebApi接口;WinForm项目暴露WebApi接口;C#项目暴露WebApi接口;
开发语言·c#·wpf
code bean1 天前
【C# 数据结构】队列 FIFO
开发语言·数据结构·c#