If you use blocks as assemblies to combine parts, then this program will help you speed up your work. The AVC_Assembly plugin includes two commands for quickly creating new blocks.
The Create Assembly (AsmCreate) command creates a new block from a set of arbitrary objects. The program will allow you not to waste time thinking up and entering the name of the block. Blocks are named in a progressively numbered pattern. Moreover, the number of the next assembly is remembered in the properties of the drawing.
And the command New Assembly (AsmNew) creates a new block from one or more references to the old block. This command will be useful when you have already inserted many identical assemblies into your drawing, but you need to change some of them. For example, in several sections of the walls, it is necessary to make channels for an electrician, and leave all the rest unchanged. Now you can separate these sections into blocks with a separate number and all this will happen in 1 click. The command will also be useful when you have inserted mirrored or scaled assembly-blocks into the drawing, but now you want to use them for LAY or for drawing up a Sawing table. Just call AsmNew and all these assemblies will be replaced with new ones inserted at a 1:1 scale.
Quickly create new blocks without worrying about entering a name.
Block numbering can be set to Roman numerals or alphabetical letters.
Specify rotation of objects within a block using a preselected coordinate system or two points on the X axis.
Pick a base point or automatically fit a base point on block objects.
Explode all internal blocks and arrays so that there is not a single nested block in the new block.
Bring all objects to "0" layer.
Glue all the solids inside the block into one to improve performance and ease the drawing.
The AsmNew command can replace a single instance of a block with a new block. This replaces exploding a block and picking up a new block.
The attribute values of the old block are copied to the new block.
Download the plugin in the archive AVC_Assembly_nnnn_nn.7zTo run the plugin, you will have to register account and top up your account balance by making a donation or receiving bonuses.
Then you can activate one of the licenses:
Annual license - 10 USD.
Unlimited license - 50 USD. Free updates for 1 year.
The trial period is 20 days.
Preset the User Coordinate System (UCS) as you would like the parts to be stored inside the block. This is how new blocks will be inserted later. Or you can enable the "Request X-axis" option.
Select the parts you want to combine into a block. These can be any drawing objects. But the program will not work with distorted blocks (different scales on different axes) and with objects on locked layers.
Call the AsmCreate command.
If no objects have been selected yet, the command will ask you to select objects. In the selection prompt, you will see options for quickly switching styles and for opening the customization dialog.
Further, the program can request two points to rotate objects inside the block. The points will define the X-axis direction of the block's internal coordinate system. All objects will be rotated around the Z axis. By default, these points are not prompted and the program orients the parts according to the current user coordinate system.
The program can request one more point, which will be taken as the origin of the block coordinate system. It is at this point that the grip by which the block is dragged will be displayed. By default, this point is not prompted, and the program itself selects a point among all grips of all parts. Lower left grip is preferred.
Then the program itself creates a new name from the template. From the Number_of_assemblies property, the number of assemblies in the drawing is taken and added to it 1. And this number is substituted into the template instead of %row%. If such a block already exists, the program takes the next number. In any case, you do not need to enter the name of the new block.
Then the program creates a block, copies all objects into it, deletes old objects and optimizes the objects in the block.
If invalid or faulty objects are found, the program will write about it to the command line.
The program will check all solids and delete their history. Optionally, the program canexplode all arrays and nested blocks, transfer all objects to "0" layer, glue all solids into a single one.
At the end of the work, the program inserts a new block into the drawing in place of the parts and causes drawing regeneration.
Watch the command line for important information.
Select 1 or more blocks that you want to make a different, new block. These can be scaled or mirrored blocks. To use them as assemblies for a LAY or Sawing Table, all parts must be transferred to a new block.
Call the AsmNew command.
If nothing is selected, the program will ask you to select the blocks. The program will not work with distorted blocks (different scales on different axes) and with blocks on locked layers.
The program does not ask for either the X axis or the base point - the settings of the old block are always used.
The program explodes the first block of the selected ones. This way you get scaled or mirrored parts in the new block.
Then the program creates a new block according to the same rules as for AsmCreate and inserts it in place of the old one at a 1:1 scale.
The program reads all the changeable attributes of the old block and copies them into the new block.
Then the program goes through all the other selected blocks and does the same with each of them separately. The cycle can be interrupted by pressing Esc.
If there is another reference to the same block, and on the same scale, then the program will not create another new block, but uses the one created earlier. That is, extra assembly numbers will not be used. But if the block is inserted with a different scaling or is mirrored, then a new assembly with the next number will be created.
Dynamic blocks and BricsCAD Mechanical components will no longer be dynamic, but will become regular blocks.
Watch the command line for important information.
The settings are common for both AsmCreate and AsmNew commands for creating assemblies. The command customization dialog can be invoked while selecting objects or entering the insertion point using the TUNE option. You can also customize the commands in the AVC Options Palette or through the main AutoCAD settings dialog (command _Options).
In the settings header, you see a drop-down list for selecting a set of settings (style). The style number is used to quickly switch from the command line when prompted to select objects. There is a button for adding a new style next to the list. The new style is created by copying the current one. You can create up to 9 styles. Any style, except the 1st one, can be deleted.
The name of the preset. Not used anywhere. For convenience only.
Assembly name pattern. The template must contain the %row% substitution. The new assembly number will be inserted at this location. The program uses the drawing property Number_of_assemblies and adds 1. If the name is already taken, the program will increment the number until it finds a free name. The substitution can be formatted as a Roman numeral or as an alphabetical letter. Read more about substitution formatting here. Also, the template can contain any text and any substitution of drawing properties. For example file name or drawing number.
The program will ask for the X-axis direction for the block's internal coordinate system (BCS). The Z axis will be taken from the WCS world coordinate system. If the option is disabled, the current user coordinate system UCS will be used. The coordinate system determines how the block will be rotated upon insertion.
The program will ask you to specify the base point of the block. The zero of the block coordinate system will be moved to this point. If the option is disabled, the program will automatically select this point among the "grips" of all block objects. The program prefers the lowest left grip. If the objects do not have grips (and this happens only in BricsCAD), then the program will ask you to select a point. This point will become the grip of the block when inserted.
If you plan to combine other blocks or arrays into an assembly, the program can explode them all, including nested blocks.
The program can assign 0 (zero) layer to all objects. 0 layer is used inside blocks to inherit layer properties from a block reference. That is, instead of the ByBlock layer. After that, you can change the color of the objects by changing the layer of the link to the block.
The program can combine all the solid inside the block into one big solid. This will drastically simplify the block geometry and greatly improve the performance when displaying many blocks. However, you will lose the ability to extract parts and correctly calculate the amount of materials, weight and price of an assembly consisting of different parts from different materials.