## Saturday, August 18, 2012

### Tangential arcs

The question on how to create parametric tangential arcs in families (ex: structural section profiles, extrusion sketches, etc.) seems to come up quite often. And it can be done in Revit: it’s just not as straight-forward.

An AUGI thread resurrected this discussion last month and in my opinion, it was approaching the question from the wrong end. Sure, you can do complicated trigonometric formulas to solve this (I know, I am the Count (Formula) after all!), but it is best to avoid them if at all possible. Intuition says that if you keep things simple and parameterize through simple labels (no calculated parameters), everything should run faster, leaner and more efficient.

So you be the judge. Should you go with this (source: BIM and Beam):

or this?

You be the judge! The key is to use the "Tangent End Arc" type and then constrain along both sides to set where the center of the arc is, (no need to parameterize the arc’s radius). More details can be found in the AUGI post.

EDIT: And even more detail can be found here on Steve’s blog!

Alfredo Medina said...

Hey, David. I am glad to see that we arrived at different solutions for the same challenge. Very interesting thread at Augi and very interesting and blog articles, here, and at Revit OpEd.

Dave Baldacchino said...

Thanks Alfredo! That's the beauty of our profession (and software): there are always multiple answers. I will have a follow-up post and add some edits to this one as my initial proposal quit working thanks to a pesky ASD. My goal was to show that a non-formula version was possible. I shudder thinking at the solution suggested by BIM & Beam when used for structural sections. Imagine the associated performance repercussions on any decent sized project using sections with all those calculated values! This would be a great benchmarking exercise to try out.

Joshua S. said...
This comment has been removed by a blog administrator.
Joshua S. said...

David, thanks for the alternative explanation. I was tearing my hair out trying to figure out an easier way. I currently have a building form in which the exterior walls are based on two masses with mirrored profiles containing tangential arcs as you have described, then canted, cut with voids at then tops and ends and panelized with an irregular pattern. By far the hardest parameters to work through have been changing the angle or length of the straight lines and making the tangential arcs update! TG for the interwebs to learn from everyone else.

Dave Baldacchino said...

Joshua, you're welcome. However note that my blog post explanation turned out to fail as well. For the final result, see the AUGI thread. I'll do my best to post a follow-up on this topic to clarify why and how to get it to work without math.

Alfredo Medina said...

Hi, guys, I just posted some additional information about the tangential arcs problem in that same thread in Augi.

Alfredo Medina said...

Hi, Dave, Remember you said you would make a performance test, to compare Revit's performance with 1000 instances of the solution with geometric contraints, compared with 1000 instances of the solution with formulas? Did you ever have the chance to do that? We wanted to know which of the two solutions required more "thinking" for Revit. It might be the same, but it would be interesting to test it.

Dave Baldacchino said...

Nope :( *sad trumpet sound* But I will...I'll see if I can get to it today so it can be crossed off my list :)

Dave Baldacchino said...

The verdict is very surprising! There is virtually no difference in computational performance between the two approaches. I created two files with 100,000 instances of each solution (both with type-based parameters, same values) and Revit finished in both cases right on...there's like one frame difference between them, which is attributable to other things. See this video edited with Picture in Picture in Camtasia: http://youtu.be/V6vOoi8i5Jg

Alfredo Medina said...

Very interesting test, David! Nice to know the results. So both things take the same "thinking" for Revit to resolve 100,000 instances of that family, either by geometric constraints or by formulas. Very interesting! Thanks a lot for taking the time to do the video.