As an Architect I want to check different window types in my model. So my idea was to insert scale able windows in specific openings.
My experience is, it is quite easy to create a Dynamic Component of a window, but it is almost impossible to insert it to a model behaving nice.
This is what I learned:
- My reading in developer minds is absolutely bad.
- To make a window scale able it needs variables in formulas.
- One is not able to fix a broken formula in the model unless going nuts.
What breaks a formula?
Nearly ever thing one usually works with
- Copy and Paste
- Rename in Outliner
- Rename in Component Attributes
- Nested Instances
So, this is what I did to make my DC behave nice in the model.
Going back to the roots, you need a pen and paper concept, it will prevent you from swimming around by naming parts and setting size and positions.
Step: Make a Template
Model a basic window type with all parts needed. Only Groups, no Nested Instances, no Components. Save it as a Template. You can PushAndPull, Scale, Rotate as you like.
Step: Make Components
Start to model your DC window types with that so made template. Make all changes you want, feel free. Save the model as your window type (Model name). After that Explode the Groups one by one to make it a Component. Take care that all axis are in left-front-bottom-corner. Choose a wise name and never touch Outliner again. Outliner is SU part, Component Attributes is user part.
Step: Add Window Container
At this time you need a container for the parts to make it a window and as basic for variable parts. Choose a unique name (Container name) to keep control of the window types.
Step: Add Attributes
Now you can make the parts variable. For this add Attributes for Position and Size. The absolute position is greyed out. To make it relative add the formula all based on LenX, LenZ and frame thickness RD in the window container. Watch the parts moving or not, it helps to edit the formula if needed.
Note about groups:
Make sure all axis of each part is in front-bottom-left corner. Rotating a group will mess around. Explode it and make it a component, the axis will be placed correct and you can see it. Now the name apears in Outliner.
Note about axis:
My building models are made in TopView. To prevent my windows from spinning around inserted in a wall they are modeled in FrontView.
So far, so good. The window type is running well and behaves nice at scaling.
Step 5: Add DC window into a model
SU will add a new container and rename the parts according to the window types already in the model.
If there is any misbehavior, only edit in your basic component!
To save the component from the model use the first container.
To edit the frame thickness use the second container.
The saved window type from the building model will have all attributes from the origin component and runs fine, as long as you don’t modify it…
F 2.skp (252.1 KB)
You can make a group to a component without exploding it. I changed the shortkeys G=MakeGroup, K=MakeComponent. The shortkey couldn’t make a Comonent from a group. I didn’t realise that.