Revit 2011 二次开发之“高亮显示错误提示”

[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class ArgumentUsage : IExternalCommand
{
    
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
    {
        UIApplication uiApp 
= commandData.Application;
        
//得到选中的对象
        Autodesk.Revit.UI.Selection.Selection sel = uiApp.ActiveUIDocument.Selection;
        
foreach (Element elem in sel.Elements)
        {
            elements.Insert(elem);
//插入错误列表
        }

        messages 
= "当前选择集中包含如下对象";

        
//为了显示错误信息框,需要返回Failed
        return Result.Failed;
    }
}
过滤出来Wall
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class ElementsWall : IExternalCommand
{
    
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)
    {
        FilteredElementCollector collector 
=
            
new FilteredElementCollector(commandData.Application.ActiveUIDocument.Document);
        
//筛选出来Wall
        ICollection<Element> collection = collector.OfClass(typeof(Wall)).ToElements();
        
foreach (Element e in collection)
        {
            elements.Insert(e);
        }
        
return Result.Failed;
    }
}

posted @ 2011-03-11 13:41  大气象  阅读(2131)  评论(0)    收藏  举报
http://www.tianqiweiqi.com