Some engineering programs pack each part into a separate block. If you sometimes work with DWG files exported from such programs, then the Unpack command may be useful to you. Solids wrapped in a block are inconvenient to modify, it is impossible to resize several parts at once, it is inconvenient to change properties. And all other A>V>C> commands perceive such blocks as assemblies or refuse to work with them at all. To work with the details, you need to explode blocks. But you need to keep the real assembly blocks. And you need to transfer the block name to the part name. The Unpack command will do this job for you.
Main features and limitations of the program:
- Select matching blocks containing only one object. It can be anything: solid, line, curve ...
- Block attributes are not counted as objects, a block with many attributes, but only one solid will explode.
- You can explode blocks nested in other assembly-blocks. Nesting levels are not limited. Your assemblies will not be exploded, unpacking will only work for the last nesting level.
- If the object layer is "0", then it will be replaced with the block layer.
- If the object's properties are By Block, then they will be replaced with block properties. This will work with Color, Material, LineType and LineWeight.
- The block name will be written into the entity name. This name will be visible in the A>V>C> Properties palette and can be used on smart leaders and all other A>V>C> commands.
- If the block has the Kind or Type or Class attribute, it will be written to the Kind property (see A>V>C> Properties palette). Only one (first found) attribute is recorded.
- If the block has other attributes, all of them will be written to the Info property (see A>V>C> Properties palette)
- If a solid is packed in a mirrored block, a "Mirror" mark will appear in the unpacked part.
- The program works with external references (xRef) and unpacks the blocks in them. The Xref block itself will not explode.
- The program will not explode objects from locked layers, will not touch objects in unnamed blocks of arrays.
- You can prevent some blocks from exploding by turning off their Explodable property. This can be done when creating a block or later, using the A>V>C> Properties palette.
- Dynamic blocks and annotative blocks are not processed.
You can download and use the program for free. But I really look forward to your feedback and donations.
If you are not satisfied with the behavior of the program, there are suggestions for optimization and tuning for your needs - feel free to write to me.
About This Version
Version 2020.10.1, 9/13/2021
Added 2022 support (No change in version number).