Repository navigation
Preferences CNCJob
The CNC-JOB tab sets the default values for CNC Job objects. A CNC Job object holds the G-Code that a CNC machine runs. The tab controls how the G-Code is plotted, how the numbers are written, the text that is added before and after the G-Code, and the pre-processor bed values.
- Menu: Edit > Preferences (shortcut:
Shift+P). - Tab: CNC-JOB. See Preferences Overview.
Screenshot placeholder:
images/Preferences-CNCJob-1.png— the CNC-JOB tab with the General group visible, with the Coordinates and Feedrate rows.
- Select Edit > Preferences, then select the CNC-JOB tab.
- In the General group, set Coordinates and Feedrate to the number of decimals that your machine needs.
- Select Apply to use the values now. Select Save to keep them.
Each table lists every control of one group. The Key column shows the key in defaults.py.
Source file: appGUI/preferences/cncjob/CNCJobGenPrefGroupUI.py.
This group controls the plot of a CNC Job object, the number format of the G-Code, and the plot colors.
| Option | Description | Default | Choices | Key |
|---|---|---|---|---|
| Plot Object | Plot (show) this object. | True |
On or off | cncjob_plot |
| Circle Steps | The number of circle steps for linear approximation of circles. | 16 |
Number 0 to 99999 | cncjob_steps_per_circle |
| Travel dia | The width of the travel lines to be rendered in the plot. | 0.125 |
Number 0 to 99999 | cncjob_tooldia |
| Coordinates | The number of decimals to be used for the X, Y, Z coordinates in CNC code (GCODE, etc.) | 4 |
Number 0 to 9 | cncjob_coords_decimals |
| Feedrate | The number of decimals to be used for the Feedrate parameter in CNC code (GCODE, etc.) | 2 |
Number 0 to 9 | cncjob_fr_decimals |
| Coordinates type | Hidden in this version. The type of coordinates in the G-code: Absolute (G90) uses the origin x=0, y=0 as the reference. Incremental (G91) uses the previous position. | "G90" |
Absolute = G90; Incremental = G91
|
cncjob_coords_type |
| Force Windows style line-ending | When checked will force a Windows style line-ending (\r\n) on non-Windows OS's. | False |
On or off | cncjob_line_ending |
| Outline | Set the travel line color for plotted objects. | '#B5AB3A4C' |
Color | cncjob_travel_line |
| Fill | Set the fill color for plotted objects. First 6 digits are the color and the last 2 digits are for alpha (transparency) level. | '#F0E24D4C' |
Color | cncjob_travel_fill |
| Alpha | Set the fill transparency for plotted objects. The value is written to the last 2 digits of the travel Outline and Fill colors. | 76 |
Number 0 to 255 |
cncjob_travel_fill, cncjob_travel_line
|
| Outline | Set the color for plotted objects. | '#4650BDFF' |
Color | cncjob_plot_line |
| Fill | Set the fill color for plotted objects. First 6 digits are the color and the last 2 digits are for alpha (transparency) level. | '#5E6CFFFF' |
Color | cncjob_plot_fill |
Source file: appGUI/preferences/cncjob/CNCJobOptPrefGroupUI.py.
The Export G-Code label starts this group. It holds the plot kind and the annotation of the plot.
| Option | Description | Default | Choices | Key |
|---|---|---|---|---|
| Plot kind | This selects the kind of geometries on the canvas to plot. Those can be either of type 'Travel' which means the moves above the work piece or it can be of type 'Cut', which means the moves that cut into the material. | 'all' |
All = all; Travel = travel; Cut = cut
|
cncjob_plot_kind |
| Display Annotation | This selects if to display text annotation on the plot. When checked it will display numbers in order for each end of a travel line. | True |
On or off | cncjob_annotation |
Source file: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py.
| Option | Description | Default | Choices | Key |
|---|---|---|---|---|
| Annotation Size | The font size of the annotation text. In points. | 9 |
Number 0 to 9999 | cncjob_annotation_fontsize |
| Annotation Color | Set the font color for the annotation texts. | '#990000' |
Color | cncjob_annotation_fontcolor |
Source file: appGUI/preferences/cncjob/CNCJobEditorPrefGroupUI.py.
This group has two text boxes. The text in Prepend to G-Code is added at the start of the G-Code file. The text in Append to G-Code is added at the end of the G-Code file. The tooltip of the second box gives the example M2 (End of program).
| Option | Description | Default | Choices | Key |
|---|---|---|---|---|
| Prepend to G-Code | Type here any G-Code commands you would like to add at the beginning of the G-Code file. | "" |
Text (multi-line) | cncjob_prepend |
| Append to G-Code | Type here any G-Code commands you would like to append to the generated file. I.e.: M2 (End of program) | "" |
Text (multi-line) | cncjob_append |
Source file: appGUI/preferences/cncjob/CNCJobPPGroupUI.py.
This group has the bed values of the machine: the size, the offset and the skew of the bed on the X and Y axes.
| Option | Description | Default | Choices | Key |
|---|---|---|---|---|
| Bed Size X | CNC bed size on the X axis. | 300 |
Number -9999.9999 to 9999.9999 | cncjob_bed_max_x |
| Bed Size Y | CNC bed size on the Y axis. | 400 |
Number -9999.9999 to 9999.9999 | cncjob_bed_max_y |
| Bed Offset X | CNC bed offset on the X axis. | 0 |
Number -9999.9999 to 9999.9999 | cncjob_bed_offset_x |
| Bed Offset Y | CNC bed offset on the Y axis. | 0 |
Number -9999.9999 to 9999.9999 | cncjob_bed_offset_y |
| Bed Skew X | CNC bed skew on the X axis. | 0 |
Number -9999.9999 to 9999.9999 | cncjob_bed_skew_x |
| Bed Skew Y | CNC bed skew on the Y axis. | 0 |
Number -9999.9999 to 9999.9999 | cncjob_bed_skew_y |
For the pre-processors, see Preprocessors.
- The Coordinates and Feedrate values set the number of decimals in the G-Code. They do not change the geometry.
-
Force Windows style line-ending writes
\r\nline endings on other operating systems.
FlatCAM Evo Manual · Source code · Report a problem · MIT license
Start here
- Installation
- Getting Started
- Tutorial: Single-Sided PCB
- Tutorial: Double-Sided PCB
- User Interface
- Keyboard Shortcuts
- Glossary
- FAQ and Troubleshooting
Files and projects
Objects
Editors
PCB operations
- Isolation Routing
- Non-Copper Clearing
- Paint
- Cutout
- Drilling
- Milling
- Follow
- Double-Sided
- Solder Paste
- Film
- Panelize
- Copper Thieving
- Fiducials
- Markers
- Punch Gerber
- Invert Gerber
- Etch Compensation
- Extract
- Rules Check
- QR Code
Utility plugins
- Align Objects
- Calculators
- Distance · Object Distance
- Optimal
- Move · Transform
- Subtract
- Image Import · PDF Import
- PCB Wizard
- Report
- Tcl Shell
Machine control (in development)
Advanced
- Tools Database
- Preprocessors
- Path Optimization
- Tcl Scripting
- Tcl Command Reference
- Developer Guide
- Translating
Preferences