Libraries, Blocks, and Instances (Basics)

www.CAD6.com

Libraries are organized in a hierarchical structure similar to the file system. A library can contain any number of folders and a folder can hold any number of blocks. Folders are used to group related blocks together.

 

A block is a collection of objects, like for example lines, rectangles, circles, or texts. Blocks can be used to show screws, furniture, components for local area networks (LANs) etc.

 

There are a lot of predefined libraries for various areas of application available, e.g. mechanical engineering, electrical engineering, interior design, and others. And of course you can also create your own libraries.

 

The library / block concept not only allows you to efficiently organize and access frequently used graphical data it also saves a lot of memory. When inserting a block in the drawing you actually don't insert the block's object data but a reference to that block, the so-called instance. I.e. the application inserts only the block name, the library name, and some display parameters (e.g. position, scaling, rotation). Whereas the actual graphical data continues to be stored only in the block definition in the library.

 

When drawing a block the application uses the block and library name stored in the instance to locate the block definition in the library. The application then uses the graphical data in the block definition and the display parameters stored in the instance to draw the block. Because normally an instance requires much less storage than the actual block data, this concept dramatically reduces memory consumption.

 

A library is an external file (*.MKL) which is independent from the drawing. To use a block (Library > Block > Insert) of a specific library in a drawing you first have to load that library into Malz++Kassner CAD6 (Library > Manage Libraries). Blocks located in such a library are called external blocks. Blocks can also be located in a so-called pseudo-library named "*Internal Blocks". The pseudo-library "*Internal Blocks" is not an external file but it is located in the drawing. Consequently the blocks of the pseudo-library are called internal blocks.

 

When creating your own libraries (Library > Block > Create (Insertion Point)) you should consider the advantages and disadvantages of both block types. External libraries can easily be used by several people in different drawings. If for example all people in company use the same libraries located on a central server this helps to standardize drawings and also makes it easy to update them. Because if you replace a library with an updated version (of course the block names must remain unchanged) this update automatically will have an effect on each drawing which contains instances of blocks of that updated library simply by reloading the drawing.

 

Of course if you want to pass on your drawing files to another company or a client you either also have to pass on the used library files or you have to convert the external blocks into internal blocks using the command Library > Convert External Blocks. Alternatively you could also use the command Library > Block > Resolve Block Instances to replace each instance with the objects that make up the respective external block. But if the drawing contains a lot of instances this will significantly increase the drawing's size.

 

Generally you should always use external blocks if you plan to use the blocks not only in the current project or if the blocks must be accessed also by others. On the other hand if you know that a certain block makes only sense in a specific drawing then you should make him an internal block.

 

There is a special kind of internal blocks the so-called anonymous blocks. To create an anonymous block, use the Library > Block > Create Anonymously. This command automatically creates an internal block stored in the "#AutoBlock" folder of the pseudo-library "*Internal Blocks" from all currently selected objects.

 

Blocks can also contain attributes. An attribute can be a text or a number. For example, if you have a furniture library you can use the command Library > Block > Edit to add a price attribute to every piece of furniture. After finishing the drawing you then can use the command Library > Generate Parts List > Complete Drawing to generate a list of all pieces and their prices. Use the command Modify > Edit > Text / Attribute to edit the attributes of an instance.

 

For information on attribute display see Attributes.

 

CAD6studio Release 2025.0 - Copyright 2025 Malz++Kassner® GmbH