realthunder wrote: ↑Mon Jul 27, 2020 12:00 am
So, you want an action in tree view document item context menu to 'close all linked document', is that right?
yes that descibes it very well.
But please, I do not want you to add something that can be achieved another way already. Its just that I have not found a way yet to do it at all. Maybe your test cases do have hierarchies with many parts on every stage very often. Otherwise I wonder that you did not have come across this issue yourself.
Let me try to describe another example.
Lets say your windmill model has 10 parts at each assembly stage - each in an own file. You open the main assembly first to work on the main axis. Not all files are loaded and not all files are listed in the tree. But when your are done and started to work on the rotor blade model (10 files as well) you will have 20 files open and listed in the tree. So this with two other subassemblies (the stand and the housing for example) then its 40 files. The files are not ordered in the tree so you are scrolling around in the tree all the time. At this point I would like to go to the Main Axis assembly file and select "close all linked documents". This closes 11 files (assembly file for the main axis and the 10 parts) and removes them from the tree. For the rotor blade assembly I select the rotor blad assembly in the main assembly files tree (the other way to apply the new command), then "ContextMenu/CloseAllLinkedDocuments" and its 10 parts and the assembly file (if open) are closed and removed from the tree. With theses two commands I have now closed 22 files and I am down to about 20 files again.
In this example there is only one main assembly file open. In case of a large project, say a machine, most of the time only sub-assembly files are open, e.g. hydraulics pump subsystem, tool head, electronics module etc. and each has the same problem. So I believe when working with largen assemblies loading and unloading linkes files would become a standard function the same are assembly tree navigation. And when the models are complex with many constraints the system load adds up. Even with the freeze function, I have to unfreeze assemblies that I actively work on, and if I need a few subsubsystems memory and performance becomes and issue.
Sorry for the long text, but I hope you can see what I mean.
realthunder wrote: ↑Mon Jul 27, 2020 12:00 am
BTW, you probably want to try the new 'hierarchy menu' feature for easy navigation within deep hierarchies, so that you can stay in the main document most of the time.
I have not yet tried it, but I can check it out. I am quite happy with what is possible so far, so I am really looking forward to see what is new.
BTW: You magic function "Multiply Constraint" keeps amazing me. Did I observe correctly that I does not work in the Screw-Holes use case if the target holes are distributed over two instances of the same part? I had a part that consists of two identical halfs that was assembled by 8 metric scews. Each half had 4 holes. I had 8 instances of the screws and aligned one hole with the first screw, but the multiply function did fail. It only worked when I reduced the instances to 4 screws.