I've recently discovered the joy of ADDHANGER command. I've figured out the workings of hangers, and believe it'll be a great tool for coordinating in a 3D model. It'll help us become much faster as well.
The next step i want to achieve is to tag these hangers. The tag that I've found to work is:
"Top of " <Length of Hanger/Channel> "Unistrut"
"@ "<Elevation of top of channel/bottom of conduit> "A.F.F."
I can get the top line to work fine, but I'm having troubles with the second line. I've created the property set definition for objects to include both hangers and conduit, but the value on conduit size doesn't register when I tag the hanger.
Any help would be appreciated.
If you are tagging the hanger then you cannot read information regarding the conduit. That information does not reside on the hanger but resides on the conduit. They are two seperate parts and you cannot create a tag that reads two parts at once. What tags can do is utilize property set information and with property sets you can read information THROUGH an anchor that will essentially allow you to read information from more than one part at once. This comes with some caveats though. You can only read information one way through an anchor. So if part A was anchored to part B, you can tag Part A and read information about Part B. You cannot tag Part B and read information about Part A. To make matters worse, the standard autocad Mep hangers do not utilize the sort of anchor that property sets can read through. If they do, I am not aware of how they do it. What you can do to make it work is to use the objectanchorattach tool and manually anchor each hanger to a piece of conduit and read the information that way. This would be the only way that I know of to read the hanger elevation by tagging the hanger. There are no automatic properties for hangers that report the elevation of any portion of the hanger. That is why most people create and use either a mvpart or a pure structural item. You can get alot more control out of either of them. The only advantage of using the hanger tool in autocad mep is the automatic placement option.
Maybe I'm not speaking the terms properly, but I think I'm already going the direction you mentioned. I'm also apparently having more difficulty creating tags than I had imagined. I've never done this outside of the Mastering AutoCAD MEP book. I've tried following the steps from a new drawing, but I can't even tag the hanger with a basic tag that adds the channel left & right offsets ... and I haven't even tried to incorporate the conduit size either.
Attached is the file I'm working in at the moment. What am I missing to get the tag to work correctly?After getting my hanger to appear as I want it and setting up the property set, here's what I've done:
What am I missing, or what have I done wrong?
I have made a little progress. I found that I can first modify the ConduitStyle to include Size. With that, I was able to add that as an anchor property definition to my HangerObject. However, the units don't appear to match up, and I can read that data on my hanger itself. However, when I add that field to a formula definition, the formats conflict and my return is the number-filled-formula (2.5+20+2 7/8"). I don't understand, as my Drawing Units (not Property Data Format) are set to Fractions. With my property set, everything is set to the Standard Data Format. To make this more confusing, I can easily solve the problem by changing my Drawing Units to Decimal and my Property Definition works fine (without getting to the tag, yet). But I don't want to have to work in decimal when everything else is feet/inches.
The standard data format is currently set to:
When I change the Type to Length, then units & format to inches/architectural, the value I have returned to me is 0! This makes no sense.
What about you, Josh, have you found anything? A lot of this would easier if Autodesk automatically incorporated the ChannelWidth as an option when placing a hanger. The reason for this, is because on the electrical side, when running a rack of conduit, the electricians like to keep their hangers in 2" increments. This gives them the most flexibilty between their different types of unistrut (2-inch slotted, 4-inch slotted, etc). They can make a cut without having the holes being cut through. I'll be sure to repeat this in the Wish List, although I see that's rarely updated by community members and hopefully it's not ignored by Autodesk Developers.
If there's a totally easier way to accomplish what I'm trying that I'm not understanding, please let me know. My main goal here is to quickly add hangers to my drawing, then tag them with the data above. Right now my method is Extrude pline unistrut profile, extrude circle, rotate3d and place rods, manually adjust extrusion length, copy/paste/modify as necessary, confirm elevations, manually tag using multileaders & text.
did you ever get this figured out... ?
can you post an image of what the formula property definition is showing?
At first I thought that 'Enter Sample Values' panel only had to do with testing the formula... however, I found that it can affect the returned value you get...
Attached are 2 images. All units are in inches, but the length type is as the file is named.
In my mind Autodesk really missed the boat when creating MEP Hangers. They left out alot of the functionality that is included with structural items upon which MEP hangers are built. As I mention in my first post I either use MvParts or Structural items as my hangers. I have included a dwg that has a structural trapeze hanger that I created. It has stretchable grips for all of its parts. i.e. you can grip change the length of the channel or the length of the threaded rods. The threaded rods act indepently of each other for those occasions why you need them too. Additionally since they are also an AEC item you can anchor them to duct, pipe, conduit or cable tray. Additionally they will also anchor to fittings which the out of the box MEP hangers will not do without some major tricks. Since they are a structural item you can just create a property set that has the length of the channel, the width, the height etc. It is still limited by the anchoring issue of reading property sets thru anchors but it is an improvement over the alternative.
I agree with you on the hangers thing. They should have used structural members. in fact... Our trapeze hangers are also structural members... the exception between your's and our's is that we use a pipe object. We've created a pipe type whose name is All-Thread rod.
The benifit is that we can set the top of the pipe to be the elevation you want right from the properties palette... We've automated ours and have a lisp.
The options to extend the pipe includes a prompt similar to the following.
Enter a point (Slope, Plane, Elevation):
You can click a point and the lisp pulls the Z value from the point you pick.
Enter E... and you can type in an elevation. Enter S (Slope) and it prompts for two point that defines a slope. Enter P (Plane) and it prompts for 3 points that lay on a plane... so a sqewed plane can be used. In either case the lisp extends all the rods you pick and extends the top of the pipe to that elevation.
On another note: one the formula property... see the attached. Perhaps this will help.
The structural trapeze hanger i posted previously was something that I have been playing around with in my spare time. When working I use hangers that are mvparts for both clevis hangers and trapeze hangers and use pipe objects for the threaded rods much as you do. We have an automatic insertion routine that will place all of the hangers in the correct locations, stretch the trapeze hangers to the correct width, run the threaded rods to the correct elevation, and even automatically anchor the threaded rod to the hangers and the hangers to the threaded rod. I am currently working on an automatic tagging routine to tag the hangers and I am polishing up a routine that will place a mvblock at the top of the threaded rod to simulate springs, inserts, no-fly zones, etc. Its crazy what you can accomplish with dotnet once you figure out what you want to do.