9. Drawing aids

This chapter describes the procedures of the AlfaCAD program that increase the speed of making drawings while maintaining the highest possible accuracy of their execution.

9.1. Cursor step

Points entered using the pointing device can be placed in the drawing at the locations of an imaginary rectangular grid located in the global or local coordinate system. Resolution is here defined as the distance between the mesh nodes.

Depending on the settings, the cursor may move along the grid nodes or with any step declared in the function /Parameters/ of auxiliary menu. Depending on the current needs, the cursor movement can be limited to the resolution declared in the option / Cursor step / auxiliary menu / Parameters /. 7 standard resolutions are available:


and any user-defined resolution


as well as minimal step (maximal resolution) corresponding to the accuracy declared in the function / Parameters / main menu.

Resolution is expressed in units declared in the option / Parameters / main menu.

The cursor step (or stroke) can be freely changed while creating the drawing. This parameter is saved in the drawing and when it is re-edited, the cursor step takes the value defined before the last saving of the drawing to the disk file. The initial value of the cursor step for a new drawing takes the value defined in the prototype drawing, and if such drawing does not exist - the default value defined as the minimal step.

9.2. Grid density

AlfaCAD allows you to display on the screen an auxiliary grid of points with the density declared by the user depending on the current needs. This grid (the localization grid) helps in assessing the size of the drawn objects and their mutual relations.

The location grid is oriented to the global coordinate system. The mesh density can be changed many times while editing a drawing, and it can be turned on or off.

The location grid is not part of the drawing, so it is not printed on a printer or plotted on a plotter. However, the mesh density is a parameter saved in the drawing database and when it is re-edited, the mesh density takes the value defined before the last save of the drawing to the disk file.

The initial value of the mesh density for the new drawing takes the value defined in the prototype drawing, and if such a drawing does not exist - the default value of 10 expressed in declared drawing units. Depending on the current needs, the mesh density can be declared in the option / Grid density / auxiliary menu / Parameters / .
There are 5 standard densities:

and any user-defined density:

The mesh density is expressed in the units declared in the option / Parameters / main menu.

The mesh density does not have to correspond to the value of the current cursor step, although it is recommended to declare it as a multiple of the cursor step, which greatly facilitates drawing. Declaring the mesh density is not the same as displaying the mesh on the screen. In order to visualize the grid, it is necessary to set the display mode of grid points in the option / Grid points / in auxiliary menu / Parameters /.

9.3. Grid points

The location grid with the declared density can be displayed on the screen. The grid display mode is set in the option /Grid points/ auxiliary menu / Parameters /.

The mesh point display mode is a drawing parameter and is stored in the drawing. For a new drawing, the mesh display mode is assumed based on the parameters of the prototype drawing. If the prototype drawing does not exist, the mesh points are not displayed.

If the screen scale does not allow displaying the grid points clearly, the grid is not displayed and the program also displays a message about the reason for ignoring the grid.

9.4. Perpendicularity

By entering the start point of a line segment ( <Line from point> ) and then an end point ( <Line to point> ), AlfaCAD dynamically displays an extension line connecting the starting point to the endpoint changing position, following the cursor. The purpose of the guide line is to facilitate the visual assessment of the displacement resulting from the current position of the pointing device. If you need to move the end point relative to the start point only along orthogonal lines that match the global or local coordinate system, you can use the perpendicular mode to limit the movement of the extension line.

The perpendicularity mode is declared in the option / Perpendicularity / auxiliary menu / Parameters / .
Perpendicularity mode is a variable saved in the drawing and restored when it is re-edited. When editing a new drawing, the perpendicularity mode is assumed based on the value saved in the prototype drawing. If the prototype drawing does not exist, the perpendicular mode is disabled when you edit a new drawing.

The drawing of a segment in the perpendicular mode begins as usual with indicating the starting point ( <Line from point> ). When you move the cursor towards the endpoint, it draws a horizontal or vertical extension line, depending on the start (start) vector of the move. The initialized extension line drawing direction is maintained until an endpoint is established.

In the perpendicular mode, the end point is a point determined by the projection of the actual cursor position in global or local coordinates system on the axis defined by the extension line. To change the drawing direction of the extension line, move the cursor to "around" the starting point and then reinitialize the correct starting vector of the movement. The "surrounding" of the starting point is understood to be the distance from the point defined by the expression:

delta X + delta Y <= 20 pxl

where pxl is the smallest addressable element of the monitor in the resolution of current graphic mode (pixel).

