Align & Lock Text Label to Curved Array

Align & Lock Text Label to Curved Array

trombeNZ
Enthusiast Enthusiast
871 Views
7 Replies
Message 1 of 8

Align & Lock Text Label to Curved Array

trombeNZ
Enthusiast
Enthusiast

yo forum,

I have a line based detail item family.

I wanted for this example,  not to use the straight line in the template.

I have added a curved reference line and align locked etc.

I have hosted a dashed line onto the curved reference line align etc.

I have a generic text label  nested in to this family.

I have made an instance based radial array with the label and the reference line and also have checked by trying this only on the dashed line.

The array numbering works correctly and the line works as anticipated in a project environment including spacebar swap for the curvature side, and changing the radius of the curve.

 

Typically, the first label in the array stays correctly located however,   as the line is stretched out , the array labels break from their position (roughly in the middle of the line),  and wander off elsewhere.

I believe this is because I cannot find a way to align lock the 2nd / last label in the array,   at the point of creating the array,  to its correct position at the locus of being aligned approximately with the centreline of the curvature lines,  and the end point of the straight reference line of the template and vertical reference planes.

Of course normally it is a straight forward matter to align lock labels to the ref line ends and end ref planes and apply the array, however for this example, I find I have run out of test ideas  to find ways to align the label with the curved line and also be able to lock it in place at the end of the array.

 

I have tried embedded invisible line cross hairs in the label and also tried a invisible line circle with the centre mark turned on so it can be aligned and locked to the base ref planes in the generic annotation template.  I have tried a slightly curved invisible line in the label,  I have tried a small curved reference line. None of these work.

 

I have watched a few Dynamo tutorials but frankly they are far too dense and convoluted to bother attempting to follow through and only looked less than 40% possible chance.

 

I did start out looking into an adaptive generic template hoping to convert or host  the linetype I might want into that template but find you cannot add new linetypes in the manner and place I want unless I am missing something there - yes you can change for other linetypes under the Object Styles but only for the actual system operatives (ref plane, Ref line, point) and not for what I need,  and you cannot import any that I can find ways to,  so other than being able to use hidden line for the spline......I stopped with that method for now.

 

The problem is simple really - how to align a small single line text label to a curved line and how to align lock the label to end points of the curve,  so they are readable and follow the alignment and array numbering.

All help appreciated.

cheers

 

ADDENDUM:  is there a way,  to be able to activate, the perpendicular  line/faces that are at the end of the reference line ?  (Tab does not work for this)      If I could get a hold of that perp line by activation, then I would be able to align my label to it at each end and the label could be locked always perpendicular to the curvature of the curved line and that might overcome the wandering around because it cannot be locked down ?  (yes tried various sneaks on this, but no go)

 

 

 

 

0 Likes
872 Views
7 Replies
Replies (7)
Message 2 of 8

Mike.FORM
Advisor
Advisor

It looks like your array of labels is not actually flexing. you need to nest the label into a family making the radial array and then nest the arrayed label into the line based family. You also need to use some trig to locate the center point distance away from the line (chord of the arc) and then make a reference plane there so you can align and lock the center of the array family to it.

0 Likes
Message 3 of 8

Mike.FORM
Advisor
Advisor

I took a stab at it using an older family I had.

It seems that labels do not come through to the project if they are nested more than 1 family deep.

It is not a line based family but it operates much the same way with additional parameters making sure it does not break.

The Family is Revit 2023.

0 Likes
Message 4 of 8

barthbradley
Consultant
Consultant

Circular Segments.png

0 Likes
Message 5 of 8

Mike.FORM
Advisor
Advisor

This is the website I use to quickly find out formulas related to any and all shapes.

https://rechneronline.de/pi/geometry.php

On the left side you can see all the categories and the different items in the categories.

I don't remember how I stumbled upon it as it is a german site, but google translates it so it works great.

MikeFORM_0-1686170672921.png

 

0 Likes
Message 6 of 8

trombeNZ
Enthusiast
Enthusiast

yes that makes sense Mike - doh should have tried that along the way.

Thank you

0 Likes
Message 7 of 8

trombeNZ
Enthusiast
Enthusiast

OK Mike will have a look at this and thank you for posting back so soon

0 Likes
Message 8 of 8

trombeNZ
Enthusiast
Enthusiast

Interestingly,  following the normal means to do a radial array -   when you select - "Place"  and select the arc of the reference line in this example,  the centre point of an implied circle that would complete the arc  become visible and you click on that as to place the cursor,  so you can click select your starting point for the array and then follow through the arch length to the end of the arc and click to place the last point / 2nd point of the array,  and everything works ok however,   despite selecting the actual ref line arc in this way there is then a segment lines and arc as with your diagram , that is actually slightly larger,  than the arc of the ref line - this is def unexpected and not correct.

 

I did not notice this behaviour at first,  however checking closely, when you apply the array label,  it is visible that the array line of arc is actually larger than the ref arc - in other words,  they should be the same,  but they are not and I cannot see a reason why that would be.

I will look at these things you have all offered soon and really appreciate your time.

cheers 

0 Likes