EaBIM一直以来积极响应国家“十二五”推进建筑业信息化的号召,对建筑领域的信息技术开展深入技术交流和探讨!致力于打造“BIM-建筑师-生态技术”三位一体综合资源交流共享平台,希望为BIM与可持续设计理念及技术的普及做出微小的贡献!!!

萧闫子 发表于 2014-1-8 14:06:31

[实体对象] 获取线型名字


public string GetLinetypeName(ObjectId ID)
{
string functionReturnValue = null;
using (Transaction Trans = DB.TransactionManager.StartTransaction)
{
DBObject obj = Trans.GetObject(ID, OpenMode.ForRead);
if (obj is Entity)
{
    Entity Ent = obj;   
   string rLT = Ent.Linetype.ToUpper;   
   switch (rLT)
   {
    case "BYLAYER":   
   LayerTableRecord LayR = Trans.GetObject(Ent.LayerId, OpenMode.ForRead);   
   functionReturnValue = ((LinetypeTableRecord)Trans.GetObject(LayR.LinetypeObjectId, OpenMode.ForRead)).Name;
   break;   
    case "BYBLOCK":
   functionReturnValue = "CONTINUOUS";   
   break;   
    default:
   functionReturnValue = rLT;   
   break;   
   }
}
else
{   
   functionReturnValue = "";
}
Trans.Commit();
}
return functionReturnValue;
}
页: [1]
查看完整版本: [实体对象] 获取线型名字