If the values of the end point shift relative to the starting point are given in numerical form (or in the form of an arithmetic expression), it is sufficient to provide one value. The program will interpret this value as a relative shift in the direction (and sense) of the initial shift vector.
If the perpendicularity mode is not active, it is necessary to specify both delta X and delta Y values.
Similar rules for indicating the end point depending on the current perpendicularity mode apply to those editing functions in which the procedure requires declaring the start and end point of the shift (e.g. moving, stretching, copying, etc.).

For quick switching between perpendicular and non-perpendicular mode use {F8} or {Ctrl-Q} key.


9.4.1. Perpendicularity in the local coordinates system

The rotation of the local coordinate system with respect to the global coordinate system causes the drawn line segments in the perpendicular mode to be rotated by the same angle with respect to the global coordinate system. The same principle applies to displacement vectors in some editing operations (moving, stretching, copying, etc.).

9.5. Location of a point relative to the object

In the AlfaCAD program, it is possible to locate the position of the entered points in relation to the existing objects (or their fragments) meeting the specified geometric conditions. This method complements the basic method of snapping points at the nodes of the localization grid. A simple example of using this method is to locate the starting point of a line segment on either the endpoint of another existing line segment or its midpoint. This allows you to perform very complex geometric structures while maintaining high precision of the drawing.

9.5.1. Basic operations

The program allows you to use a number of different modes of point location in relation to an object simultaneously. The locating procedure can be started when the program expects to indicate a proper point in the drawing. If the program is currently in point-to-object snap mode, a square box called a pointfinder replaces crosshair cursor. In so-called “Repeating mode” of the point location, pointfinder frame is added to the normal crosshair. The pointfinder frame defines the area in which the program searches for objects that can be used to locate the position of the entered point. Pointfinder frame sizes can be changed using the {PgUp} and {PgDn} keys .
One of the object snap modes may be turned on to enter a single point, or it may be permanently active to enter a sequence of points. If a given object snap mode is always active, it is possible to use a different object snap mode for a single point, and after entering this point the program returns to the previous mode.

To select a point using the object snap mechanism, move the cursor in such a way that the desired object (or group of objects) is inside the pointfinder frame or intersects it, and then accept the cursor position using the {LMB} or {Enter} key. The program searches for an object (or objects) in the pointfinder frame area of which one of the points corresponds to the requirements of the current locating mode.

If in the pointfinder frame will be more than one point satisfying such a condition, " younger " point will be chosen. The "younger" point should be understood as the point (e.g. the endpoint if the line) of the object drawn later (more recently), because searching for objects in each case starts from the last drawn objects and ends at the first entered element of the drawing.

If it happens that no point meeting the condition of the current locating mode is found, the program operation depends on the current mode. If none of the location modes is constantly active (no “repeating mode”), but only applies to a single point, a failed attempt to locate the point is treated as an error and the program expects another attempt or pressing the {RMB} or {Esc} key, which cancels the location mode and the program waits for point indication according to general rules.

If one of the locating modes is constantly active ( / Repeating mode / in function /Point/ of auxiliary menu ) the fact that no point meeting the condition of the given mode has been found is not treated as an error and the point indicated by the cursor is accepted by the program.

If, apart from the repeating mode, another mode is chosen for a one time licalisation, an unsuccessful attempt to locate the point is treated as an error and the program expects another attempt to locate the point in relation to the object or pressing the {RMB} or {Esc} key, which releases the last snap mode and then again starts the permanently activated mode.

After resignation from locating of the point in a given mode with the {RMB} or {Esc} key, it is possible to select a different locating mode and try again to indicate a point that meets new conditions.

The point snap to object mode applies only to objects visible in the work area of the screen, lying on visible layers and with the "Localizable" attribute turned on.

9.5.2. Point snap modes relative to objects

The entered points can be located in relation to objects according to several different criteria. In object snap, the program distinguishes line segments, polylines, circles, arcs, polygons, ellipses and elliptical arcs, points, circles and elliptical surfaces, areas, traces, curves, and sketch lines.

Each edge of the triangular and quadrilateral region and trace is treated as a separate segment. Polyline segments are treated as separate line segments or arcs. The circle is treated like a circle. Each side of the polygon is treated as a segment.

The locating procedure is available from the / Point / auxiliary menu . The menu includes the following location options:

9.5.3. Repeating point location mode

Selecting the / Repeating mode / option allows you to declare a permanent locating mode for each entered point in one of the above-mentioned options.

