31 Replies Latest reply on Jul 2, 2018 7:46 PM by Chris Pratt

# Setting Lines and Arcs to Equal Length

Does anybody know if there is a sketch relation or some other function that allows you to set a straight line and an arc to equal length? See the attached image for example. I want the two dimensions that show 13.132 to always remain equal. In this sketch, I have the 5.500 dimension as driven, but in reality, it is the dimension that I would like to be able to vary along with the diameter.

Thanks for your help.

• ###### Re: Setting Lines and Arcs to Equal Length

no relation but equation will do it

• ###### Re: Setting Lines and Arcs to Equal Length

Add an equation to make the line = to the arc

• ###### Re: Setting Lines and Arcs to Equal Length

Troy, he already linked the values. Adding an equation to make the line and arc equal will not improve matters. He wants the 5.500 dimension to drive, while the arc and line remaining the same.

• ###### Re: Setting Lines and Arcs to Equal Length

So he should be able to change the 5.500 dimension to driving and all will be good?

• ###### Re: Setting Lines and Arcs to Equal Length

nope, because that would overdefine the model

• ###### Re: Setting Lines and Arcs to Equal Length

If he changed the equal length arc and line dimensions to driven?

• ###### Re: Setting Lines and Arcs to Equal Length

Glenn Schroeder wrote:

If he changed the equal length arc and line dimensions to driven?

When Linked, dimensions cannot be set to Driven.

When Driven, dimensions cannot be set to Linked.

• ###### Re: Setting Lines and Arcs to Equal Length

Let's start by voting on this ER:

SPR 616783: Ability to create an equal length relation between a line and an edge, arc, or spline (curve).

• ###### Re: Setting Lines and Arcs to Equal Length

Let's work on what Kenneth suggested which is building a more interesting equation.

So you know the 5.5 dimension and need to calculate the arc length. correct?

Let's consider this a problem of geometry. Who will solve it first? Take that as a challenge!

A few helpers:

Let's use the same annotations:

d = diameter

c = chord length

a = arc lenght

t = angle value

k = 5.5

As far as I know:

c = d * sin(360*a/(pi*d))

t = 360 * a/(pi *d)

So I have to work backward. from the 5.5 to find c and that will generate the a.

• ###### Re: Setting Lines and Arcs to Equal Length

Oops, just ignore what I wrote above. We need to use only a geometric construction to get an arc and a line to have the same length.

I might be able to do that if I am allowed to use 2 temporary sheet metal bodies.

... thinking outloud...

• ###### Re: Setting Lines and Arcs to Equal Length

If an equation is going to work then;

.800 has to be driven

OR

Ø36.000 has to be driven

Can't have cake and eat it too.

We're talking about .0005"

Is this part that critical?

• ###### Re: Setting Lines and Arcs to Equal Length

There really is no part here. I am simply using this to show a critical position of something within a concept. For a given diameter, line length and fixed spacing (in this case 36.000, 5.500, and 0.800 respectively), there should be exactly one position where the line segment and are segment are equal length. As far as I can tell, there are a lot of geometric and trigonometric relations that can be used to backward figure this into an equation....but it will take a long time.

• ###### Re: Setting Lines and Arcs to Equal Length

I showed the original picture to a friend of mine (who is currently working on his Math PhD) and he began working on the equation. It is apparently more complicated than I thought, but he is confident that it can be solved using the constraints I have given. I will post when I receive more info.

• ###### Re: Setting Lines and Arcs to Equal Length

Regardless of the equation, one of the dimensions (36.000, 5.500 or 0.800) will have to be set to driven.

Back to the question of using a relation.

If a relation existed then, it would lead you to the statement above, one of the dimensions (36.000, 5.500 or 0.800) will have to be set to driven.

Using the relation method (if it existed) one would have to conclude that the driven dimension (whatever is used) would not be rounded off perfectly with trailing zero's.

• ###### Re: Setting Lines and Arcs to Equal Length

This would be true if I wanted to change the arc and line length, but I don't actually care what they are, just as long as they are equal. Once they are set to equal (relation or otherwise) their dimension then becomes driven by the 36.000, 5.500 and 0.800.

• ###### Re: Setting Lines and Arcs to Equal Length

Josh, you do realize that you've just guaranteed that my regular projects aren't going to make nearly as much progress today as before I found this thread....

• ###### Re: Setting Lines and Arcs to Equal Length

As my kids would say, I know, right.  I’ve spent way too much time looking at a sketch knowing there is a geometric way to solve this…

• ###### Re: Setting Lines and Arcs to Equal Length

and the worst part is, that to look at it you'd say "it's just a couple of lousy triangles and one arc, how hard can it be to define the relationship......"

• ###### Re: Setting Lines and Arcs to Equal Length

