Sunday, April 20, 2008

"Balustration" continued

Today I'm going to pick up where I left off in the other post on this topic.

Previously, we discussed how the left-over space in the Railing system family can be filled with a baluster at a user-defined spacing. The problem is that we do not have the same level of control we have with the main baluster pattern and the posts, so we cannot define where the top and bottom of this left-over is through the Edit Baluster Placement dialog. So we have to resort to modifying our post and/or baluster families.

Before we begin, here are some interesting facts about balusters:

  • Baluster families (whether posts, panels or neither) cannot be generated through a Generic Model family by selecting the appropriate category, so if creating something from scratch, you need to make sure to start with the appropriate template. The category does not show in the list and in fact, you cannot even do an in-place baluster family. When you open such a family or create one from a template, you'll notice that no category is highlighted in the Family Category and Parameters dialog.

  • The Top Cut Angle and Bottom Cut Angle Instance parameters are used for baluster families. These parameters give you the ability to trim the top and base of a baluster according to the slope of the top and base hosts. The Yes/No parameter "Post"works in conjunction with these parameters. If checked, these angles are set to zero and the top and base of the baluster are cut horizontally against the host and/or the railing's profile origin. Notice that these parameters are also available in the Baluster - Post family template, but the angles and sloping reference planes are not drawn. I personally prefer to use the Baluster template in lieu of the Post template, so I don't have to maintain two separate families. I can simply check the Post parameter to have it trim horizontally.

  • Even though you can un/check the baluster family parameters "Always Vertical" and "Shared", the OK button stays greyed out. So basically these cannot be changed.

  • Baluster templates have a fixed origin. Reference plane's "Defines Origin" parameter has no effect on changing the origin location. Make sure to locate your geometry relative to the original ref. planes set to define the origin. Avoid moving these as you'll get frustrated when the usual logic for geometry location in your project doesn't seem to hold anymore ;) If you lose the origin location, simply import a dwg into your family with some lines located at the WCS Origin, using the Origin to Origin option with Orient to View checked and you'll easily find where it is.

Now that you have some great cocktail-party facts that will make you look smart at your next User meeting or Mixer, we'll move on to see how to give an offset to the base of the baluster family.


Above you can see what's necessary to create control for the base offset. The baluster family has a void at the base and top. For the base void, we need to control the top of the void sketch. So I added a horizontal ref. plane and assigned a label parameter. I called it Base Offset. Then I moved the sloped ref. plane to the intersection of this new horizontal ref. plane and the vertical, center plane. The angular parameter will rotate the sloped plane around the intersection of the sloped plane and the horizontal plane (the two planes that the angular parameter references). In this case, even if you turn on automatic sketch dimensions, you will not see these relationships. Since the horizontal plane can move vertically based on the value of the Base Offset parameter, Revit will also move the sloped plane to maintain the intersection point in the same place. Also note that there's another parameter called "Baluster Height" that is not shown in the image (from ref. level to second ref. plane from top).

When you load this family in your project and assign a positive value, the base of the baluster will move vertically. The same can be done to control the top of the baluster. The top will trim at the angle of the railing slope, but the bottom will be horizontal since the host for the base is flat (the floor or the thread). If you want to make the bottom of the baluster be cut at the same angle as the top, replace the parameter "Bottom Cut Angle" with "Top Cut Angle".


Share/Save/Bookmark

4 comments:

Justin said...

Dave,
I'm sorry to dump this question under this blog post but I can't seem to find your email anywhere on your site. I was wondering if you ever figured out a way to solve the problem of Double Pitched Joists as you posted here
http://forums.augi.com/showthread.php?t=61048&highlight=PITCHED+JOIST
? If not what was your solution/what have you been doing? Thanks again for the great blog! I check it everyday!

Dave Baldacchino said...

Hi Justin!

Not a problem...my email is typed at the end of my profile. I didn't type it as a proper email address to prevent bots from spamming my inbox! (notice the "at" and "dot" wording).

Now to your question. I realized that in Revit Structure, we can create a Truss family which works perfect for this application. You can even make it adjustable in length and it'll stay true to the real double-pitched joist, as long as the number of webs is the same of course. If you don't have Revit Structure, go to the Autodesk website and download the Structural content (family templates) and use the Structural Truss template. You can edit it in Revit Architecture just fine.

Justin said...

Dave,
I do have Revit Structure and am familiar with the Truss tool, my issue then becomes the webbing. I realize it's an array but how do I make the webs cut off/extend to the Top chord of the truss? Do you generally use the "double angle" for the top chord like a typical joist? Thanks Dave!

Dave Baldacchino said...

With a truss family, you just sketch the elevation with the right tool. You don't array the webs as they are not identical in length...you just have to sketch them in. You might need/want to constrain the spacing so they're equally spaced for example, or perhaps work out a relationship of some sort between them. Then once you load the family in the project, you assign the correct member for top and bottom chords etc. To be honest, I didn't try to build an accurate family so far. These are something we pick from a catalog so there's no real incentive at the moment for spending the time.

There is one huge thing that drives me bonkers about this though....you cannot place a truss in Revit Architecture!! Autodesk really needs to re-evaluate this ridiculous state of affairs. Modeling tools are NEEDED in all versions; at least in Architectural.

Post a Comment