External References
(n). A link between features, where one or more features depend on a component outside of its current assembly context.
How to Think About External References
Let’s imagine that we have a top-level assembly, called “A.ASM”, as shown in the structural diagram to the right. Inside of that, we create two other assemblies, “B.ASM” and “E.ASM”. Inside of “B.ASM”, we have part models “C.PRT” and “D.PRT”, and inside of “E.ASM”, we place “F.PRT” (shown in the structural diagram to the right).
In this example, if the position and orientation of “D.PRT” directly referenced a feature, surface, edge, or other detail from “F.PRT” – that would be considered an external reference.
The Car Door Example
Let’s assume a car door [A.ASM] is made up of two parts: the door panel [E.ASM] and the door frame [B.ASM]. The door frame is made of two more parts: the frame [D.PRT] and the window [C.PRT]. The door panel [E.ASM] is made of one part: the plastic [F.PRT]. When designing a car door, the clip and holes of the plastic of the door panel [F.PRT] must align with the clips on the frame [D.PRT]. In this example, because the two parts are maintained in separate assemblies, this direct relationship would be an external reference outside the [B.ASM].
How External References Impair Model Performance
In general, external references are not a problem for small assemblies, but they can become a major performance issue for larger assemblies. If a part contains an external reference to another part outside of its assembly, Creo will have to load both assemblies into the session. Creo must do this to properly load and find the correct reference of the external part.
In the example of the car door, Creo would load both the window and the frame separately and in entirety, which takes time and slows down the modeling process. The larger the assembly, the slower the load time. With this in mind, there are two ways to reduce a model’s loading time:
- The user can properly integrate subassembly information using skeleton models.
- The user can also mitigate issues with external references by tweaking Creo’s configuration options.
As you start working with larger and larger assemblies across a growing number of engineers, it becomes increasingly important to have clear best practices for external references. By doing so, you can eliminate hours of wasted time loading extraneous assemblies or re-linking subassemblies.
Stay tuned for additional blog posts on skeleton models and configuration settings to improve model performance and manage complex assemblies. In the meantime, if you’d like a deeper dive, see this prior blog post on how to avoid external references.