SOLIDWORKS: Raiders of the Lost Arc-Length for 3D Splines

SOLIDWORKS 3D Splines

 

Occasionally, you may need to find the Arc Length of an equation-driven 3D spline.

 

SOLIDWORKS

 

Easy enough you say, ‘Just use the measure tool under the Evaluate Tab’.

 

 

SOLIDWORKS

 

 

But what if you need to find the length between two specific points on the spline? Smart Dimensions won’t help you here.

 

 

SOLIDWORKS

 

 

To do this, we can utilize a nifty SOLIDWORKS command called “Split Entities.” This is a convenient tool sometimes used in SOLIDWORKS Surfacing to define extruding edges. It essentially splits a sketch into selectable sections much like a split line creates selectable faces. You can find it here:

 

 

SOLIDWORKS

 

 

SOLIDWORKS

 

 

Now we can evoke the measure tool for the arc length of the selected segment:

 

 

SOLIDWORKS

 

 

A follow-up question might be, “Is there a way to determine a point on our equation-driven 3D-curve that is a specified distance from a given starting point?” For example, where on the curve is exactly 1.50 mm from an arbitrary point? One way would be to utilize another SOLIDWORKS command known as “Segment”, found here:

 

 

SOLIDWORKS

 

 

SOLIDWORKS

 

 

Notice the Segment command places either points or segments equally spaced between start and end points along the curve (there is an upper limit of 100 points or segments that can be created). The method then for determining a length along the curve path would go something like this:

 

 

Use the Split Entities command to create a section approximately 1.50 mm from a starting point.

 

 

SOLIDWORKS

 

 

Take the difference between the guess point and desired target point:  1.81 mm – 1.50 mm = 0.31 mm.  This is the length our segments need to be.

 

 

The number of stacked segments required to equal 1.81 mm is then approximately:  1.81/0.31 = 5.8  ~  6 segments

 

 

SOLIDWORKS

 

 

Using the measurement tool and selecting the first 5 segments, we get a total curve length of 1.51 mm:

 

 

SOLIDWORKS

 

 

This is close but still 100th of a mm off from our target of 1.50 mm. If we wanted to refine this, we could technically do more iterations of the segmentation process to increase accuracy.

 

 

Too much work you say? The easier approach might be as follows: when we use Split Entities on our equation-driven 3D curve, each new section remains part of the original curve function, the only difference being new t1 and t2 values for the endpoints of newly created sections.

 

 

SOLIDWORKS

 

 

In this case, selecting the section of interest and adjusting t2 in the equation-driven curve property manager, we can manipulate its end-point.

 

 

SOLIDWORKS

 

 

Note that in order to achieve our desired arc-length of 1.50 mm, the value for t2 must be 1.655. Unfortunately, there is no easy way to know what this value should be on a first try (unless you enjoy calculus equations, way too much work!) – so, some trial and error is involved!  If anyone cares to take up a challenge and find an easier way, please respond in the comment section below.

 

 

Thanks for reading!

 

 

James Carlin
Application Engineer
Computer Aided Technology