I've just spent a whole day trying to make a parametric flange with bolt holes. I can't make the bolt holes subtract from the flange? I had to nest the flange into a family, then turn it into a group in order to get the bolt holes at the correct orientation. Any help appreciated. Or if anyone can post a parametric flange with bolt holes that would also be appreciated.
Solved! Go to Solution.
Ah, drongo - I should have made the extrusions as voids. Corrected version attached.
I have used a parameter called Angle2 to rotate the group depending on how many bolt holes there are. This works but is there a better way to rotate a circular array?
I checked the rfa file you attached, for the radial array, you can draw a void, and constrain it to the location you need, then select this void, use radial array, set the rotation center, then set Number, and Angle to 360, then press Enter key on keyboard, this array is finished. Then set a Number parameter for the array. See attachment "array.JPG".
If my post answers your question, please click the "Accept as Solution" button. This helps everyone find answers more quickly!
Thanks for looking at this problem. I have made three attempts but can't get the voids to cut the flange body
Attempt 1) Failed Array
I created the void & constrained its location using parameters A and B. (A=cos(Angle) x PCR, B=sin(Angle) x PCR) see image attached.
I proceeded to create the array in the order you suggested and….nothing happened! No array was formed and no error messages either?
Attempt 2) Failed Array
I created the void in its own separate family with the constraints as per Attempt 1). I then created a new family and inserted the ‘void family’. I then tried to create the array as per your instructions…..nothing! no errors!
Attempt 3) Array works!!!! BUT voids do not cut the flange body
As per attempt 2 albeit no positional contraints in the void family - only on the void family AFTER it has been nested into the host family. Array now works - voids do not cut? I have made the void family using the generic face based template. In the void familt I have also ticked 'Cut With Voids When Loaded'. The host family is also of 'Generic Model' type.
I need to show bolt holes on my stainless steel fabrications. I work on projects that invole flanges at odd angles: without the bolt holes being shown my fabricators wouldn't know which orientation to weld the flanges at. Here's a link to one of my projects showing the odd angled fabrications: http://youtu.be/REAg4Viu34w
Before you create the array of the void family, try creating a circular reference line to control the array diameter/radius, and a straight reference line to control the angle/placement of the array instance. Align and lock the end of the reference line to the vertical and horizontal reference planes that define the center of the circle, then create an angular parameter to control the placement of the first instance of the void. Alternatively, if the angle isn't important, but the number of holes is, then place the first instance of the void at the intersection of the reference circle and the reference plan that defines the center of the circle.
In general, tying geometry, especially arrayed geometry, to reference planes and reference lines is more stable than trying to tie the parameter to the geometry itself.
Good luck! (radial parameters can be a pain)
Thanks for the reply Ross.
How can the circular reference line be linked to the array diameter/radius? I can only do this through a nested family - which works but then the voids do not cut the flange body.
I'm in a catch 22 - I cannot create the flange in just one family and control the arrays radius through a paraemter - it has to be a nested family for this to work. But when the family is nested the voids don't cut?
Try making the voids a face-based generic model, and then host them to the face of the flange in your parent model. That way you've got a nested void that will cut.
To link the array diameter to the radius of the circular reference line, you don't actually link the two together with dimensions or contraints, you would go into the Family Types dialog in the family editor, and set the Array Radius parameter equal to the circular reference line radius. That way changing one, changes the other, but they're still semi-independent entities. The circular reference line is there to control the path of the array more than the radius.
On my post labelled attempt 3 I have attached the family which has the voids created as 'face based' and nested so that the array can have parameters added. The voids aren't cutting the flange though......
I have created a circular reference line on the attached RFA. It has the radius parameter linked to the array radius ..... but I don't see what this achieves? (Note: I have included the type catalog text file).
You need to go into your void family, go to the modify tab, and choose cut, then pick the void and the host face. Right now, your void hasn't been told to cut anything, so it's just getting hosted as a void model in the parent family. I made it cut, then loaded it back into the parent family, and it cuts the host object. You'll have to recreate the ones that are arrayed after you reload the family, though. Something weird happening with the ones that are in groups already.
Thanks for your patience with this, I am definitely getting closer. I have started both families from scratch again. The bolt hole voids were started using the generic face based template. The host family was started with a generic tamplate. The nested voids now cut - good news.
Now the array doesn't work with the following area:
"Group instances of the same type do not contain identical members. Press "Fix Groups..." to select from options to make the groups consistent.
Corresponding group members in different group instances diverge in the following respects:
- different positions relative to the group origin"
Clicking 'Fix Groups' doesn't work...