Managing Part Libraries With Linked Blocks
I use Rhino3D for mechanical and architectural design work. In general, it’s a very good match for my needs in both power and complexity. Lot’s of power without too much complexity.
Figuring out how to manage part libraries was one area where the documentation and the interface terminology did its best to confuse and muddy the basic functionality.
Here’s how you to create a model of a component that will be re-used, use it in a couple of other designs, and automatically update it in those designs if you make changes to the original model:
1. Create the component model in its own Rhino document.
2. In a new Rhino document, choose FileàInsert
3. Click File… and browse to the component document. Click OK.
4. Finish with the Insert dialog, setting or defaulting position, and rotation as you like, but leave “Insert as” set to “Block instance”.
That’s it. Don’t get confused by creating blocks yourself (using the Block command) or by the Import command.
To make changes to the component just edit the model in the original file in the normal way and save it. Don’t move the file or change the file name to avoid breaking the link with designs that use the component.
To update a design to use the latest version of a component:
1. Click EditàBlocksàBlock Manager…
2. Find the name of the file that defines the component in the list of Block Definitions. You should see the file name as the block name and the complete file path in the “Link File Name” column.
3. Click Update.
So it’s clear that managing part libraries uses blocks indirectly which might get you wondering when would you want to directly create your own blocks and when is it a good idea to put more than one block in a file? Knowing the answer to these questions will keep you from getting wrapped around the axle on part library management.
Create your own blocks directly whenever you expect to have copies of identical geometry. Just use the Block command to turn selected objects into a block definition within your current file. The selected objects are replaced by the first instance of the new block. You can now insert additional instances of the block using the Insert command.
There are two general approaches to making changes to a block you create directly. The quick in-place method and the long-term re-use method.
Quick in-place method for modifying an unlinked (directly created) block:
1. Select one of the block instances.
2. Inverse hide everything else.
3. Explode the block. This turns it back into the object from which it was defined.
4. Edit the objects normally.
5. Select the modified objects.
6. Invoke the Block command (EditàBlocksàCreate Block Definition…) and give it the same name it had before (IMPORTANT).
7. Click OK and OK to replace existing definition.
Unhide all and you should see all instance of the block updated. Note: If you don’t select the original block base point, every other instance will move.
Long-term re-use method for modifying unlinked (directly created) blocks:
The basic idea is to export the block definition to external file. Then redefine the block definition using the external file to create a linked block situation. Changes to the external file can then be propagated to your original file using the BlockManager’s Update command.
1. Find the block’s definition in the BlockManager and click Export. Don’t change the file’s name. You can put it in any folder.
2. Insert the file you just saved, click yes to replace the block definition, insert the new block instance anywhere and immediately delete it.
The result of these two steps is that the block definition is now linked to the external file. Make your changes there, save it, and update the original as needed.