CAD关于图层隐藏图层操作(com接口c#语言)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u013725001/article/details/102722633

隐藏一个图层的实现思路,得到数据库层表对象,然后根据层名得到层表记录对象,设置层表记录IsOff属性值。

例如代码,让用户在CAD图上选择一个对象,然后隐藏对象所在的图层C#:

private void HideLayer()
{
    // 隐藏选择实体的层。
    MxDrawUtility mxUtility = new MxDrawUtility();
  
       // 当用户在图上选择一个对象。
    MxDrawPoint getPt;
    MxDrawEntity ent = mxUtility.GetEntity(out getPt, "\n 选择要关闭图层的实体:");
    if (ent == null)
    {
        return;
    }
     
    // 该对象层属性。
    string sLayerName = ent.Layer;
     
    MxDrawApplication app = new MxDrawApplication();
    //返回数据库中的层表对象
    MxDrawLayerTable layerTable = app.WorkingDatabase().GetLayerTable();
     
    //关闭指定图层 
    MxDrawLayerTableRecord layerTableRec = layerTable.GetAt(sLayerName, false);
     
    //返回图层是否处于关闭状态
    layerTableRec.IsOff = true;
}

文章例子运行效果:

隐藏图层前:

hidelayer1.png

隐藏图层后:

hidelayer2.png

猜你喜欢

转载自blog.csdn.net/u013725001/article/details/102722633
今日推荐