SymbolEditor  1.3.0
 All Classes Files Functions Variables Enumerations Enumerator Friends Pages

The editor allows the user to create or modify the current symbol. It consists of a fixed size square grid with several tools to create QPainterPath objects which will then be used to render the symbol. The QPainterPath consists of one or more subpaths. Each subpath has a start point, which defaults to (0,0), but can be moved as required. The various tools require one or more additional points to define the subpath. For each of the tools used,the last point of the last tool becomes the first point of the next. Consequently all the individual tools are joined together to create a single subpath. A new subpath can be started by using the move to option to specify a new start point. Additionally the use of the rectangle and ellipse tools will create stand alone subpaths.

The editor shows a green square which is the largest preferred size of the symbol. This allows some white space around the symbol when it will be rendered in a pattern.

When placing points, guide lines will be shown when the cursor is at a position that aligns with other points either horizontally, vertically or at a 45 degree angle. The circle guides are created if the cursor is at a position that aligns with another point on a circle where the center is at the center of the grid.

Editor Tools

Move To

Allows moving the start point of the current subpath. If the current subpath already has elements in it, this effectively closes the current subpath and creates a new one.

Line To

Draws a line from the last point to the next selected point.

Cubic To

Draws a cubic spline consisting of a start point which will be the last point of the last command, two control points and a finish point. The control points define the path of the curve between the start and end points.

Rectangle

Draw a rectangle between two points. The points define the opposite corners of the rectangle. These can either entered by clicking two points or clicking and dragging. When dragging, a rubber band rectangle will be shown indicating the rectangle.

Ellipse

Draw an ellipse between two points. The points define the opposite corners of a rectangle encompassing the ellipse. As with the rectangle the points can be selected by clicking two points or clicking and dragging. When dragging, a rubber band ellipse will be shown indicating the ellipse.

Insert Character

This will display a character selection dialog allowing selection of a character from any font to be inserted as a symbol. Double click the required character which will then be converted to a symbol format in the editor. Further changes can then be made to it as needed. This selection will replace any current symbol definition in the editor. The dialog will remain open, allowing a select, save, repeat work flow rapidly building up a library of symbols.

Rotate Left

Rotate the symbol counter clockwise 90 degrees.

Rotate Right

Rotate the symbol clockwise 90 degrees.

Flip Horizontally

Flip the symbol horizontally about an axis passing vertically through the center of the grid.

Flip Vertically

Flip the symbol vertically about an axis passing horizontally through the center of the grid.

Scale to Preferred Size

Scale the existing symbol so that it fits within the preferred size square.

Snap to Grid

The selection of points can either be snapped to the grid or can be freely placed depending on if the snap option is toggled on or off.

Path Rendering

Fill Mode

The defined path can either be set to filled or outline depending on if the fill mode is toggled on or off.

Fill Rule

When filling is enabled the path will be filled. The rule defining the fill will be either Winding of Odd-Even.

Winding
The winding rule will completely fill the objects boundary.
Odd Even
The odd even rule will fill produce a checker board style fill where adjacent areas will be different to each other.

Line End Cap Style

The start and end of a path line can have different visual appearance depending on the following attributes.

Flat Cap
The line is stopped at the end point and the line end is cut square to the direction.
Square Cap
The line is projected beyond the end point by half the line width and the line end is cut square to the direction.
Round Cap
The line is projected beyond the end point by half the line width and the line end is rounded.

Line Join Style

Where two lines join, the way the join is shown is determined by the join style as follows.

Bevel Join
The lines are beveled at the intersection.
Miter Join
The lines are extended and mitered to provide a corner.
Round Join
The lines are joined with a rounded corner.

Line Width

The line width can be increased and decreased. The width is rendered equally about the line between the two points. This attribute is mostly relevant to unfilled shapes.

Points

The points can either be snapped to the grid intersections or placed freely depending on the snap option. All points can be moved by hovering over them until the cursor changes to a move cursor, then hold down the left mouse button and drag the point to its new location.

Editing Symbols

Editing a symbol in the library can be done by clicking the symbol in the library view. This will transfer the symbol into the editor allowing it to be changed and saved. In this scenario there is a link between the symbol being edited and the library, so saving does update the correct symbol. If you wish to use this symbol as a basis for other symbols using rotation and flipping, use the File->Save Symbol as New command which will save the symbol to the library as a new one. Further changes to the symbol which are saved will also become new symbols.