If the permanent location mode is active, the introduction of each point is preceded by the location procedure according to the declared criterion, and in the case of finding a point meeting the given requirements, the point is selected by the program. If the indicated point does not meet the given criteria, the location procedure is abandoned and the point is inserted in the place indicated by the cursor.

9.5.4. Location of points without the current repeating mode

The available position snap modes in relation to objects can be used for single points, except for a possible repeating mode previously declared. To do this, before selecting the point, select the desired mode and then use the pointfinder to indicate the object to which the location should take place.

Selecting the object snap for a single point, as opposed to the repeating mode, requires the correct selection of the object to which the point is to be located. An unsuccessful attempt to locate a single point must be repeated or abandoned by pressing the {RMB} or {Esc} key and the program returns to the previous fixed point location mode.

This procedure allows, for example, to "circumscribe" the area with a contour (with a thick line) in relation to the intersection points of the previously constructed auxiliary grid of lines that define e.g. the edges of walls, modular axes, etc.

9.5.5. Complex point location functions

Some point snap relative functions can be combined to form two-level routines. And so that e.g. to start drawing a line from a point that is a distance from a given point (e.g. intersection of other lines) measured at the desired angle, first select the option / Intersection / auxiliary menu / Point / and then the program will display the message <Select> waiting indicate with pointfinder the point of intersection of segments, arcs, etc. If instead of selecting a point, he again selects / Point / from the auxiliary menu :

and numerically the values <dX; dY> or <L; Angle> , the program will accept the shift values but will not measure them from the current cursor position, but will continue the originally called location function / Intersection / requesting to indicate the intersection point, displaying the <Select> message again. After indicating the intersection point with pointfinder, the line will be attached at the point shifted by dx; dx (Cartesian) or L, angle (polar) from the indicated intersection point.

9.6. Measure

The auxiliary function / Measure / is an option of auxiliary menu with which you can read the coordinates of the indicated (or located) point (e.g. the center of a circle, end or line intersection point), the distance between the indicated points, the angle between three points or show the list of parameters of the indicated object.

The result of the function operation is displayed in the appropriate format for a given option:

- for a point: X = ..... Y = .....

- for the distance: L = ..... DX = ..... DY = ..... Angle = .....

- for the angle: Angle = .....

- for the parameter list:


An additional option
/ Summation / allows you to add or subtract successive results of the indicated distances, the report format being as follows:

SumL = ..... L = ..... DX = ..... DY = ..... Angle = .....

The summing up option allows, for example, to quickly prepare the bill of quantities of construction and installation works in the documentation by counting the sum of the lengths of walls, piping, pipes, etc.

The / Measure / option is a permanent item in the auxiliary menu, available in all object drawing procedures, editing and block functions, etc. The auxiliary menu / Measure / offers the following options:

Depending on the selected option / Point /, / Distance /, / Angle /, the program waits for indicating (locating) a point, indicating (or locating) two points defining a distance or three points defining an angle.

The option / Summing / can be selected when distance indication mode is active by selecting the appropriate option or by pressing the F9 function key (/ Add / Subtract /). To stop summing in favor of distance reporting, press the F10 key (/ Stop summing /).

All the results of the function / Measure / are added to the notepad in the form of a text, the lines of which contain successive results of the function in the appropriate format for a given option. The value of the selected object parameter indicated in the "Parameter list" function is also saved in the notepad.

This report is common for other values defined in the parameter edit line in a given program session. The values placed in the notepad can then be used to enter values numerically in other functions.

The / Calculator / option initiates the function of the engineering calculator. In the edit line, the user may enter a mathematical expression, the result of which will be calculated. The result value is displayed in the same edit line and saved in the notepad, and the program waits for the next expression. The method of entering expressions, including the possibility of defining your own constants and variables, is the same as for entering numerical data in the form of expressions in other program procedures (see chapter 2.4.3).

Similarly, the calculator function allows - when entering expressions in the edit line - to use the notepad (by pressing the {PgDn} key and selecting any line from the menu). Selecting one of the menu lines causes it to be copied into the edit field.

If there was previously highlighted text in the edit field (not in the edit mode), the text selected from the notebook will be entered in its place.

If there was some text in the edit field in the edit mode (without highlighting), the selected text will be added to it.

Such a procedure enables any combination of strings into one text (expression) with the possibility of any editing. All expressions given in the timeline are placed in the notepad. The result of the expression value calculation is only displayed in the edit line in a form prepared for further possible editing in order to continue the calculations based on the previously calculated value. Simply press {LMB} or {Enter} to have this value written to the notepad. This allows, for example, to use the saved value in the text drawing procedure in order to enter the result of any calculations on the drawing.