PDA

View Full Version : 2013 Schedule Assembly Infill Door Swing



Andy.88917
2014-03-28, 03:59 PM
We have recently started using assembly styles to host our doors and windows and use as cased openings. This allows us to easily add trim to those items and modify that trim globally if needed. We then schedule the assembly which allows us to count cells and schedule multiple door/window styles easier. The only issue we have found is trying to scheduling door swings.

So, here is my question: Is there a way to pull into a schedule the swing of a door when used as a door style infill in an assembly, specifically when the door is the only infill being used?

I have setup anchor property definitions and I can pull information from the item that the assembly is anchored to, but not what is anchored to the assembly. For instance, I can pull the width and material of the wall that the assembly is in but cannot pull the size, type or swing of the door infill that is hosted in the assembly.

Any suggestions?

dkoch
2014-03-28, 05:07 PM
We have recently started using assembly styles to host our doors and windows and use as cased openings. This allows us to easily add trim to those items and modify that trim globally if needed. We then schedule the assembly which allows us to count cells and schedule multiple door/window styles easier. The only issue we have found is trying to scheduling door swings.

So, here is my question: Is there a way to pull into a schedule the swing of a door when used as a door style infill in an assembly, specifically when the door is the only infill being used?

I have setup anchor property definitions and I can pull information from the item that the assembly is anchored to, but not what is anchored to the assembly. For instance, I can pull the width and material of the wall that the assembly is in but cannot pull the size, type or swing of the door infill that is hosted in the assembly.

Any suggestions?

That is the way anchor properties work - item being anchored pulls data from the host object; what you want is the other way around.

It might be possible to do what you want, but it would not be pretty. You would need a formula property that could sort through the drawing database to find objects that are anchored to the Door/Window Assembly to which the formula property is attached, and then grab property data off of the Door (assuming that the Door has the Swing automatic property attached to it). I do not know if there is a way to go directly from the Door/Window Assembly to the items anchored to it or if you would have to iterate over all of the Doors in the project and look at the parent object of each, to see if it is the current Door/Window Assembly.

All of the above presumes that the necessary information is exposed to VBScript in the object model. I have not tried to do this, so it may not be possible.

Andy.88917
2014-03-28, 05:48 PM
That is the way anchor properties work - item being anchored pulls data from the host object; what you want is the other way around.

It might be possible to do what you want, but it would not be pretty. You would need a formula property that could sort through the drawing database to find objects that are anchored to the Door/Window Assembly to which the formula property is attached, and then grab property data off of the Door (assuming that the Door has the Swing automatic property attached to it). I do not know if there is a way to go directly from the Door/Window Assembly to the items anchored to it or if you would have to iterate over all of the Doors in the project and look at the parent object of each, to see if it is the current Door/Window Assembly.

All of the above presumes that the necessary information is exposed to VBScript in the object model. I have not tried to do this, so it may not be possible.

That actually makes sense. So my assembly has the property set "Door by Style" and my door has a property set "Door by Object". I added the automatic definition "ObjectID" to "Door by Style" then added the anchor definition "HostID" to my "Door by Object" so now my door has a definition that is specific to that assembly.

Now the part I don't know how to do. I need to add a formula definition to my "Door by Style" property set that searches the drawing for the HostID that matches it's ObjectID and then I can pull the swing from that. I don't know where to start on that one.

Andy.88917
2014-05-06, 05:21 PM
I've hit a wall! Any suggestions from anyone on the next step or direction I should go?

Andy.88917
2014-10-31, 03:21 PM
I am still looking for an option here. Any new suggestions on how to pull the swing of a door that is being used as an infill in a door/window assembly?

dkoch
2014-11-03, 02:28 AM
I am still looking for an option here. Any new suggestions on how to pull the swing of a door that is being used as an infill in a door/window assembly?

Sorry, I did not mean to leave you hanging. This borders at the edge of my experience, or perhaps slightly beyond, and I have not had the time necessary to see if I could get it to work.

Does the SwingDirection automatic property give you the information you need? My firm does not include swing information in the Door Schedule, leaving the drawing graphics to show the swing. But my experience with the SwingDirection property is that it only returns "Left" or "Right", and does not do "Left Reverse" or "Right Reverse" (reverse bevel, not to be confused with the SwingDirection-Reverse property, which returns "Right" when SwingDirection returns "Left", and "Left" when SwingDirection returns "Right", because in some areas the definition of a left-swing/right-swing is the opposite of other areas). Since there is no way to tell ACA which side is the "lock" side, it would not be able to tell the difference between a left-hand reverse swing and a right swing. Equal pairs of doors report "NA". Uneven pairs report the swing of the "non-leaf" panel (the panel whose width is not specified by the "Leaf Width" property). We use the "PR" format for listing pairs of doors; for uneven pairs, the Leaf Width panel dimension is listed first, followed by the non-leaf width in parentheses, for example, an uneven pair with a Width of 6'-0", a Height of 7'-0" and a Leaf Width of 4'-0" would be listed as 4'-0"(2'-0") x 7'-0". We treat the Leaf Width panel as the active panel, so the SwingDirection property ends up be "wrong" for split pair doors for us.

Another question - do you ever have Door/Window Assembly "frames" that have two or more separate doors? If so, it would be difficult to report on both doors, or control which door was found first. I have not run into this often, but have had a few instances where I had a large room with two doors at opposite ends of one wall, with one overall frame and borrowed lights between the two door openings. In this case, the door swings could be opposite each other.

None of that has any bearing on being able to have a Door/Window Assembly extract a property value from a Door anchored to it, but it would be a shame to go to the effort if the value ended up not being useful.

Andy.88917
2014-11-04, 11:52 PM
You're right, we use door styles for panel infill in our door assemblies. For this reason, we link our door property set to our assemblies, and no property data to our doors. This way we can create a door style and use it for standard swinging doors, pocket doors, double doors, etc and don't have to re-create it for every door style. The door assemblies allow us to use different door trim as well. This helps in our effort to provide quick "sketchy" interior perspectives with our preliminary floor plans (I'll attach an example). Let me know if this helps make sense of what we are trying to do.

dkoch
2014-11-06, 06:36 PM
It looks like your Door/Window Assemblies [D/WAs] are used for door openings with just one Door infill object only, so the issue of having multiple doors in one D/WA would not arise.

I did start looking into this, and thought I had worked out the needed VBScript code, but the code I was using to iterate over all of the objects in the drawing ends up capturing the data for the last Door created for all D/WAs, rather than the Door associated with the particular D/WA. This despite the fact that the line that saves the Swing Direction property is in an IF statement that should only be executed when the value of an anchor property in the Door, which captures the ObjectID of the D/WA, matches the ObjectID property in the D/WA. If I try to exit from the FOR EACH statement that iterates over the objects in the drawing in that same IF statement, it always returns the value associate with the first Door created in the drawing, even for the other D/WAs that do not have that Door.

I will try to come up with a method that works, but cannot guarantee success, or a time when success might occur.