如何删除一个层
如何删除一个非当前数据库的层。就是删除AcDbLayerTableRecord记录。 void Cad_LayerDelete(CString LayerName)<BR>//图层删除<BR>//LayerName为图层名称<BR>{ AcDbLayerTable * pLayerTbl;//定义层表指针<BR> AcDbLayerTableRecord * pLayerTblRcd; //定义层表记录指针
Cad_SetCurLayer("0"); //设置为当前图层<BR> Cad_LayerClear(LayerName); //删除图层所有对象
acdbHostApplicationServices()->workingDatabase()->getLayerTable(pLayerTbl,AcDb::kForWrite); //以写方式打开层表,获得层表指针<BR> if (pLayerTbl->getAt(LayerName,pLayerTblRcd,AcDb::kForWrite)==Acad::eOk)<BR> { <BR> pLayerTblRcd->erase(true); //删除图层<BR> }<BR> pLayerTblRcd->close(); //关闭层表记录<BR> pLayerTbl->close(); //关闭层表<BR>}<BR>
页:
[1]