16ContentsFirst PagePrevious PageHomeNext PageLast Page
User Manual for QCad
 
   

15   Additional Features

   

  15.1  Creating Your Own Fonts

   
 

QCad allows you to change existing fonts or add new ones. You can load an existing font like any other file. The fonts can be located in three different paths:

   
 
/usr/share/qcad/fonts 
/usr/local/qcad/fonts
~/.qcad/fonts
   
 

The extension for fonts is CXF which stands for CAM Expert font. After loading a font you can add or change characters using the normal functions of QCad. Every character must be located in the given range (gray border). However, there's no limit in the y direction but you should strictly abide the limits in x axis.

   
 

Fig. 21: The font editing mode

   
 

The border is located on a layer called "Border" while the characters of the font are located on layer "Letters". Objects which are not in the valid range of a character will be lost while you save the font. It may be a good idea to save the font as a DXF file as well to ensure that nothing gets lost by accident. DXF font files can get reloaded and then saved as fonts again.

   
 

If you've created a nice font and want to give it away for free, please send it to me by e-mail. I'll include it in the next release of QCad.

   

  15.2  Creating Your Own Patterns

   
 

You can create your own additional patterns for QCad. Just make a square with the pattern and save it to the pattern directory of QCad. The square must have a size of 100x100. QCad detects all DXF files from that directory automatically. A pattern can only contain lines, no other objects. Please note, that patterns should not contain many objects. The more objects they contain, the slower gets the hatching function of QCad.

   

  15.3  Creating Object Libraries

   
 

QCad supports the usage of object libraries. See also chapter Object Libraries for a guide how to insert objects into your drawing.

   
 

Before you start creating your own object library, you should read this part of the manual to be sure that you profit from the whole functionality that QCad offers.

   
 

It's also very important that you don't do a work which another one has already done. To avoid this, there's a list with existing object libraries and such which are under construction. You'll find this list on the QCad home page.

   

   15.3.1 Object Hierarchy

   
 

QCad can handle any desired hierarchy for object libraries. However, I recommend to use not more than three levels. The top folders in the library hierarchy are for example: "engineering", "home", "architecture", "borders", "arrows" and so on. The following figure shows an example of an object library hierarchy.

   
 

Fig. 22: Example for an object library hierarchy.

   

   15.3.2 Directory Structure

   
 

You can place your libraries in the following directories:

   Library Paths
 
/usr/share/qcad/libraries 
/usr/local/qcad/libraries
~/.qcad/libraries
   
 

QCad will search all these directories and their sub directories for files in knows formats. You can specify two more paths in the options dialog and several more in the configuration file.

   
 

Please note that the Object Browser joins the contents of all directories. This means that if there's a sub directory called "engineering" in both the "~/.qcad/libraries" and the "/usr/local/qcad/libraries" directory, it will appear as one folder in the object browser. The files of both paths are included in the preview. This way you can add files to any section by saving them to the right path in your home directory.

   

   15.3.3 Creating Objects

   

     Choosing The Right Scale

   
 

Think well about the scale you use for your library. It should be the most common scale or a scale in which the most important dimension of the part has a length of 1. This way the user can choose the length of this dimension in the "factor" box.

   
 

For example if you design a library of metric screws, it's probably the best if you construct all screws with a diameter of 1mm. The user who inserts an object can simply type the diameter in the "factor" box.

   

     The Zero Point

   
 

The absolute zero point of the drawing used for an object is the reference point for inserting the object into the drawing.

   

     Using The Right Layers

   
 

To stay clear, it's important that all object library designers use the same layer model. If a user inserts an object into his drawing, all layers required for the object get created automatically to put the object on these layers. To avoid the appearance of new layers for every inserted object, you should use mainly these layers for your objects:

   Common Layers
 

Layername

Usage

OBJECT

The actual object

AUXILIARY

Center lines and other help lines

DIM

Dimensions

TEXT

Texts

HATCH

Hatches

   

     Defining Stretch Areas

   
 

Many objects can exist in different lengths, heights or diameters. To avoid that every possible variation of an object must be constructed and saved in an object library, QCad offers the possibility to define stretchy parts. It's probably the best to illustrate this feature with the following example.

   

     Example screw

   
 

Let's take a screw which exists in various lengths. You need to have this screw only once in your library. The following steps guide you through the process of creating such an object.

   
     1st Step
   Reference Length
 

Create the screw with a reasonable length. In the example a reference length (r) of 2mm was chosen. This reference length doesn't matter, you'll see later why. Please put the elements on the right layer like described above.

   
 

Fig. 23: Example screw with a reference length of 2mm.

   
     2nd Step
   Stretching Position
 

Now we need to define the position where the screw must be stretched (we don't want to stretch it's head but only it's thread). This is done with one line on a certain layer. This line "divides" the screw at the stretch position.

   
 

Fig. 24: The green line defines the stretching point.

   
 

This special line is just for internal use and doesn't appear when the user inserts the object. To tell the program that this line defines the stretching position it must be on a certain layer. The color and style don't matter but I recommend to make this line in a dark green with a two dotted line style.

   Layer Of Stretching Line
 

The layer name of the green line used in the example is: "_stretch_lr_2". The beginning of the layer name has always to be "_stretch_". The next letter "l" says that the user gets asked for a length for this part. The "r" stands for "right". This is needed for the program to know to which side it should enlarge or shorten the part. Then follows an underscore "_" and at last the used reference length. The reference length is needed by the program to calculate the stretch amount. If the user types "10" for the screw length, it must be stretched by 8 (=10-2) because it already has a length of 2. The reference length in the layer name can as well be a float value (e.g. "2.5").

   

     Possible Layer Names For Stretch Lines

   
 

The following list shows all valid layer names for stretching lines. As reference length is always taken "10" but this can vary of course.

   
 

Layer Name

Function

_stretch_ll_10

Stretch length to the left.

_stretch_lr_10

Stretch length to the right.

_stretch_lc_10

Stretch length to the left and to the right (centered).

_stretch_hu_10

Stretch height upwards.

_stretch_hd_10

Stretch height downwards.

_stretch_hc_10

Stretch height upwards and downwards (centered).

   
 

The following figure shows an example for a simple object with a height and a length.

   
 

Fig. 25: Example object with variable height and length.

   
 

For such an object, the user can type the height, length, factor and the angle. If a border with a length of 25mm, a height of 5mm and a border width of 1mm is required, the user must type the values shown in the figure below.

   
 

Fig. 26: Example usage of the above object.

   
  16ContentsFirst PagePrevious PageHomeNext PageLast Page
[ 1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17-18 ]
Copyright © by Andrew Mustun 1999-2001. All rights reserved.
This Manual was created with ManStyle.