Revit API判断是不是柱族模板_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > Revit API判断是不是柱族模板

Revit API判断是不是柱族模板

 2013/11/21 13:27:08  大气象  博客园  我要评论(0)
  • 摘要:OwnerFamily即族模板。获取类别的方法:Document.Settings.Categories.get_Item(BuiltInCategory.OST_Columns);//判断是不是柱族模板[TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]publicclasscmdCheckFamily:IExternalCommand{boolValidateDocument
  • 标签:模板 API
OwnerFamily即族模板。
获取类别的方法:
Document.Settings.Categories.get_Item(BuiltInCategory.OST_Columns);//判断是不是柱族模板
[TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]
public class cmdCheckFamily : IExternalCommand
{
    bool ValidateDocument(Document rvtDoc)
    {
        if (!rvtDoc.IsFamilyDocument)//判断是不是族文档
        {
            TaskDialog.Show("Family API""This command works only in the family editor.");
            return false;
        }
        Family ownerFamily = rvtDoc.OwnerFamily;
        if (ownerFamily == null)//判断是否使用了族模板
        {
            TaskDialog.Show("Family API""This document does not have Owner Family.");
            return false;
        }
        //取得族类别的方法
        Category catColumn = rvtDoc.Settings.Categories.get_Item(BuiltInCategory.OST_Columns);
        if (!ownerFamily.FamilyCategory.Id.Equals(catColumn.Id))
        {
            TaskDialog.Show("Family API""The category of this document does not match the context of this commands. Please open Metric Column.rft");
            return false;
        }
        return true;
    }
    public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
    {
        UIApplication app = commandData.Application;
        Document doc = app.ActiveUIDocument.Document;
        Selection sel = app.ActiveUIDocument.Selection;

        ValidateDocument(doc);

        return Result.Succeeded;
    }
}url:http://www.cnblogs.com/greatverve/p/ValidateDocument.html
上一篇: 100行代码实现手机被窝里电脑关机功能 下一篇: 没有下一篇了!
发表评论
用户名: 匿名