Autodesk.Revit.DB.RoutingCriterionBase是Revit中用于定义路径贯穿性(path traversal)标准的基类。路径贯穿性指的是在路径过程中如何移动、穿过或绕过对象(如管道或电缆)的能力。路径贯穿性标准用于创建路径以满足特定的设计要求,例如管道不能穿过某些物体或需要保持最小弓形(minimum bend radius)等等。
RoutingCriterionBase类是一个抽象类,不能直接实例化。实现特定路径贯穿性标准的子类应该派生自RoutingCriterionBase类。
RoutingCriterionBase类没有公共属性。
RoutingCriterionBase类提供了一些方法,包括:
ComputeGuidsComputeGuids方法用于计算和返回应用于路径贯穿性标准的唯一标识符(GUID)。派生自RoutingCriterionBase类的子类必须实现此方法。
public abstract Guid[] ComputeGuids();
EqualsEquals方法比较当前RoutingCriterionBase对象与指定对象是否相等。
public override bool Equals(Object obj);
GetHashCodeGetHashCode方法生成当前RoutingCriterionBase对象的哈希码。
public override int GetHashCode();
以下是RoutingCriterionBase的使用示例:
public class MyRoutingCriterion : RoutingCriterionBase
{
public override Guid[] ComputeGuids()
{
return new Guid[] { new Guid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx") };
}
}
MyRoutingCriterion myCriterion = new MyRoutingCriterion();
Guid[] myCriterionGuids = myCriterion.ComputeGuids();
foreach (Guid guid in myCriterionGuids)
{
// use the GUID in a path creation command
}
上述代码示例创建了一个名为MyRoutingCriterion的自定义路径贯穿性标准,并使用ComputeGuids方法返回一个GUID数组。然后,使用GUID在路径创建命令中使用路径贯穿性标准。