PDA

View Full Version : Parametric Radial Arrays



bulletproofdesign
2009-10-12, 03:25 AM
Okay, here goes.

I am trying to make a simple family of a round table with chairs around it. I would like to parametrically control the radius of the table, the number of chairs and the placement of the chairs relavie to the table. I am having great trouble doing so.

For starters, I create a new Generic Model and load in a simple chair and a round table.... Sounds too easy...

I select the chair and click Array and select radial. I select the centerpoint (at the intersection of my reference planes) and a point on the chair, and rotate it to the next position. I am using the Last option for this array. All seems well...

I set up a few parameters;
Table Radius
Chair Offset
Chair Position = Table Radius + Chair Offset
Chair Number
Minor Angle = 360 / Chair Number

After experimenting, I managed to add an angular dimension Minor Angle between the array start/end markers. I then set the array to Chair Number and it works as expected.

The next issue is to get the spacing to work when resizing the table. Using the radial dimension tool, I added a radial dimension to the arc formed by the array. The problem occurs when I try to change the size of the table, the radial dimension breaks. I click okay and reassign the dimension to Chair position, it adjusts to suit. I change the radius or offset and it breaks again. Again I can now reassign the correct parameter to the radius and it adjusts to suit...

Can anyone help?

phyllisr
2009-10-12, 01:49 PM
Without seeing your desired result, I am not 100% certain I understand your goal but attached are a few families you may deconstruct. Perhaps this will help you solve your problem. I have not been particularly successful getting an array to work on opposite sides of a boat table and though I can get the ends of a racetrack table to work, it is pretty clunky. Have not looked at these in a very long time. Good luck.

twiceroadsfool
2009-10-12, 01:57 PM
A parametric Radial array requires a bunch of Nested Families, but its doable.

You *WILL NOT* get it to work without several nested families. The array creates a group, and the SECOND parameter you add wants to CHANGE the group, and it cannot. I think i used 4 nested families, when it was all said and done... One of them is solely to constrain the arc Array in the proper location.

bulletproofdesign
2009-10-12, 09:24 PM
Thanks for the feedback guys.

I had figured that I would need nested families inside nested families. I have done this with many components in the past, and find that the filesize tends to leap upward. I think its easiest to maket the array in the project, then group all the array components with the table. This will mean that the modifying of the setup will take a little longer, though the final result will be the same.

Dang! This community is supposed to be able to make water into wine!!?!

tee hee

twiceroadsfool
2009-10-12, 09:28 PM
It depends on where you want the efficiency. I watch Interior designers and Drafters alike change the size and shape of a table upwards of ten times. That, and leaving it up to the end user to array the chairs about the right center points is a nightmare, because (no offense to most of my generation) most of them dont understand the geometry of what theyre modeling, LOL. Thats a whole other issue.

I dont EVER worry about file size in Revit, unless its becoming detrimental to performance. And by that i mean a 250MB central file that flat out wont move. And i rarely see that if its 250 MB of well-built models.

Of all of our tables we keep in the stock Office Library (Round, boat, rectanglular, etc.) the only ones ive had to leave QUASI manual are the completely elliptical tables. Having a math formula to roughly estimate a radius for the char arrays just wasnt worth the time (at least, in the sense that i didnt have time to do it.)

But to each their own. Ive seen the place/array/group thing done on a lot of jobs too. Its not the end of the world, by any means.

bulletproofdesign
2009-10-12, 09:59 PM
Well Now.... I have managed to get it to work!!
Twiceroads gave me the hint I needed.

In the chair family, I set up a reference line from the chair to the imaginary center of the array. I added a reference plane to the end and dimensioned it back to a chair reference. I made the new centre reference plane define origin and called the dimension Offset.

Now when I load it into my array family, I don't need to control the offset with the array. The array controls angle only, and the new nested property controls offset.

I have attached it so you can see!!?! (The nested families are borrowed)

Happy Days!!

P.S. This is a work around, the radial array tool doesn't work properly!! tsk tsk