Autodesk.Revit.DB.BuiltInFailures.MatchlineFailures是一组定义了在Revit中由Matchline(对接线)引起的失败情况。此类失败情况通常是由于Matchline没有正确对接或与相邻构件之间存在空隙或重叠而引起的。
以下是此类的枚举值:
使用Autodesk.Revit.DB.FailureDefinitionId类可以获取MatchlineFailures的枚举值,示例代码如下:
FailureDefinitionId failureIdOverlap = new FailureDefinitionId(BuiltInFailures.MatchlineFailures.MatchlineOverlap);
FailureDefinitionId failureIdGap = new FailureDefinitionId(BuiltInFailures.MatchlineFailures.MatchlineGap);
FailureDefinitionId failureIdOverlapAndGap = new FailureDefinitionId(BuiltInFailures.MatchlineFailures.MatchlineOverlapAndGap);
当使用Matchline时,如果发现MatchlineFailures中的任何一个失败情况,则可以使用Autodesk.Revit.DB.FailureMessage类来构建一个新的失败消息对象,并将其传递给Autodesk.Revit.DB.FailureHandlingOptions类的AddFailures方法来处理该失败情况,示例代码如下:
FailureMessage failureMessage = new FailureMessage(failureIdOverlap);
FailureHandlingOptions options = new FailureHandlingOptions();
options.SetFailuresPreprocessor(new MyFailuresPreprocessor());
options.AddFailures(failureMessage);
需要注意,上述代码中的MyFailuresPreprocessor是自定义的故障信息预处理器类,如果需要自定义处理失败信息,可以继承该类并实现自己的逻辑。
Autodesk.Revit.DB.BuiltInFailures.MatchlineFailures提供了一组定义由Matchline引起的失败情况,通过FailureDefinitionId类可以获取其值,并使用FailureHandlingOptions类来处理出现的失败情况。