新建图层的函数问题。
根据高程建图层。public ObjectId createLayer(string layername)
{
ObjectId layerId;
Database db = HostApplicationServices.WorkingDatabase;
Transaction trans = db.TransactionManager.StartTransaction();
try
{
LayerTable lt = (LayerTable)trans.GetObject(db.LayerTableId, OpenMode.ForWrite);
if (lt.Has(layername))
{
layerId = lt;
}
else
{
LayerTableRecord ltr = new LayerTableRecord();
ltr.Name = layername;
layerId = lt.Add(ltr);
trans.AddNewlyCreatedDBObject(ltr, true);
}
trans.Commit();
}
finally
{
trans.Dispose();
}
return layerId;
}
这个函数用了之后,直接根据高程新建了图层,把原来的图直接放在了新图层上了。
怎么就会把原来图层上的东西搞没有了呢??怎么让它还能既保留在原来的图层上又有新图层呢? <p>你想一个对象又在图层1,又在图层2?</p>
<p>不可能</p>
<p> </p> 哦。真是个白痴的问题。 图层拷贝就可以,我以前用LISP试过
页:
[1]