Using Dynamic Spline Curves (Alibre Design Tips)
29 Feb, 2008 By: Aaron ArnoldB-splines are the most familiar type of spline in Alibre Design and are useful for a wide variety of tasks. However, one of the strengths of b-spline curves can also be a weakness in certain circumstances: they are rigid and cannot be easily changed without editing the control points that determine the curve. This column discusses how to make another kind of spline -- a spline by reference points, which allows your spline curve to change shape as your part or assembly changes without manually changing the points. If this flexibility is what you need, this method can save you a lot of time and allow for some neat tricks.
In this column, I'll show an example of a spline by reference points used for dynamic cabling in an assembly. Though this example shows only a cosmetic use of this tool, this method often works whenever you need a flexible spline curve.
First, I'll create a new assembly and insert a new part to begin the design. I'm going to design a cabling system, so I'll need three parts: two connectors and the cable to go between them. Let's start with the connectors. Below, I've modeled an example connector piece.
![]() The connector piece of the cabling system. |
Now, I'll duplicate the connector that I just made and insert it opposite the original. Right-click on the new part in the Design Explorer and select Insert Duplicate. Place as many copies as you need. I need only one.
In this example, these two connectors face each other and lie on the same line. I'll need to constrain them to behave in this manner. First, I'll use the Rotate and Move tools to reorient the second connector in the approximate position it should be in. Then, I'll apply an align constraint to the two cylinders as shown below.
![]() Applying an align constraint. |
Now, I'll apply another align constraint to the two cylinders shown below. This leaves only one degree of translational freedom for the assembly, meaning that the two connectors can only move closer together or father apart.
![]() Applying this second align constraint leaves only one degree of translational freedom for the assembly. |
Now, I'll make the dynamic cable. I need to create a new part and use the existing geometry of the two connectors as the starting and ending points of the flexible spline by reference points. To do this, I'll use the Project to Sketch tool. First I open a new part workspace within the context of the assembly by going to Insert / New Part, and then I enter sketch mode facing the sides of the connectors.
Next I'll use the Project to Sketch tool to bring the existing connector geometry into this sketch, and I'll select the Create Reference Figure and Maintain Association to Source options to ensure that when I move the connectors in the assembly, it updates this sketch as well so the cable changes with it. I'll elect to use Reference Figures because these will not actually be part of our sketch. I'll project four items -- the ends of both tubes and an edge of the faces the tubes touch.
![]() Options in the Project to Sketch dialog box. |
Now, I'll create three figures -- two lines that represent the straight portions of the wire that go inside the connector and a spline by reference points that connects to those lines, representing the flexible portion. This sketch will act as the path for a Sweep feature, so the next step will be to make the profile for the sweep. The Spline by Reference Points command is located within the menu structure under Sketch / Figures / Spline / Create / Spline by Reference Points.
![]() The cable layout with an expanded portion to show a simplified version. |
Now I'll exit this sketch and make a new sketch that will represent the profile of the Sweep feature. I'll enter sketch mode on the face highlighted below and create a circle concentric to the connector's circle (and equal to the inner radius) by projecting the inner circle of the connector piece to a sketch with the Project to Sketch tool.
![]() The Project to Sketch tool projects the inner circle of the connector piece. |
Now I'll check the Maintain Association to Source option and create a sketch figure instead of a reference figure. I have a path and a profile, so it's time to make the Sweep feature.
I'll generate a sweep with the Sweep Boss feature using the first sketch I made as the path and the circle I made as the profile. The result is below -- you can see that the ends within the connectors are straight due to that portion of the profile being a line, and it fits perfectly. Even if I change the size of the holes later, the wire will update automatically because I chose the Maintain Association to Source option.
![]() The result of using the Sweep Boss feature. |
The next step is to pattern this wire since I have three total connections. I've made a linear feature pattern to accomplish creating more wires. Depending on what you're doing, this could work or it not may be the best way to do things. In this example, I consider the three wires to be a single unit. If your application requires them to be counted separately, the proper method would be to use an assembly pattern. Regardless of which type of pattern you use, the advantage is that you don't have to constrain each item again.
Now, I'll get back into the assembly workspace so I can start moving the connectors and see what happens. When I move the unanchored part (bottom left), the cable updates in real time and the wire gets longer. It's important to note that this kind of operation (sweep) is pretty expensive in terms of processing power for real-time updates, so it's a good idea to keep instances of it to a minimum.
![]() The cable wire gets longer as the non-anchored part moves. |
If you want to get more complex or more precise, you can create relationships between the reference points of the spline to make it bow or flatten depending on how far apart the end points are from each other -- something that I will not cover in this column. By default, only the endpoints of the spline move, so you would need to set up some additional relationships on the reference points of the spline if maintaining a precise shape is important to your application.
I've covered the specific use of how to use a spline by reference points as a way of creating flexible cabling. However, the more important lesson is how to create dynamic items in general, regardless of whether or not they employ splines. The general workflow is to use Project to Sketch to re-use reference geometry from existing parts as the basis for new parts. When you use the Maintain Association to Source option, which you should do intentionally and not out of habit, your new parts will automatically update their size or location when the source geometry's size or location changes.
For Mold Designers! Cadalyst has an area of our site focused on technologies and resources specific to the mold design professional. Sponsored by Siemens NX. Visit the Equipped Mold Designer here!
For Architects! Cadalyst has an area of our site focused on technologies and resources specific to the building design professional. Sponsored by HP. Visit the Equipped Architect here!