soundboy 发表于 2004-7-2 17:25:00

如何删除一个层

如何删除一个非当前数据库的层。


就是删除AcDbLayerTableRecord记录。

boaosun 发表于 2004-7-2 21:41:00

void Cad_LayerDelete(CString LayerName)<BR>//图层删除<BR>//LayerName为图层名称<BR>{        AcDbLayerTable * pLayerTbl;//定义层表指针<BR>       AcDbLayerTableRecord * pLayerTblRcd; //定义层表记录指针


       Cad_SetCurLayer("0");                                       //设置为当前图层<BR>       Cad_LayerClear(LayerName); //删除图层所有对象


       acdbHostApplicationServices()-&gt;workingDatabase()-&gt;getLayerTable(pLayerTbl,AcDb::kForWrite); //以写方式打开层表,获得层表指针<BR>        if (pLayerTbl-&gt;getAt(LayerName,pLayerTblRcd,AcDb::kForWrite)==Acad::eOk)<BR>       { <BR>                       pLayerTblRcd-&gt;erase(true);       //删除图层<BR>       }<BR>        pLayerTblRcd-&gt;close(); //关闭层表记录<BR>        pLayerTbl-&gt;close(); //关闭层表<BR>}<BR>
页: [1]
查看完整版本: 如何删除一个层