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 还可以标记命令的执行权限,限制该命令只能由指定的用户或用户组执行。