In the never-ending quest to find more efficient design methods for our clients, I’ve tried to tackle controlling Frame Generator framing with Model States. Unfortunately, there is no current out-of-the-box method for this, as Frame Generator subassemblies do not possess Model States… However, by incorporating some iLogic, there is a way to mimic the performance of Model State control for these Frame Generator assemblies.
To achieve this goal, building and naming the Frame Generator members is essential. In order to stay better organized, my skeletal model has different sketches for the framing configurations that I desire, as shown in the image below.
When building the frame members, it is important to distinguish the framing that always exists, top, bottom, left and right sides, from the other specific framing. I won’t go into Frame Generator theory, as that’s not the purpose of this post, but I recommend applying primary frame members in one application and then anything specific, like the doors, in a separate application. Also, it is critical, with this method, to name the door framing specifically. In this example, I knocked out the wall framing first, then added the door framing, ensuring the door framing contained the “_Door” portion in the name. If these are not differentiated the iLogic code will not work. Please note that the “Reuse” frame command can save work for the intermediate wall pieces, or a pattern could be applied. If the wall length is dynamic, then a parametric component pattern would be best.
In order to activate the controls, there must be some top-level assembly Model States to drive the iLogic code. You can use whatever names are appropriate, but please be consistent!
Armed with the model state names, iLogic can be employed to determine which frame members are situationally suppressed. The code is available at the end of this post, but here are some highlights of what the code is accomplishing:
In addition to the code itself, I utilized an “Event Trigger” to ensure the iLogic code fires when Model States are activated.
This provides a great workaround for using Model States to control the Frame Generator. Unfortunately, there is a big limitation with this approach… Because Frame Generator subassemblies do not inherently possess Model States, you would need to create two separate wall assemblies for a “left” and “right” wall, because the Frame Subassembly cannot have two rosters of members suppressed simultaneously. Hopefully, Autodesk will provide a better long-term solution, but this method can work for now.
So, this is the current technique, with that limitation. Ideally, Autodesk will add Model States to Frame Subassemblies, which would allow Model State linking to drive further downstream efficiency gains. However, this current method allows Frame Generator control from a top-level assembly, which adds loads of flexibility for modular-type designs. Hopefully you found this tip intriguing and helpful and please leave comments and questions below. Thanks for reading, happy blogging and have a most blessed day!
Link to YouTube Video:
Download the PDF file for this post!
Do you use any of these tips and tricks in your daily workflow? Feel free to brag about your success in the comments!
Like what you’ve read? Subscribe to our blog!
Feel free to share on Twitter or Facebook!