Evaluates two objects. Use these rules in the <IgnoreClashesBetweenObjects> section and in the <SetClashProperties> section to determine if the clash qualifies based on the criteria. See Configuration File Format.
The syntax and functionality of rules that evaluate two objects are similar to the rules that evaluate single objects, although the rules for evaluating two objects expect criteria that evaluates Object1 and Object2.
Rule Tag |
Details |
|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ByObjectType Decision based on the Type for two objects (BOC User name) |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Example |
For clashes that involve slabs and handrails: <ByObjectType List1="Slab" List2="Handrails"/> |
|||||||||||||||||||||||||||
ByObjectTypeAndAspect Decision based on ObjectType and Aspect of the two objects involved in the clash |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Examples |
|
|||||||||||||||||||||||||||
ByName Decision based on the two object Names |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
ByObjectPG Decision based on the PG of two objects |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Examples |
For clashes between member parts where at least one member part is in the GHOST permission group: <ByObjectPG List1="GHOST" List2="*" |
|||||||||||||||||||||||||||
BySystemPath, ByParentSystemPath, ByAssemblyPath, ByParentAssemblyPath Decision based on two objects' system path, system hierarchy parent's system path, assembly path, or assembly hierarchy parent's assembly path |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
For clashes between piles (member parts under a system named Piles) and foundations (footing, footing component, and slab under a system named Foundation): <ByParentSystemPath |
|||||||||||||||||||||||||||
ByInterfaces Decision based on a clash involving two objects that implement the specified interfaces according to the metadata |
||||||||||||||||||||||||||||
Attributes |
You can use wild cards to specify these attributes |
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
For clashes involving welds and piping parts using an interface approach: <ByInterfaces |
|||||||||||||||||||||||||||
ByAttribute Decision based on property values (one each) of two objects
|
||||||||||||||||||||||||||||
Attributes |
Because the greater-than (>) and less-than symbols (<) require an escape in XML, we recommend that you use the equivalent text (GT and LT)
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Examples |
|
|||||||||||||||||||||||||||
ByR3DProject, ByR3DFile Decision based on clash involving R3D objects based on the R3D project name or the R3D file name from which the object originated |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Examples |
|
|||||||||||||||||||||||||||
ByCommonAttributeValues Decision based on a clash involving two objects that have common attribute values for one or more given properties |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
For clashes between individual members of stairs; for example, individual unconnected members with common attribute values identify a group of objects as a stair: <ByCommonAttributeValues Interface1="IJUABuilding" Attribute1="BuildingID" |
|||||||||||||||||||||||||||
ByCommonAncestor Decision based on two objects with a common system ancestor or one object that shares the parent with another object. |
||||||||||||||||||||||||||||
Attribute |
AncestorInterfaces - names of the interfaces to be evaluated by the object or the object's ancestor in the system hierarchy. |
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
Evaluates clashes between welds of the same pipeline: <ByCommonAncestor <ByCommonAncestor LimitToObjectTypes1="Equipment*" LimitToObjectTypes2="Member*" AncestorInterfaces="IJSmartEquipment"/> |
|||||||||||||||||||||||||||
Interconnected Eliminates clashes between route parts connected by one intermediate part but clashing in different aspects; typically used for pipes that are adjacent to an elbow, tee, or branch component that clashes on an insulation aspect |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Example |
Qualifies clashes between interconnected parts in the insulation aspect for both pipes and ducts: <Interconnected ObjectTypes="Pipes, Ducts" |
|||||||||||||||||||||||||||
RangeBoxesDoNotOverlapAfterTrimming and OrientedRangeBoxesDoNotOverlapAfterTrimming Decision made by checking whether an object's range boxes still overlap after the range boxes shrink by a given tolerance This rule is useful when a horizontal pipe slightly overlaps a steel part, and for similar configurations in other global directions. |
||||||||||||||||||||||||||||
Attributes |
Trim1 and Trim2 - the tolerance to trim the range box (RangeBoxesDoNotOverlapAfterTrimming) or the oriented range box (OrientedRangeBoxesDoNotOverlapAfterTrimming) Apply trim values to achieve the same effect as specifying Negative Clearance. This is useful when a pipe rests on or slightly overlaps a steel member underneath the pipe. |
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Examples |
RangeBox implies the objects' extents along global X,Y,Z directions, and is bigger for objects in skewed directions (that is, objects that are not along a global X,Y,Z axis). Therefore, the first example is suited for situations where a horizontal pipe slightly overlaps a steel component, and similar configurations in other global directions. <RangeBoxesDoNotOverlapAfterTrimming
|
|||||||||||||||||||||||||||
SlabPenetration Decision made by checking if the clash situation involves an object that penetrates a slab |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Example |
Ignores a clash that involves a grating slab penetrated by either a pipe less than three inches in diameter, a handrail, or a member part (column or brace type): <SlabPenetration |
|||||||||||||||||||||||||||
WithinToleranceToMemberPartEnd Decision made by checking if the clash involves a member part within a certain tolerance from the end of the member part |
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Example |
Qualifies clashes that involve any objects with columns or braces within 10 inches from the part end: <WithinToleranceToMemberPartEnd Tolerance="10in" |
|||||||||||||||||||||||||||
ByIndividualObjectRules Decision based on a clash between two single object rules; you can combine different rule types under the ByIndividualObjectRules tag
|
||||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
Qualifies clashes between welds and sleeves: <ByIndividualObjectRules </ByIndividualObjectRules> |
|||||||||||||||||||||||||||
ByRulesCombination Decision based on combined rules that evaluate two clashing objects; the rule is evaluated if all of the combined rules are evaluated
|
||||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Example |
Qualifies clashes between approved underground cable tray and approved underground equipment pits where both construction types are set to Existing to be reused in place: <ByRulesCombination LimitToObjectTypes1="Cable Trays" <ByObjectPG List1="Underground Cabletray" <ByAttribute Interface1="IJConstructionInfo" Attribute1="ConstructionType" Operator1="EQ" Value1=":17" Interface2="IJConstructionInfo" Attribute2="ConstructionType" Operator2="EQ" Value2=":17"/> <ByAttribute Interface1="IJDObject" Attribute1="ApprovalStatus" Operator1="EQ" Value1=":8" Interface2="IJDObject" Attribute2="ApprovalStatus" Operator2="EQ" Value2=":8"/> </ByRulesCombination> |
|||||||||||||||||||||||||||
UpdateModifiedClashStatus Use this rule to update the clash status of the modified clash marker whenever there is a change in the clash marker type.
|
||||||||||||||||||||||||||||
Attributes |
|
|||||||||||||||||||||||||||
Control |
|
|||||||||||||||||||||||||||
Examples |
For evaluating the rule using a single clash marker type option: <UpdateModifiedClashStatus List1="Clearance" List2="Severe"/> For evaluating the rule using multiple clash marker type options: <UpdateModifiedClashStatus List1="Clearance,Optional,Severe" List2="Severe"/> For limiting the rule to particular objects: <UpdateModifiedClashStatus List1="Clearance,Optional,Severe" List2="Severe" LimitToObjectTypes1="Pipes" LimitToObjectTypes2="Equipment"/> For excluding particular objects from the rule: <UpdateModifiedClashStatus List1="Clearance,Optional,Severe" List2="Severe" ExcludeObjectTypes1="Pipes" ExcludeObjectTypes2="Equipment"/> For updating the Remarks attribute whenever this rule is used: <UpdateModifiedClashStatus List1="Severe" List2="Clearance" Remarks="Updated as part of UpdateModifiedClashStatus rule"/> |