1) Constrain the geometry based on radius, offset, horizontal line length, and taper length.  This leaves the arc length temporarily undefined.

2) define the angle from horizontal to the end of arc.

3) create an equation that defines the horizontal line length as the length of the arc (using 2 pi R * angle / 360).

Then when you alter the taper length it will change the other 2 legs.

HOWEVER, you have to open and update the sketch several times as it only updates the angle, the next time it alters the line length, rinse, lather, repeat - SW doesn't iterate equations internally so you have to do that manually.

I'm sure there is a geometric relationship, but when you graph the taper length vs. the arc length you get a parabola.

I also put in an excel sheet tracking taper length vs arc length to try to fit a curve (that's where I found the parabola and abandonned an equation in favor of a relation).

• ###### Re: Setting Lines and Arcs to Equal Length

Chris,

Thank you for the help. That would work perfectly if there was a quicker way to update the equations. For now it will have to do. It's faster than the way that I was doing it. I still feel like there should be a Relation that could be made within SolidWorks that would take some of the manual work out.

• ###### Re: Setting Lines and Arcs to Equal Length

I know there is a geometric relationship buried in there.  Unfortunately after so many years of calculus in college (and the years in between then and now), the intricacies of geometry aren't as fresh as they once were.

Maybe I'll give it a try again tomorrow while I'm waiting on another 6 hour lab experiment.  (although it might take more than 6 hours of head scratching)

• ###### Re: Setting Lines and Arcs to Equal Length

Please do that Chris. I am your biggest fan.

• ###### Re: Setting Lines and Arcs to Equal Length

Josh -

how accurate do you need to be?  It's almost a parabola but not quite...

If you can live with a few % deviation between the true equal length and the calculated length you should be able to use the equation in the Excel chart as the driving dimension for both your straight length and your arc length with the taper as the input.

But if you change the radius or the offset distance you'd have to tweak the constants of the parabola again.  I couldn't see a combination of the variables that was a perfect fit.

(Sorry to let you down Alin, my free time today got gobbled up when I got a flat tire last night that I have to run out and plug).

• ###### Re: Setting Lines and Arcs to Equal Length

I may be off base here as far as what you want or need but if you make the cord length driven and dimension your driving dimension vertically it seems to work.

• ###### Re: Setting Lines and Arcs to Equal Length

Without meaning to sound like an idiot here, what is wrong with simply applying a driving dimension to the line and the arc, and MANUALLY editing the dimension - I mean colour the text if you need to highlight it, but this works 100% of the time. Sometimes old school is the simplest

• ###### Re: Setting Lines and Arcs to Equal Length

You can link the length dims of the arc and line in 2010.  Does this not work in your version?

• ###### Re: Setting Lines and Arcs to Equal Length

But as Kelvin stated:

When Linked, dimensions cannot be set to Driven.

When Driven, dimensions cannot be set to Linked.

Josh wants to control the length of the angled line and make SW calculate the length of those 2 equal lines as driven dimensions.  If you link them to be equal they are no longer allowed to be driven.

• ###### Re: Setting Lines and Arcs to Equal Length

Similar to what Chris found above, I had to perform a series of rebuilds to get things to converge.

I defined the 36" diameter and the 0.8 offset.

I created a dimension for the arc length.

I set the length of the horizontal line equal to the arc length with an equation.

I set the arc length dimension to driven.

Now I adjust the tapered line length.

In the dimension Modify box, I clicked the rebuild icon repeatedly. The number of rebuilds depends on the magnitude of the dimension change. Too large of a change and SW can't make the jump and the sketch fails. 1.2 inches of change seems to be the maximum delta SW could handle. But only in the negative direction. Changing the tapered line from 5 inches to 10 inches works. Reversing that does not. I have to step back down to 5 inches in smaller increments.  A negative change of 1.2 inches takes 15 rebuilds on my machine. 0.5 inches change takes 14 rebuilds. 0.1 inches change takes 12. Going in the positive direction, a change from 5.5 to 10.5 inches for the tapered line takes 14 rebuilds.

I did not perform any checking when the 36" diameter was varied.

Daen

• ###### Re: Setting Lines and Arcs to Equal Length

Here are some solutions:

Check the posted videos and parts. The rest requires some german.

Torsten

• ###### Re: Setting Lines and Arcs to Equal Length

Hi Josh

As I understood your problem, I have spent couple of minutes to work out it. I just put the dimensions as in the supplied figure and inserted an equation to have equal lengths of the arc and the line. That is simple. See the attached figure.

Monika

• ###### Re: Setting Lines and Arcs to Equal Length

Lost souls searching google: as of SolidWorks (SW) 2016 there is a "equal curve length" relation in sketches. It can set equal the length of lines, splines, arcs, and circles but not ellipses (at least as of SW 2017). It appears after selecting the bodies of two of the previously mentioned sketch elements.