Autodesk.Revit.Attributes.RegenerationAttribute
是一个Attribute类,它可以用来标记Revit API中的命令,并为命令的运行优化提供提示。
RegenerationAttribute
可以被用于以下命令的方法上:
Execute
方法OnPreview
方法OnMouseDown
方法RegenerationAttribute
可以接受以下参数:
RegenerationOption
:表示命令执行后 Revit 会如何重新生成文档中的图形界面。参数值包括:
Manual
:表示不进行重新生成,即不刷新视图。RefreshViews
:表示刷新当前所有视图。ActiveView
:表示刷新当前活动视图。InvalidateActiveView
:表示重置并刷新当前活动视图。下面是一个 RegenerationAttribute
的示例,其中使用了 RefreshViews
作为参数:
[Regeneration(RegenerationOption.RefreshViews)]
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
// command logic
}
RegenerationAttribute
可以提高命令的执行效率,例如:
Manual
:可以避免不必要的界面刷新,加速命令的执行速度。RefreshViews
:可以在执行完命令后自动刷新所有视图,避免用户需要手动刷新。ActiveView
:可以在执行完命令后自动刷新当前活动视图。InvalidateActiveView
:可以在执行完命令后自动重置并刷新当前活动视图,保证视图更新。RegenerationAttribute
可以提高命令的执行效率,但使用时需要根据具体情况选择合适的参数。除此之外,RegenerationAttribute
还可以标记命令的执行权限,限制该命令只能由指定的用户或用户组执行。