three-slicer 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +342 -24
  2. package/components/README.md +1 -1
  3. package/components/dist/SettingsPanel.js +111 -112
  4. package/components/styles.css +9 -9
  5. package/data/invalidation-map.json +1 -1
  6. package/engine/examples/headless.mjs +2 -2
  7. package/engine/index.d.ts +3 -1
  8. package/engine/index.js +2 -2
  9. package/engine/src/data.js +12 -0
  10. package/engine/src/settings.js +35 -35
  11. package/engine/src/slicer.worker.js +25 -22
  12. package/engine/src/slicer_core.js +0 -0
  13. package/engine/src/slicer_core.mt.js +0 -0
  14. package/engine/src/toggle_eval.js +12 -13
  15. package/package.json +54 -26
  16. package/types/components.d.ts +19 -0
  17. package/types/data/config-schema.json.d.ts +55 -0
  18. package/types/data/invalidation-map.json.d.ts +15 -0
  19. package/types/data/toggle-rules.json.d.ts +20 -0
  20. package/types/data/ui-tree.json.d.ts +19 -0
  21. package/types/data.d.ts +17 -0
  22. package/types/gen_settings_types.mjs +70 -0
  23. package/types/settings-keys.d.ts +1704 -0
  24. package/types/settings.d.ts +19 -0
  25. package/types/toggle.d.ts +22 -0
  26. package/types/viewer-loaders.d.ts +33 -0
  27. package/types/viewer-toolpath.d.ts +105 -0
  28. package/types/viewer.d.ts +15 -0
  29. package/types/wasm.d.ts +5 -0
  30. package/types/worker.d.ts +3 -0
  31. package/viewer/README.md +1 -1
  32. package/viewer/dist/Viewport.js +1774 -923
  33. package/viewer/dist/make_worker.js +6 -6
  34. package/viewer/dist/model_loaders.js +221 -109
  35. package/viewer/dist/toolpath_gpu.js +146 -147
  36. package/viewer/styles.css +27 -25
  37. package/data/config-schema-builddump.json +0 -12921
  38. package/viewer/src/Viewport.jsx +0 -1353
  39. package/viewer/src/assets/add.svg +0 -1
  40. package/viewer/src/assets/arrange.svg +0 -1
  41. package/viewer/src/assets/boolean.svg +0 -1
  42. package/viewer/src/assets/cut.svg +0 -1
  43. package/viewer/src/assets/delete.svg +0 -1
  44. package/viewer/src/assets/deleteall.svg +0 -1
  45. package/viewer/src/assets/duplicate.svg +0 -1
  46. package/viewer/src/assets/measure.svg +0 -1
  47. package/viewer/src/assets/mmu.svg +0 -1
  48. package/viewer/src/assets/move.svg +0 -1
  49. package/viewer/src/assets/negative.svg +0 -1
  50. package/viewer/src/assets/onbed.svg +0 -1
  51. package/viewer/src/assets/open.svg +0 -1
  52. package/viewer/src/assets/orient.svg +0 -1
  53. package/viewer/src/assets/paint.svg +0 -1
  54. package/viewer/src/assets/rotate.svg +0 -1
  55. package/viewer/src/assets/scale.svg +0 -1
  56. package/viewer/src/assets/seam.svg +0 -1
  57. package/viewer/src/assets/split.svg +0 -1
  58. package/viewer/src/assets/textmark.svg +0 -1
  59. package/viewer/src/assets/varlayer.svg +0 -1
  60. package/viewer/src/icons.js +0 -23
  61. package/viewer/src/make_worker.js +0 -9
  62. package/viewer/src/model_loaders.js +0 -178
  63. package/viewer/src/shadow_host.jsx +0 -30
  64. package/viewer/src/toolpath_gpu.js +0 -430
@@ -0,0 +1,1704 @@
1
+ // AUTO-GENERATED by types/gen_settings_types.mjs — DO NOT EDIT.
2
+ // Source: data/config-schema.json (907 keys)
3
+
4
+ /** [x, y] — coPoint family */
5
+ export type Point = [number, number]
6
+
7
+ /**
8
+ * Slicer settings map. Sparse — it holds only edited keys; missing keys use the config-schema default.
9
+ * If you need arbitrary key extension, widen it with `SlicerSettings & Record<string, unknown>`.
10
+ */
11
+ export interface SlicerSettings {
12
+ absolute_correction?: number
13
+ /** Enable accel_to_decel — Klipper's max_accel_to_decel will be adjusted automatically. */
14
+ accel_to_decel_enable?: boolean
15
+ /** accel_to_decel — (%) — Klipper's max_accel_to_decel will be adjusted to this %% of acceleration. */
16
+ accel_to_decel_factor?: number
17
+ /** Activate air filtration — Activate for better air filtration. G-code command: M106 P3 S(0-255) */
18
+ activate_air_filtration?: boolean[] | boolean
19
+ activate_air_filtration_during_print?: boolean[] | boolean
20
+ activate_air_filtration_on_completion?: boolean[] | boolean
21
+ /** Activate temperature control — Enable this option for automated chamber temperature control. This option activates the emitting of an M191 command before the "machine_start_gcode" which sets the chamber temperature and waits until it is reached. In addition, it emits an M141 command at the end of the print to turn off the chamber heater, if present. This option relies on the firmware supporting the M191 and M141 commands either via macros or natively and is usually used when an active chamber heater is installed. */
22
+ activate_chamber_temp_control?: boolean[] | boolean
23
+ /** Mesh margin — (mm) — This option determines the additional distance by which the adaptive bed mesh area should be expanded in the XY directions. */
24
+ adaptive_bed_mesh_margin?: number
25
+ /** Enable adaptive pressure advance (beta) — With increasing print speeds (and hence increasing volumetric flow through the nozzle) and increasing accelerations, it has been observed that the effective PA value typically decreases. This means that a single PA value is not always 100% optimal for all features and a compromise value is usually used that does not cause too much bulging on features with lower flow speed and accelerations while also not causing gaps on faster features. This feature aims to address this limitation by modeling the response of your printer's extrusion system depending on the volumetric flow speed and acceleration it is printing at. Internally, it generates a fitted model that can extrapolate the needed pressure advance for any given volumetric flow speed and acceleration, which is then emitted to the printer depending on the current print conditions. When enabled, the pressure advance value above is overridden. However, a reasonable default value above is strongly recommended to act as a fallback and for when tool changing. */
26
+ adaptive_pressure_advance?: boolean[] | boolean
27
+ /** Static pressure advance for bridges — Static pressure advance value for bridges. Set to 0 to apply the same pressure advance as equivalent walls (using adaptive settings if enabled). A lower PA value when printing bridges helps reduce the appearance of slight under-extrusion immediately after bridges. This is caused by the pressure drop in the nozzle when printing in the air and a lower PA helps counteract this. */
28
+ adaptive_pressure_advance_bridges?: number[] | number
29
+ /** Adaptive pressure advance measurements (beta) — Add sets of pressure advance (PA) values, the volumetric flow speeds and accelerations they were measured at, separated by a comma. One set of values per line. For example 0.04,3.96,3000 0.033,3.96,10000 0.029,7.91,3000 0.026,7.91,10000 How to calibrate: 1. Run the pressure advance test for at least 3 speeds per acceleration value. It is recommended that the test is run for at least the speed of the external perimeters, the speed of the internal perimeters and the fastest feature print speed in your profile (usually its the sparse or solid infill). Then run them for the same speeds for the slowest and fastest print accelerations, and no faster than the recommended maximum acceleration as given by the Klipper input shaper 2. Take note of the optimal PA value for each volumetric flow speed and acceleration. You can find the flow number by selecting flow from the color scheme drop down and move the horizontal slider over the PA pattern lines. The number should be visible at the bottom of the page. The ideal PA value should be decreasing the higher the volumetric flow is. If it is not, confirm that your extruder is functioning correctly. The slower and with less acceleration you print, the larger the range of acceptable PA values. If no difference is visible, use the PA value from the faster test 3. Enter the triplets of PA values, Flow and Accelerations in the text box here and save your filament profile. */
30
+ adaptive_pressure_advance_model?: string[] | string
31
+ /** Enable adaptive pressure advance within features (beta) — Enable adaptive PA whenever there are flow changes in a feature, such as line width changes in a corner or overhangs. Not compatible with Prusa printers as they pause to process PA changes, which causes delays and defects. This is an experimental option, as if the PA profile is not set accurately, it will cause uniformity issues. */
32
+ adaptive_pressure_advance_overhangs?: boolean[] | boolean
33
+ /** Fan speed — (%) — Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed during printing except the first several layers which is defined by no cooling layers. Please enable auxiliary_fan in printer settings to use this feature. G-code command: M106 P2 S(0-255) */
34
+ additional_cooling_fan_speed?: number[] | number
35
+ /** Full fan speed at layer — Auxiliary fan speed will be ramped up linearly from layer "For the first" to maximum at layer "Full fan speed at layer". "Full fan speed at layer" will be ignored if lower than "For the first", in which case the fan will run at maximum allowed speed at layer "For the first" + 1. */
36
+ additional_fan_full_speed_layer?: number[] | number
37
+ /** Align directions to model — Aligns infill, bridge, ironing, and top/bottom surface directions to follow the model's orientation on the build plate. When enabled, these directions rotate together with the model so the printed features keep their intended orientation relative to the part, preserving optimal strength and surface characteristics regardless of how the model is placed. */
38
+ align_infill_direction_to_model?: boolean
39
+ /** Allow filaments with high/low temperature to be printed together — Allow filaments with high/low temperature to be printed together. */
40
+ allow_mix_temp?: boolean
41
+ /** Allow multiple colors on one plate — If enabled, Arrange will allow multiple colors on one plate. */
42
+ allow_multicolor_oneplate?: boolean
43
+ /** Allow 3MF with newer version to be sliced — Allow 3MF with newer version to be sliced. */
44
+ allow_newer_file?: boolean
45
+ /** Allow rotation when arranging — If enabled, Arrange will allow rotation when placing objects. */
46
+ allow_rotations?: boolean
47
+ /** Alternate extra wall — This setting adds an extra wall to every other layer. This way the infill gets wedged vertically between the walls, resulting in stronger prints. When this option is enabled, the ensure vertical shell thickness option needs to be disabled. Using lightning infill together with this option is not recommended as there is limited infill to anchor the extra perimeters to. */
48
+ alternate_extra_wall?: boolean
49
+ area_fill?: number
50
+ /** Arrange Options — Arrange options: 0-disable, 1-enable, others-auto */
51
+ arrange?: number
52
+ /** Assemble — Arrange the supplied models in a plate and merge them in a single model in order to perform actions once. */
53
+ assemble?: boolean
54
+ /** Auxiliary part cooling fan — Enable this option if machine has auxiliary part cooling fan. G-code command: M106 P2 S(0-255). */
55
+ auxiliary_fan?: boolean
56
+ /** Avoid extrusion calibrate region when arranging — If enabled, Arrange will avoid extrusion calibrate region when placing objects. */
57
+ avoid_extrusion_cali_region?: boolean
58
+ /** Show auto-calibration marks */
59
+ bbl_calib_mark_logo?: boolean
60
+ /** Use 3rd-party print host — Allow controlling BambuLab's printer through 3rd party print hosts. */
61
+ bbl_use_printhost?: boolean
62
+ /** Bed custom model */
63
+ bed_custom_model?: string
64
+ /** Bed custom texture */
65
+ bed_custom_texture?: string
66
+ /** Excluded bed area — Unprintable area in XY plane. For example, X1 Series printers use the front left corner to cut filament during filament change. The area is expressed as polygon by points in following format: "XxY, XxY, ..." */
67
+ bed_exclude_area?: Point[]
68
+ /** Bed mesh max — (mm) — This option sets the max point for the allowed bed mesh area. Due to the probe's XY offset, most printers are unable to probe the entire bed. To ensure the probe point does not go outside the bed area, the minimum and maximum points of the bed mesh should be set appropriately. OrcaSlicer ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max points. This information can usually be obtained from your printer manufacturer. The default setting is (99999, 99999), which means there are no limits, thus allowing probing across the entire bed. */
69
+ bed_mesh_max?: Point
70
+ /** Bed mesh min — (mm) — This option sets the min point for the allowed bed mesh area. Due to the probe's XY offset, most printers are unable to probe the entire bed. To ensure the probe point does not go outside the bed area, the minimum and maximum points of the bed mesh should be set appropriately. OrcaSlicer ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max points. This information can usually be obtained from your printer manufacturer. The default setting is (-99999, -99999), which means there are no limits, thus allowing probing across the entire bed. */
71
+ bed_mesh_min?: Point
72
+ /** Probe point distance — (mm) — This option sets the preferred distance between probe points (grid size) for the X and Y directions, with the default being 50mm for both X and Y. */
73
+ bed_mesh_probe_distance?: Point
74
+ /** Bed temperature type — This option determines how the bed temperature is set during slicing: based on the temperature of the first filament or the highest temperature of the printed filaments. */
75
+ bed_temperature_formula?: 'by_first_filament' | 'by_highest_temp'
76
+ /** Before layer change G-code — This G-code is inserted at every layer change before the Z lift. */
77
+ before_layer_change_gcode?: string
78
+ /** Best object position — Best auto arranging position in range [0,1] w.r.t. bed shape. */
79
+ best_object_pos?: Point
80
+ bottle_cost?: number
81
+ bottle_volume?: number
82
+ bottle_weight?: number
83
+ /** Bottom layer direction — (°) — Fixed angle for the bottom solid infill lines. Set to -1 to follow the default solid infill direction. */
84
+ bottom_layer_direction?: number
85
+ /** Bottom shell layers — (layers) — This is the number of solid layers of bottom shell, including the bottom surface layer. When the thickness calculated by this value is thinner than bottom shell thickness, the bottom shell layers will be increased. */
86
+ bottom_shell_layers?: number
87
+ /** Bottom shell thickness — (mm) — The number of bottom solid layers is increased when slicing if the thickness calculated by bottom shell layers is thinner than this value. This can avoid having too thin a shell when layer height is small. 0 means that this setting is disabled and the thickness of the bottom shell is determined simply by the number of bottom shell layers. */
88
+ bottom_shell_thickness?: number
89
+ /** Bottom surface flow ratio — This factor affects the amount of material for bottom solid infill. The actual bottom solid infill flow used is calculated by multiplying this value with the filament flow ratio, and if set, the object's flow ratio. */
90
+ bottom_solid_infill_flow_ratio?: number
91
+ /** Bottom surface density — (%) — Density of the bottom surface layer. Intended for aesthetic or functional purposes, not to fix issues such as over-extrusion. WARNING: Lowering this value may negatively affect bed adhesion. */
92
+ bottom_surface_density?: number
93
+ /** Bottom surface — Filament to print bottom surface. "Default" uses the active object/part filament. */
94
+ bottom_surface_filament_id?: number
95
+ /** Bottom surface fill order — Direction in which bottom surfaces are filled when using a center-based pattern (Concentric, Archimedean Chords, Octagram Spiral). Inward starts each surface with the wider outer curves, which improves first layer adhesion on build plates where the tight curves at the center may not stick. Outward starts at the center, pushing any excess material towards the edge. Default uses shortest-path ordering, which may run in either direction. */
96
+ bottom_surface_fill_order?: 'default' | 'outward' | 'inward'
97
+ /** Bottom surface pattern — This is the line pattern of bottom surface infill, not including bridge infill. */
98
+ bottom_surface_pattern?: 'monotonic' | 'monotonicline' | 'rectilinear' | 'alignedrectilinear' | 'concentric' | 'hilbertcurve' | 'archimedeanchords' | 'octagramspiral'
99
+ /** Bridge — (mm/s² or %) — Acceleration of bridges. If the value is expressed as a percentage (e.g. 50%), it will be calculated based on the outer wall acceleration. */
100
+ bridge_acceleration?: (number | string)[] | (number | string)
101
+ /** External bridge infill direction — (°) — External Bridging angle override. If left to zero, the bridging angle will be calculated automatically for each specific bridge. Otherwise the provided angle will be used according to: - The absolute coordinates - The absolute coordinates + Model rotation: If Align directions to model is enabled - The optimal automatic angle + this value: If 'Relative Bridge Angle' is enabled Use 180° for zero absolute angle. */
102
+ bridge_angle?: number
103
+ /** External bridge density — (%) — Controls the density (spacing) of external bridge lines. Theoretically, 100% means a solid bridge, but due to the tendency of bridge extrusions to sag, 100% may not be sufficient. - Higher than 100% density (Recommended Max 125%): - Pros: Produces smoother bridge surfaces, as overlapping lines provide additional support during printing. - Cons: Can cause overextrusion, which may reduce lower and upper surface quality and increase the risk of warping. - Lower than 100% density (Min 10%): - Pros: Can create a string-like first layer. Faster and with better cooling because there is more space for air to circulate around the extruded bridge. - Cons: May lead to sagging and poorer surface finish. */
104
+ bridge_density?: number
105
+ /** Bridge flow ratio — This value governs the thickness of the external (visible) bridge layer. Values above 1.0: Increase the amount of material while maintaining line spacing. This can improve line contact and strength. Values below 1.0: Reduce the amount of material while adjusting line spacing to maintain contact. This can improve sagging. The actual bridge flow used is calculated by multiplying this value with the filament flow ratio, and if set, the object's flow ratio. */
106
+ bridge_flow?: number
107
+ /** Bridge — (mm or %) — Line width of the Bridge. If expressed as a %, it will be computed over the nozzle diameter. Recommended to use with a higher Bridge density or Bridge flow ratio. The maximum value is 100% or the nozzle diameter. If set to 0, the line width will match the Internal solid infill width. */
108
+ bridge_line_width?: number | string
109
+ /** Don't support bridges — This disables supporting bridges, which decreases the amount of support required. Bridges can usually be printed directly without support over a reasonable distance. */
110
+ bridge_no_support?: boolean
111
+ /** External — (mm/s) — Speed of the externally visible bridge extrusions. In addition, if Slow down for curled perimeters is disabled or Classic overhang mode is enabled, it will be the print speed of overhang walls that are supported by less than 13%, whether they are part of a bridge or an overhang. */
112
+ bridge_speed?: number[] | number
113
+ /** Brim ears — Only draw brim over the sharp edges of the model. */
114
+ brim_ears?: boolean
115
+ /** Brim ear detection radius — (mm) — The geometry will be decimated before detecting sharp angles. This parameter indicates the minimum length of the deviation for the decimation. 0 to deactivate. */
116
+ brim_ears_detection_length?: number
117
+ /** Brim ear max angle — (°) — Maximum angle to let a brim ear appear. If set to 0, no brim will be created. If set to ~180, brim will be created on everything but straight sections. */
118
+ brim_ears_max_angle?: number
119
+ /** Brim flow ratio — This factor affects the amount of material for brims. The actual brim flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. Note: The resulting value will not be affected by the first-layer flow ratio. */
120
+ brim_flow_ratio?: number
121
+ /** Brim-object gap — (mm) — This creates a gap between the innermost brim line and the object and can make the brim easier to remove. */
122
+ brim_object_gap?: number
123
+ /** Brim type — This controls the generation of the brim at outer and/or inner side of models. Auto means the brim width is analyzed and calculated automatically. */
124
+ brim_type?: 'auto_brim' | 'brim_ears' | 'painted' | 'outer_only' | 'inner_only' | 'outer_and_inner' | 'no_brim'
125
+ /** Brim follows compensated outline — When enabled, the brim is aligned with the first-layer perimeter geometry after Elephant Foot Compensation is applied. This option is intended for cases where Elephant Foot Compensation significantly alters the first-layer footprint. If your current setup already works well, enabling it may be unnecessary and can cause the brim to fuse with upper layers. */
126
+ brim_use_efc_outline?: boolean
127
+ /** Brim width — (mm) — This is the distance from the model to the outermost brim line. */
128
+ brim_width?: number
129
+ calib_flowrate_topinfill_special_order?: boolean
130
+ /** Center surface pattern on — Chooses where the centering point of centered top/bottom surface patterns (Archimedean Chords, Octagram Spiral) is placed. - Each Surface: centers the pattern on every individual surface region, so each island is symmetric on its own. - Each Model: centers the pattern on each connected body. Parts that touch or overlap share one center; parts detached from the rest each get their own. - Each Assembly: uses a single shared center for the whole object or assembly. */
131
+ center_of_surface_pattern?: 'each_surface' | 'each_model' | 'each_assembly'
132
+ /** Minimal — (\u2103) — This is the chamber temperature at which printing should start, while the chamber continues heating toward the "Target" chamber temperature. For example, set the Target to 60 and the Minimal to 50 to begin printing once the chamber reaches 50℃, without waiting for the full 60℃. It sets a G-code variable named chamber_minimal_temperature, which can be passed to your print start macro or a heat soak macro, like this: PRINT_START (other variables) CHAMBER_MIN_TEMP=[chamber_minimal_temperature]. Unlike the "Target" chamber temperature, this option does not emit any M141/M191 commands; it only exposes the value to your custom G-code. It should not exceed the "Target" chamber temperature. */
133
+ chamber_minimal_temperature?: number[] | number
134
+ /** Chamber temperature — (\u2103) — For high-temperature materials like ABS, ASA, PC, and PA, a higher chamber temperature can help suppress or reduce warping and potentially lead to higher interlayer bonding strength. However, at the same time, a higher chamber temperature will reduce the efficiency of air filtration for ABS and ASA. For PLA, PETG, TPU, PVA, and other low-temperature materials, this option should be disabled (set to 0) as the chamber temperature should be low to avoid extruder clogging caused by material softening at the heat break. If enabled, this parameter also sets a G-code variable named chamber_temperature, which can be used to pass the desired chamber temperature to your print start macro, or a heat soak macro like this: PRINT_START (other variables) CHAMBER_TEMP=[chamber_temperature]. This may be useful if your printer does not support M141/M191 commands, or if you desire to handle heat soaking in the print start macro if no active chamber heater is installed. */
135
+ chamber_temperature?: number[] | number
136
+ /** Change extrusion role G-code — This G-code is inserted when the extrusion role is changed. */
137
+ change_extrusion_role_gcode?: string
138
+ /** Change filament G-code — This G-code is inserted when filament is changed, including T commands to trigger tool change. */
139
+ change_filament_gcode?: string
140
+ /** Clone Objects — Clone objects in the load list. */
141
+ clone_objects?: number[] | number
142
+ /** For the first — (layers) — Set special auxiliary cooling fan for the first certain layers. */
143
+ close_additional_fan_first_x_layers?: number[] | number
144
+ /** No cooling for the first — (layers) — Turn off all cooling fans for the first few layers. This can be used to improve build plate adhesion. */
145
+ close_fan_the_first_x_layers?: number[] | number
146
+ /** Combine brims — Combine multiple brims into one when they are close to each other. This can improve brim adhesion. */
147
+ combine_brims?: boolean
148
+ compatible_machine_expression_group?: string[] | string
149
+ /** Select printers */
150
+ compatible_printers?: string[] | string
151
+ /** Condition — A Boolean expression using the configuration values of an active printer profile. If this expression evaluates to true, this profile is considered compatible with the active printer profile. */
152
+ compatible_printers_condition?: string
153
+ /** Select profiles */
154
+ compatible_prints?: string[] | string
155
+ /** Condition — A Boolean expression using the configuration values of an active print profile. If this expression evaluates to true, this profile is considered compatible with the active print profile. */
156
+ compatible_prints_condition?: string
157
+ compatible_process_expression_group?: string[] | string
158
+ /** Fan speed — (%) */
159
+ complete_print_exhaust_fan_speed?: number[] | number
160
+ /** Convert Unit — Convert the units of model. */
161
+ convert_unit?: boolean
162
+ /** Other layers — (\u2103) — This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate. */
163
+ cool_plate_temp?: number[] | number
164
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the Cool Plate. */
165
+ cool_plate_temp_initial_layer?: number[] | number
166
+ /** Use cooling filter — Enable this if printer support cooling filter */
167
+ cooling_filter_enabled?: boolean
168
+ /** Cooling tube length — (mm) — Length of the cooling tube to limit space for cooling moves inside it. */
169
+ cooling_tube_length?: number
170
+ /** Cooling tube position — (mm) — Distance of the center-point of the cooling tube from the extruder tip. */
171
+ cooling_tube_retraction?: number
172
+ /** Bridge counterbore holes — This option creates bridges for counterbore holes, allowing them to be printed without support. Available modes include: 1. None: No bridge is created 2. Partially Bridged: Only a part of the unsupported area will be bridged 3. Sacrificial Layer: A full sacrificial bridge layer is created */
173
+ counterbore_hole_bridging?: 'none' | 'partiallybridge' | 'sacrificiallayer'
174
+ /** Bed type — Plate types supported by the printer */
175
+ curr_bed_type?: 'Cool Plate' | 'Engineering Plate' | 'High Temp Plate' | 'Textured PEI Plate' | 'Textured Cool Plate' | 'Supertack Plate'
176
+ /** Current extruder — Zero-based index of currently used extruder. */
177
+ current_extruder?: number
178
+ /** Current object index — Specific for sequential printing. Zero-based index of currently printed object. */
179
+ current_object_idx?: number
180
+ /** Data directory — Load and store settings at the given directory. This is useful for maintaining different profiles or including configurations from a network storage. */
181
+ datadir?: string
182
+ /** Day */
183
+ day?: number
184
+ /** Debug level — Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:trace */
185
+ debug?: number
186
+ /** Normal printing — (mm/s²) — This is the default acceleration for both normal printing and travel after the first layer. */
187
+ default_acceleration?: number[] | number
188
+ /** Default bed type — Default bed type for the printer (supports both numeric and string format). */
189
+ default_bed_type?: string
190
+ /** Default color — Default filament color. Right click to reset value to system default. */
191
+ default_filament_colour?: string[] | string
192
+ /** Default filament profile — Default filament profile when switching to this machine profile. */
193
+ default_filament_profile?: string[] | string
194
+ /** Default — (mm/s) — Default jerk. */
195
+ default_jerk?: number[] | number
196
+ /** Junction Deviation — (mm) — Marlin Firmware Junction Deviation (replaces the traditional XY Jerk setting). */
197
+ default_junction_deviation?: number[] | number
198
+ /** Default Nozzle Volume Type. — Default Nozzle volume type for extruders in this printer. */
199
+ default_nozzle_volume_type?: ('Standard' | 'High Flow' | 'Hybrid' | 'TPU High Flow')[] | ('Standard' | 'High Flow' | 'Hybrid' | 'TPU High Flow')
200
+ /** Default process profile — Default process profile when switching to this machine profile. */
201
+ default_print_profile?: string
202
+ default_sla_material_profile?: string
203
+ default_sla_print_profile?: string
204
+ /** Deretraction speed (extruder change) — (mm/s) — Speed for reloading filament into the nozzle when switching extruder. */
205
+ deretract_speed_extruder_change?: number[] | number
206
+ /** Deretraction speed — (mm/s) — Speed for reloading filament into the nozzle. Zero means same speed of retraction. */
207
+ deretraction_speed?: number[] | number
208
+ /** Detect narrow internal solid infills — This option will auto-detect narrow internal solid infill areas. If enabled, the concentric pattern will be used for the area to speed up printing. Otherwise, the rectilinear pattern will be used by default. */
209
+ detect_narrow_internal_solid_infill?: boolean
210
+ /** Detect overhang walls — This detects the overhang percentage relative to line width and uses a different speed to print. For 100%% overhang, bridging speed is used. */
211
+ detect_overhang_wall?: boolean
212
+ /** Detect thin walls — This detects thin walls which can\u2019t contain two lines and uses a single line to print. It may not print as well because it\u2019s not a closed loop. */
213
+ detect_thin_wall?: boolean
214
+ different_settings_to_system?: string[] | string
215
+ /** Disable set remaining print time — Disable generating of the M73: Set remaining print time in the final G-code. */
216
+ disable_m73?: boolean
217
+ display_height?: number
218
+ display_mirror_x?: boolean
219
+ display_mirror_y?: boolean
220
+ display_orientation?: 'landscape' | 'portrait'
221
+ /** X */
222
+ display_pixels_x?: number
223
+ /** Y */
224
+ display_pixels_y?: number
225
+ display_width?: number
226
+ /** Filter out small internal bridges — This option can help reduce pillowing on top surfaces in heavily slanted or curved models. By default, small internal bridges are filtered out and the internal solid infill is printed directly over the sparse infill. This works well in most cases, speeding up printing without too much compromise on top surface quality. However, in heavily slanted or curved models, especially where too low a sparse infill density is used, this may result in curling of the unsupported solid infill, causing pillowing. Enabling limited filtering or no filtering will print internal bridge layer over slightly unsupported internal solid infill. The options below control the sensitivity of the filtering, i.e. they control where internal bridges are created: 1. Filter - enables this option. This is the default behavior and works well in most cases 2. Limited filtering - creates internal bridges on heavily slanted surfaces while avoiding unnecessary bridges. This works well for most difficult models 3. No filtering - creates internal bridges on every potential internal overhang. This option is useful for heavily slanted top surface models; however, in most cases, it creates too many unnecessary bridges. */
227
+ dont_filter_internal_bridges?: 'disabled' | 'limited' | 'nofilter'
228
+ /** Don't slow down outer walls — If enabled, this setting will ensure external perimeters are not slowed down to meet the minimum layer time. This is particularly helpful in the below scenarios: 1. To avoid changes in shine when printing glossy filaments 2. To avoid changes in external wall speed which may create slight wall artifacts that appear like Z banding 3. To avoid printing at speeds which cause VFAs (fine artifacts) on the external walls */
229
+ dont_slow_down_outer_wall?: boolean[] | boolean
230
+ /** Downward machines check — If enabled, check whether current machine downward compatible with the machines in the list. */
231
+ downward_check?: boolean
232
+ /** Downward machines settings — The machine settings list needs to do downward checking. */
233
+ downward_settings?: string[] | string
234
+ /** Draft shield — A draft shield is useful to protect an ABS or ASA print from warping and detaching from print bed due to wind draft. It is usually needed only with open frame printers, i.e. without an enclosure. Enabled = skirt is as tall as the highest printed object. Otherwise 'Skirt height' is used. Note: With the draft shield active, the skirt will be printed at skirt distance from the object. Therefore, if brims are active it may intersect with them. To avoid this, increase the skirt distance value. */
235
+ draft_shield?: 'disabled' | 'enabled'
236
+ /** Fan speed — (%) */
237
+ during_print_exhaust_fan_speed?: number[] | number
238
+ /** Absolute E position — Current position of the extruder axis. Only used with absolute extruder addressing. */
239
+ e_position?: number[] | number
240
+ /** Extra de-retraction — Currently planned extra extruder priming after de-retraction. */
241
+ e_restart_extra?: number[] | number
242
+ /** Retraction — Retraction state at the beginning of the custom G-code block. If the custom G-code moves the extruder axis, it should write to this variable so OrcaSlicer de-retracts correctly when it gets control back. */
243
+ e_retracted?: number[] | number
244
+ /** Elephant foot compensation — (mm) — This shrinks the first layer on the build plate to compensate for elephant foot effect. */
245
+ elefant_foot_compensation?: number
246
+ /** Elephant foot compensation layers — (layers) — The number of layers on which the elephant foot compensation will be active. The first layer will be shrunk by the elephant foot compensation value, then the next layers will be linearly shrunk less, up to the layer indicated by this value. */
247
+ elefant_foot_compensation_layers?: number
248
+ /** Elephant foot layers density — (%) — Density of internal solid infill for Elephant foot layers compensation. The initial value for the second layer is set. Subsequent layers become linearly denser by the height specified in elefant_foot_compensation_layers. */
249
+ elefant_foot_layers_density?: number
250
+ elefant_foot_min_width?: number
251
+ /** Emit limits to G-code — If enabled, the machine limits will be emitted to G-code file. This option will be ignored if the G-code flavor is set to Klipper. */
252
+ emit_machine_limits_to_gcode?: boolean
253
+ /** Arc fitting — Enable this to get a G-code file which has G2 and G3 moves. The fitting tolerance is same as the resolution. Note: For Klipper machines, this option is recommended to be disabled. Klipper does not benefit from arc commands as these are split again into line segments by the firmware. This results in a reduction in surface quality as line segments are converted to arcs by the slicer and then back to line segments by the firmware. */
254
+ enable_arc_fitting?: boolean
255
+ /** Extra bridge layers (beta) — This option enables the generation of an extra bridge layer over internal and/or external bridges. Extra bridge layers help improve bridge appearance and reliability, as the solid infill is better supported. This is especially useful in fast printers, where the bridge and solid infill speeds vary greatly. The extra bridge layer results in reduced pillowing on top surfaces, as well as reduced separation of the external bridge layer from its surrounding perimeters. It is generally recommended to set this to at least 'External bridge only', unless specific issues with the sliced model are found. Options: 1. Disabled - does not generate second bridge layers. This is the default and is set for compatibility purposes 2. External bridge only - generates second bridge layers for external-facing bridges only. Please note that small bridges that are shorter or narrower than the set number of perimeters will be skipped as they would not benefit from a second bridge layer. If generated, the second bridge layer will be extruded parallel to the first bridge layer to reinforce the bridge strength 3. Internal bridge only - generates second bridge layers for internal bridges over sparse infill only. Please note that the internal bridges count towards the top shell layer count of your model. The second internal bridge layer will be extruded as close to perpendicular to the first as possible. If multiple regions in the same island, with varying bridge angles are present, the last region of that island will be selected as the angle reference 4. Apply to all - generates second bridge layers for both internal and external-facing bridges */
256
+ enable_extra_bridge_layer?: 'disabled' | 'external_bridge_only' | 'internal_bridge_only' | 'apply_to_all'
257
+ /** Enable filament dynamic map — Enable dynamic filament mapping during print. */
258
+ enable_filament_dynamic_map?: boolean
259
+ /** Enable filament ramming — Enable filament ramming */
260
+ enable_filament_ramming?: boolean
261
+ enable_long_retraction_when_cut?: number
262
+ /** Force cooling for overhangs and bridges — Enable this option to allow adjustment of the part cooling fan speed for specifically for overhangs, internal and external bridges. Setting the fan speed specifically for these features can improve overall print quality and reduce warping. */
263
+ enable_overhang_bridge_fan?: boolean[] | boolean
264
+ /** Slow down for overhangs — Enable this option to slow down when printing overhangs. The speeds for different overhang percentages are set below. */
265
+ enable_overhang_speed?: boolean[] | boolean
266
+ /** Power Loss Recovery — Choose how to control power loss recovery. When set to Printer configuration, the slicer will not emit power loss recovery G-code and will leave the printer's configuration unchanged. Applicable to Bambu Lab or Marlin 2 firmware based printers. */
267
+ enable_power_loss_recovery?: 'printer_configuration' | 'enable' | 'disable'
268
+ enable_pre_heating?: boolean
269
+ /** Enable pressure advance — Enable pressure advance, auto calibration result will be overwritten once enabled. */
270
+ enable_pressure_advance?: boolean[] | boolean
271
+ /** Enable — The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects. */
272
+ enable_prime_tower?: boolean
273
+ /** Enable support — This enables support generation. */
274
+ enable_support?: boolean
275
+ /** Enable timelapse for print — If enabled, this slicing will be considered using timelapse. */
276
+ enable_timelapse?: boolean
277
+ /** Cool down from interface boost during prime tower — When interface-layer temperature boost is active, set the nozzle back to print temperature at the start of the prime tower so it cools down during the tower. */
278
+ enable_tower_interface_cooldown_during_tower?: boolean
279
+ /** Enable tower interface features — Enable optimized prime tower interface behavior when different materials meet. */
280
+ enable_tower_interface_features?: boolean
281
+ /** Enable clumping detection — Enable clumping detection */
282
+ enable_wrapping_detection?: boolean
283
+ /** (layers) */
284
+ enforce_support_layers?: number
285
+ /** Other layers — (\u2103) — This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Engineering Plate. */
286
+ eng_plate_temp?: number[] | number
287
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the Engineering Plate. */
288
+ eng_plate_temp_initial_layer?: number[] | number
289
+ /** Ensure on bed — Lift the object above the bed when it is partially below. Disabled by default. */
290
+ ensure_on_bed?: boolean
291
+ /** Ensure vertical shell thickness — Add solid infill near sloping surfaces to guarantee the vertical shell thickness (top+bottom solid layers) None: No solid infill will be added anywhere. Caution: Use this option carefully if your model has sloped surfaces Critical Only: Avoid adding solid infill for walls Moderate: Add solid infill for heavily sloping surfaces only All: Add solid infill for all suitable sloping surfaces Default value is All. */
292
+ ensure_vertical_shell_thickness?: 'none' | 'ensure_critical_only' | 'ensure_moderate' | 'ensure_all'
293
+ /** Exclude objects — Enable this option to add EXCLUDE OBJECT command in G-code. */
294
+ exclude_object?: boolean
295
+ /** Export 3MF — This exports the project as a 3MF file. */
296
+ export_3mf?: string
297
+ /** Export Settings — This exports settings to a file. */
298
+ export_settings?: string
299
+ /** Export slicing data — Export slicing data to a folder */
300
+ export_slicedata?: string
301
+ /** Export STL — Export the objects as single STL. */
302
+ export_stl?: boolean
303
+ /** Export multiple STLs — Export the objects as multiple STLs to directory. */
304
+ export_stls?: string
305
+ exposure_time?: number
306
+ /** Extra loading distance — (mm) — When set to zero, the distance the filament is moved from parking position during load is exactly the same as it was moved back during unload. When positive, it is loaded further, if negative, the loading move is shorter than unloading. */
307
+ extra_loading_move?: number
308
+ /** Extra perimeters on overhangs — Create additional perimeter paths over steep overhangs and areas where bridges cannot be anchored. */
309
+ extra_perimeters_on_overhangs?: boolean
310
+ /** Insert solid layers — Insert solid infill at specific layers. Use N to insert every Nth layer, N#K to insert K consecutive solid layers every N layers (K is optional, e.g. '5#' equals '5#1'), or a comma-separated list (e.g. 1,7,9) to insert at explicit layers. Layers are 1-based. */
311
+ extra_solid_infills?: string
312
+ /** Volume per extruder — Total filament volume extruded per extruder during the entire print. */
313
+ extruded_volume?: number[] | number
314
+ /** Total volume — Total volume of filament used during the entire print. */
315
+ extruded_volume_total?: number
316
+ /** Weight per extruder — Weight per extruder extruded during the entire print. Calculated from filament_density value in Filament Settings. */
317
+ extruded_weight?: number[] | number
318
+ /** Total weight — Total weight of the print. Calculated from filament_density value in Filament Settings. */
319
+ extruded_weight_total?: number
320
+ /** Extruder */
321
+ extruder?: number
322
+ /** Extruder AMS count — AMS counts per extruder. */
323
+ extruder_ams_count?: string[] | string
324
+ /** Height to lid — (mm) — Distance from the nozzle tip to the lid. Used for collision avoidance in by-object printing. */
325
+ extruder_clearance_height_to_lid?: number
326
+ /** Height to rod — (mm) — Distance from the nozzle tip to the lower rod. Used for collision avoidance in by-object printing. */
327
+ extruder_clearance_height_to_rod?: number
328
+ /** Radius — (mm) — Clearance radius around extruder: used for collision avoidance in by-object printing. */
329
+ extruder_clearance_radius?: number
330
+ /** Extruder Color — Only used as a visual help on UI. */
331
+ extruder_colour?: string[] | string
332
+ extruder_max_nozzle_count?: number[] | number
333
+ /** extruder nozzle count — extruder nozzle count */
334
+ extruder_nozzle_count?: number[] | number
335
+ /** Extruder nozzle stats — Physical nozzle counts per extruder, keyed by nozzle volume type. */
336
+ extruder_nozzle_stats?: string[] | string
337
+ /** Extruder nozzle volume type — Nozzle volume type per physical nozzle of an extruder. */
338
+ extruder_nozzle_volume_type?: ('Standard' | 'High Flow' | 'TPU High Flow')[] | ('Standard' | 'High Flow' | 'TPU High Flow')
339
+ /** Extruder offset — (mm) */
340
+ extruder_offset?: Point[]
341
+ /** Extruder printable area */
342
+ extruder_printable_area?: Point[][]
343
+ /** Extruder printable height — (mm) — Maximum printable height of this extruder which is limited by mechanism of printer. */
344
+ extruder_printable_height?: number[] | number
345
+ /** Type — This setting is only used for initial value of manual calibration of pressure advance. Bowden extruder usually has larger PA value. This setting doesn't influence normal slicing. */
346
+ extruder_type?: ('Direct Drive' | 'Bowden')[] | ('Direct Drive' | 'Bowden')
347
+ /** Extruder variant list — Extruder variant list. */
348
+ extruder_variant_list?: string[] | string
349
+ /** Apply only on external features — Applies extrusion rate smoothing only on external perimeters and overhangs. This can help reduce artefacts due to sharp speed transitions on externally visible overhangs without impacting the print speed of features that will not be visible to the user. */
350
+ extrusion_rate_smoothing_external_perimeter_only?: boolean
351
+ faded_layers?: number
352
+ /** Layer time — (s) — The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time. */
353
+ fan_cooling_layer_time?: number[] | number
354
+ /** Fan direction — Cooling fan direction of the printer */
355
+ fan_direction?: 'undefine' | 'left' | 'right' | 'both'
356
+ /** Fan kick-start time — (s) — Emit a max fan speed command for this amount of seconds before reducing to target speed to kick-start the cooling fan. This is useful for fans where a low PWM/power may be insufficient to get the fan started spinning from a stop, or to get the fan up to speed faster. Set to 0 to deactivate. */
357
+ fan_kickstart?: number
358
+ /** Fan speed — (%) — The part cooling fan speed may be increased when auto cooling is enabled. This is the maximum speed for the part cooling fan. */
359
+ fan_max_speed?: number[] | number
360
+ /** Fan speed — (%) — Minimum speed for part cooling fan. */
361
+ fan_min_speed?: number[] | number
362
+ /** Only overhangs — Will only take into account the delay for the cooling of overhangs. */
363
+ fan_speedup_overhangs?: boolean
364
+ /** (s) — Start the fan this number of seconds earlier than its target start time (you can use fractional seconds). It assumes infinite acceleration for this time estimation, and will only take into account G1 and G0 moves (arc fitting is unsupported). It won't move fan commands from custom G-code (they act as a sort of 'barrier'). It won't move fan commands into the start G-code if the 'only custom start G-code' is activated. Use 0 to deactivate. */
365
+ fan_speedup_time?: number
366
+ /** Farthest point timelapse — When enabled, the timelapse snapshot is taken at the farthest point from camera instead of traveling to the wipe tower or excess chute. Only effective in traditional timelapse mode on non-I3 printers. */
367
+ farthest_point_timelapse?: boolean
368
+ fast_tilt_time?: number
369
+ /** Adaptive volumetric speed — When enabled, the extrusion flow is limited by the smaller of the fitted value (calculated from line width and layer height) and the user-defined maximum flow. When disabled, only the user-defined maximum flow is applied. Note: Experimental and incomplete feature imported from BBS. Functional for some profiles that already have the variable saved. */
370
+ filament_adaptive_volumetric_speed?: boolean[] | boolean
371
+ /** Adhesiveness Category — Filament category. */
372
+ filament_adhesiveness_category?: number[] | number
373
+ /** Change extrusion role G-code (filament) — This G-code is inserted when the extrusion role is changed for the active filament. */
374
+ filament_change_extrusion_role_gcode?: string[] | string
375
+ /** Filament ramming length — (mm) — When changing the extruder, it is recommended to extrude a certain length of filament from the original extruder. This helps minimize nozzle oozing. */
376
+ filament_change_length?: number[] | number
377
+ /** Hotend change — (mm) — When changing the hotend, it is recommended to extrude a certain length of filament from the original nozzle. This helps minimize nozzle oozing. */
378
+ filament_change_length_nc?: number[] | number
379
+ /** Color — Only used as a visual help on UI. */
380
+ filament_colour?: string[] | string
381
+ filament_colour_type?: string[] | string
382
+ /** Wipe tower cooling — (\u2103) — Temperature drop before entering filament tower */
383
+ filament_cooling_before_tower?: number[] | number
384
+ /** Speed of the last cooling move — (mm/s) — Cooling moves are gradually accelerating towards this speed. */
385
+ filament_cooling_final_speed?: number[] | number
386
+ /** Speed of the first cooling move — (mm/s) — Cooling moves are gradually accelerating beginning at this speed. */
387
+ filament_cooling_initial_speed?: number[] | number
388
+ /** Number of cooling moves — Filament is cooled by being moved back and forth in the cooling tubes. Specify desired number of these moves. */
389
+ filament_cooling_moves?: number[] | number
390
+ /** Price — (money/kg) — Filament price, for statistical purposes only. */
391
+ filament_cost?: number[] | number
392
+ /** Density — (g/cm³) — Filament density, for statistical purposes only. */
393
+ filament_density?: number[] | number
394
+ filament_dev_ams_drying_ams_limitations?: string[] | string
395
+ filament_dev_ams_drying_heat_distortion_temperature?: number[] | number
396
+ filament_dev_ams_drying_temperature?: number[] | number
397
+ filament_dev_ams_drying_time?: number[] | number
398
+ filament_dev_chamber_drying_bed_temperature?: number[] | number
399
+ filament_dev_chamber_drying_time?: number[] | number
400
+ /** it_opt->second.label — (it_opt->second.sidetext) — it_opt->second.tooltip */
401
+ filament_dev_drying_cooling_temperature?: number[] | number
402
+ filament_dev_drying_softening_temperature?: number[] | number
403
+ /** Diameter — (mm) — Filament diameter is used to calculate extrusion variables in G-code, so it is important that this is accurate and precise. */
404
+ filament_diameter?: number[] | number
405
+ /** End G-code — Add end G-code when finishing the printing of this filament. */
406
+ filament_end_gcode?: string[] | string
407
+ /** Filament-extruder compatibility — A single 32-bit int encoding the compatibility level of a filament across all extruders (up to 10). Every 3 bits represent one extruder (bits [3*i, 3*i+2] for extruder i). 0: printable, 1: error, 2: critical warning, 3: warning, 4-7: reserved. */
408
+ filament_extruder_compatibility?: number[] | number
409
+ /** Filament extruder ID — The current extruder ID. The same as current_extruder. */
410
+ filament_extruder_id?: number
411
+ /** Filament's extruder variant — Filament's extruder variant. */
412
+ filament_extruder_variant?: string[] | string
413
+ /** Flow ratio — The material may have volumetric change after switching between molten and crystalline states. This setting changes all extrusion flow of this filament in G-code proportionally. The recommended value range is between 0.95 and 1.05. You may be able to tune this value to get a nice flat surface if there is slight overflow or underflow. */
414
+ filament_flow_ratio?: number[] | number
415
+ /** Flush temperature — (\u2103) — Temperature when flushing filament. 0 indicates the upper bound of the recommended nozzle temperature range. */
416
+ filament_flush_temp?: number[] | number
417
+ /** Flush temperature — (\u2103) — Flush temperature used in fast purge mode. */
418
+ filament_flush_temp_fast?: number[] | number
419
+ /** Flush volumetric speed — (mm³/s) — Volumetric speed when flushing filament. 0 indicates the max volumetric speed. */
420
+ filament_flush_volumetric_speed?: number[] | number
421
+ filament_ids?: string[] | string
422
+ /** Ironing flow — (%) — Filament-specific override for ironing flow. This allows you to customize the ironing flow for each filament type. Too high value results in overextrusion on the surface. */
423
+ filament_ironing_flow?: number[] | number
424
+ /** Ironing inset — (mm) — Filament-specific override for ironing inset. This allows you to customize the distance to keep from the edges when ironing for each filament type. */
425
+ filament_ironing_inset?: number[] | number
426
+ /** Ironing line spacing — (mm) — Filament-specific override for ironing line spacing. This allows you to customize the spacing between ironing lines for each filament type. */
427
+ filament_ironing_spacing?: number[] | number
428
+ /** Ironing speed — (mm/s) — Filament-specific override for ironing speed. This allows you to customize the print speed of ironing lines for each filament type. */
429
+ filament_ironing_speed?: number[] | number
430
+ /** Support material — Support material is commonly used to print supports and support interfaces. */
431
+ filament_is_support?: boolean[] | boolean
432
+ /** Loading speed — (mm/s) — Speed used for loading the filament on the wipe tower. */
433
+ filament_loading_speed?: number[] | number
434
+ /** Loading speed at the start — (mm/s) — Speed used at the very beginning of loading phase. */
435
+ filament_loading_speed_start?: number[] | number
436
+ /** Filament map to extruder — Filament map to extruder. */
437
+ filament_map?: number[] | number
438
+ /** Filament map plus for multi nozzle — Filament map to the index identified by extruder and nozzle_volume_type */
439
+ filament_map_2?: number[] | number
440
+ /** filament mapping mode — Filament mapping mode used as plate param. */
441
+ filament_map_mode?: 'Auto For Flush' | 'Auto For Match' | 'Manual' | 'Nozzle Manual' | 'Default'
442
+ filament_max_temperature_drop_when_ec?: number[] | number
443
+ /** Max volumetric speed — (mm³/s) — This setting is the volume of filament that can be melted and extruded per second. Printing speed is limited by max volumetric speed, in case of too high and unreasonable speed setting. This value cannot be zero. */
444
+ filament_max_volumetric_speed?: number[] | number
445
+ /** Minimal purge on wipe tower — (mm³) — After a tool change, the exact position of the newly loaded filament inside the nozzle may not be known, and the filament pressure is likely not yet stable. Before purging the print head into an infill or a sacrificial object, Orca Slicer will always prime this amount of material into the wipe tower to produce successive infill or sacrificial object extrusions reliably. */
446
+ filament_minimal_purge_on_wipe_tower?: number[] | number
447
+ filament_multi_colour?: string[] | string
448
+ /** Enable ramming for multi-tool setups — Perform ramming when using multi-tool printer (i.e. when the 'Single Extruder Multimaterial' in Printer Settings is unchecked). When checked, a small amount of filament is rapidly extruded on the wipe tower just before the tool change. This option is only used when the wipe tower is enabled. */
449
+ filament_multitool_ramming?: boolean[] | boolean
450
+ /** Multi-tool ramming flow — (mm³/s) — Flow used for ramming the filament before the tool change. */
451
+ filament_multitool_ramming_flow?: number[] | number
452
+ /** Multi-tool ramming volume — (mm³) — The volume to be rammed before the tool change. */
453
+ filament_multitool_ramming_volume?: number[] | number
454
+ /** Filament notes — You can put your notes regarding the filament here. */
455
+ filament_notes?: string[] | string
456
+ filament_nozzle_map?: number[] | number
457
+ /** Extruder change — (\u2103) — To prevent oozing, the nozzle temperature will be cooled during ramming. Therefore, the ramming time must be greater than the cooldown time. 0 means disabled. */
458
+ filament_pre_cooling_temperature?: number[] | number
459
+ /** Hotend change — (\u2103) — To prevent oozing, the nozzle temperature will be cooled during ramming. Note: only a cooldown command and fan activation are triggered, reaching the target temperature is not guaranteed. 0 means disabled. */
460
+ filament_pre_cooling_temperature_nc?: number[] | number
461
+ /** Preheat temperature delta — (\u2103) — Temperature delta applied during pre-heating before tool change. */
462
+ filament_preheat_temperature_delta?: number[] | number
463
+ /** Filament preset name — Names of the filament presets used for slicing. The variable is a vector containing one name for each extruder. */
464
+ filament_preset?: string
465
+ /** Filament change — (mm³) — The volume of material required to prime the extruder on the tower, excluding a hotend change. */
466
+ filament_prime_volume?: number[] | number
467
+ /** Hotend change — (mm³) — The volume of material required to prime the extruder for a hotend change on the tower. */
468
+ filament_prime_volume_nc?: number[] | number
469
+ /** Filament printable — The filament is printable in extruder. */
470
+ filament_printable?: number[] | number
471
+ /** Ramming parameters — This string is edited by RammingDialog and contains ramming specific parameters. */
472
+ filament_ramming_parameters?: string[] | string
473
+ /** Extruder change — (s) — To prevent oozing, the nozzle will perform a reverse travel movement for a certain period after the ramming is complete. The setting define the travel time. */
474
+ filament_ramming_travel_time?: number[] | number
475
+ /** Hotend change — (s) — To prevent oozing, the nozzle will perform a reverse travel movement for a certain period after the ramming is complete. The setting define the travel time. */
476
+ filament_ramming_travel_time_nc?: number[] | number
477
+ /** Extruder change — (mm³/s) — The maximum volumetric speed for ramming before extruder change, where -1 means using the maximum volumetric speed. */
478
+ filament_ramming_volumetric_speed?: number[] | number
479
+ /** Hotend change — (mm³/s) — The maximum volumetric speed for ramming before a hotend change, where -1 means using the maximum volumetric speed. */
480
+ filament_ramming_volumetric_speed_nc?: number[] | number
481
+ /** length when change hotend — (mm) — When this retraction value is modified, it will be used as the amount of filament retracted inside the hotend before changing hotends. */
482
+ filament_retract_length_nc?: number[] | number
483
+ /** Filament self index — Filament self index. */
484
+ filament_self_index?: number[] | number
485
+ filament_settings_id?: string[] | string
486
+ /** Shrinkage (XY) — (%) — Enter the shrinkage percentage that the filament will get after cooling (94% if you measure 94mm instead of 100mm). The part will be scaled in XY to compensate. For multi-material prints, ensure filament shrinkage matches across all used filaments Be sure to allow enough space between objects, as this compensation is done after the checks. */
487
+ filament_shrink?: number[] | number
488
+ /** Shrinkage (Z) — (%) — Enter the shrinkage percentage that the filament will get after cooling (94% if you measure 94mm instead of 100mm). The part will be scaled in Z to compensate. */
489
+ filament_shrinkage_compensation_z?: number[] | number
490
+ /** Soluble material — Soluble material is commonly used to print supports and support interfaces. */
491
+ filament_soluble?: boolean[] | boolean
492
+ /** Stamping distance measured from the center of the cooling tube — If set to non-zero value, filament is moved toward the nozzle between the individual cooling moves ("stamping"). This option configures how long this movement should be before the filament is retracted again. */
493
+ filament_stamping_distance?: number[] | number
494
+ /** Stamping loading speed — Speed used for stamping. */
495
+ filament_stamping_loading_speed?: number[] | number
496
+ /** Start G-code — G-code added when the printer starts using this filament */
497
+ filament_start_gcode?: string[] | string
498
+ /** Delay after unloading — (s) — Time to wait after the filament is unloaded. May help to get reliable tool changes with flexible materials that may need more time to shrink to original dimensions. */
499
+ filament_toolchange_delay?: number[] | number
500
+ /** Interface layer pre-extrusion distance — (mm) — Pre-extrusion distance for prime tower interface layer (where different materials meet). */
501
+ filament_tower_interface_pre_extrusion_dist?: number[] | number
502
+ /** Interface layer pre-extrusion length — (mm) — Pre-extrusion length for prime tower interface layer (where different materials meet). */
503
+ filament_tower_interface_pre_extrusion_length?: number[] | number
504
+ /** Interface layer print temperature — (\u2103) — Print temperature for prime tower interface layer (where different materials meet). If set to -1, use max recommended nozzle temperature. */
505
+ filament_tower_interface_print_temp?: number[] | number
506
+ /** Interface layer purge length — (mm) — Purge length for prime tower interface layer (where different materials meet). */
507
+ filament_tower_interface_purge_volume?: number[] | number
508
+ /** Tower ironing area — (mm²) — Ironing area for prime tower interface layer (where different materials meet). */
509
+ filament_tower_ironing_area?: number[] | number
510
+ /** Type — Filament material type */
511
+ filament_type?: string[] | string
512
+ /** Unloading speed — (mm/s) — Speed used for unloading the filament on the wipe tower (does not affect initial part of unloading just after ramming). */
513
+ filament_unloading_speed?: number[] | number
514
+ /** Unloading speed at the start — (mm/s) — Speed used for unloading the tip of the filament immediately after ramming. */
515
+ filament_unloading_speed_start?: number[] | number
516
+ /** Vendor — Vendor of filament. For show only. */
517
+ filament_vendor?: string[] | string
518
+ filament_volume_map?: number[] | number
519
+ /** File header G-code — G-code written at the very top of the output file, before any other content. Useful for adding metadata that printer firmware reads from the first lines of the file (e.g. estimated print time, filament usage). Supports placeholders like {print_time_sec} and {used_filament_length}. */
520
+ file_start_gcode?: string
521
+ /** Filename format — Users can decide project file names when exporting. */
522
+ filename_format?: string
523
+ /** Fill Multiline — Using multiple lines for the infill pattern, if supported by infill pattern. */
524
+ fill_multiline?: number
525
+ /** Filter out tiny gaps — (mm) — Don't print gap fill with a length is smaller than the threshold specified (in mm). This setting applies to top, bottom and solid infill and, if using the classic perimeter generator, to wall gap fill. */
526
+ filter_out_gap_fill?: number
527
+ /** First layer flow ratio — This factor affects the amount of material on the first layer for the extrusion path roles listed in this section. For the first layer, the actual flow ratio for each path role (does not affect brims and skirts) will be multiplied by this value. */
528
+ first_layer_flow_ratio?: number
529
+ /** First layer convex hull — Vector of points of the first layer convex hull. Each element has the following format:'[x, y]' (x and y are floating-point numbers in mm). */
530
+ first_layer_print_convex_hull?: Point[]
531
+ /** Top-right corner of the first layer bounding box — point_tooltip */
532
+ first_layer_print_max?: number[] | number
533
+ /** Bottom-left corner of the first layer bounding box — point_tooltip */
534
+ first_layer_print_min?: number[] | number
535
+ /** First layer print sequence */
536
+ first_layer_print_sequence?: number[] | number
537
+ /** Size of the first layer bounding box — bb_size_tooltip */
538
+ first_layer_print_size?: number[] | number
539
+ /** First layer filament sequence */
540
+ first_layer_sequence_choice?: 'Auto' | 'Customize'
541
+ /** Fan speed — (%) — Special auxiliary cooling fan speed, effective only for the first x layers. */
542
+ first_x_layer_fan_speed?: number[] | number
543
+ /** Serial Number — Flashforge local API requires the printer serial number. */
544
+ flashforge_serial_number?: string
545
+ /** Flush into objects' infill — Purging after filament change will be done inside objects\' infills. This may lower the amount of waste and decrease the print time. If the walls are printed with transparent filament, the mixed color infill will be visible. It will not take effect unless the prime tower is enabled. */
546
+ flush_into_infill?: boolean
547
+ /** Flush into this object — This object will be used to purge the nozzle after a filament change to save filament and decrease the print time. Colors of the objects will be mixed as a result. It will not take effect unless the prime tower is enabled. */
548
+ flush_into_objects?: boolean
549
+ /** Flush into objects' support — Purging after filament change will be done inside objects\' support. This may lower the amount of waste and decrease the print time. It will not take effect unless a prime tower is enabled. */
550
+ flush_into_support?: boolean
551
+ /** Flush multiplier — The actual flushing volumes is equal to the flush multiplier value multiplied by the flushing volumes in the table. */
552
+ flush_multiplier?: number[] | number
553
+ /** Flush multiplier (Fast mode) — The flush multiplier used in fast purge mode. */
554
+ flush_multiplier_fast?: number[] | number
555
+ /** Purging volumes */
556
+ flush_volumes_matrix?: number[] | number
557
+ /** Purging volumes - load/unload volumes */
558
+ flush_volumes_vector?: number[] | number
559
+ /** Full fan speed at layer — (layer) — Fan speed will be ramped up linearly from zero at layer "close_fan_the_first_x_layers" to maximum at layer "full_fan_speed_layer". "full_fan_speed_layer" will be ignored if lower than "close_fan_the_first_x_layers", in which case the fan will be running at maximum allowed speed at layer "close_fan_the_first_x_layers" + 1. */
560
+ full_fan_speed_layer?: number[] | number
561
+ /** Fuzzy skin — This setting makes the toolhead randomly jitter while printing walls so that the surface has a rough textured look. This setting controls the fuzzy position. */
562
+ fuzzy_skin?: 'none' | 'external' | 'hole' | 'all' | 'allwalls' | 'disabled_fuzzy'
563
+ /** Apply fuzzy skin to first layer — Whether to apply fuzzy skin on the first layer. */
564
+ fuzzy_skin_first_layer?: boolean
565
+ /** Layers between ripple offset — Specifies how many consecutive layers share the same ripple phase before the offset is applied. For example: - 1 = Layer 1 is printed with the base ripple pattern, then layer 2 is shifted by the configured offset, then layer 3 returns to the base pattern, and so on. - 3 = Layers 1 to 3 are printed with the base ripple pattern, then layers 4 to 6 are shifted by the configured offset, then layers 7 to 9 return to the base pattern, etc. */
566
+ fuzzy_skin_layers_between_ripple_offset?: number
567
+ /** Fuzzy skin generator mode — Fuzzy skin generation mode. Works only with Arachne! Displacement: Сlassic mode when the pattern is formed by shifting the nozzle sideways from the original path. Extrusion: The mode when the pattern formed by the amount of extruded plastic. This is the fast and straight algorithm without unnecessary nozzle shake that gives a smooth pattern. But it is more useful for forming loose walls in the entire they array. Combined: Joint mode [Displacement] + [Extrusion]. The appearance of the walls is similar to [Displacement] Mode, but it leaves no pores between the perimeters. Attention! The [Extrusion] and [Combined] modes works only the fuzzy_skin_thickness parameter not more than the thickness of printed loop. At the same time, the width of the extrusion for a particular layer should also not be below a certain level. It is usually equal 15-25%% of a layer height. Therefore, the maximum fuzzy skin thickness with a perimeter width of 0.4 mm and a layer height of 0.2 mm will be 0.4-(0.2*0.25)=±0.35mm! If you enter a higher parameter than this, the error Flow::spacing() will displayed, and the model will not be sliced. You can choose this number until this error is repeated. */
568
+ fuzzy_skin_mode?: 'displacement' | 'extrusion' | 'combined'
569
+ /** Fuzzy skin noise type — Noise type to use for fuzzy skin generation: Classic: Classic uniform random noise. Perlin: Perlin noise, which gives a more consistent texture. Billow: Similar to perlin noise, but clumpier. Ridged Multifractal: Ridged noise with sharp, jagged features. Creates marble-like textures. Voronoi: Divides the surface into voronoi cells, and displaces each one by a random amount. Creates a patchwork texture. Ripple: Uniform ripple pattern that ripples left and right of the original path. Repeating pattern, woven appearance. */
570
+ fuzzy_skin_noise_type?: 'classic' | 'perlin' | 'billow' | 'ridgedmulti' | 'voronoi' | 'ripple'
571
+ /** Fuzzy Skin Noise Octaves — The number of octaves of coherent noise to use. Higher values increase the detail of the noise, but also increase computation time. */
572
+ fuzzy_skin_octaves?: number
573
+ /** Fuzzy skin noise persistence — The decay rate for higher octaves of the coherent noise. Lower values will result in smoother noise. */
574
+ fuzzy_skin_persistence?: number
575
+ /** Fuzzy skin point distance — (mm) — The average distance between the random points introduced on each line segment. */
576
+ fuzzy_skin_point_distance?: number
577
+ /** Ripple offset — (%) — Shifts the ripple phase forward along the print path by the specified percentage of a wavelength each layer period. - 0% keeps every layer identical. - 50% shifts the pattern by half a wavelength, effectively inverting the phase. - 100% shifts the pattern by a full wavelength, returning to the original phase. The shift is applied once every number of layers set by Layers between ripple offset, so layers within the same group are printed identically. */
578
+ fuzzy_skin_ripple_offset?: number
579
+ /** Number of ripples per layer — Controls how many full cycles of ripples will be added per layer. */
580
+ fuzzy_skin_ripples_per_layer?: number
581
+ /** Fuzzy skin feature size — (mm) — The base size of the coherent noise features, in mm. Higher values will result in larger features. */
582
+ fuzzy_skin_scale?: number
583
+ /** Fuzzy skin thickness — (mm) — The width of jittering: it\u2019s recommended to keep this lower than the outer wall line width. */
584
+ fuzzy_skin_thickness?: number
585
+ gamma_correction?: number
586
+ /** Gap fill flow ratio — This factor affects the amount of material for filling the gaps. The actual gap filling flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
587
+ gap_fill_flow_ratio?: number
588
+ /** Apply gap fill — Enables gap fill for the selected solid surfaces. The minimum gap length that will be filled can be controlled from the filter out tiny gaps option below. Options: 1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces for maximum strength 2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces only, balancing print speed, reducing potential over extrusion in the solid infill and making sure the top and bottom surfaces have no pinhole gaps 3. Nowhere: Disables gap fill for all solid infill areas Note that if using the classic perimeter generator, gap fill may also be generated between perimeters, if a full width line cannot fit between them. That perimeter gap fill is not controlled by this setting. If you would like all gap fill, including the classic perimeter generated one, removed, set the filter out tiny gaps value to a large number, like 999999. However this is not advised, as gap fill between perimeters is contributing to the model's strength. For models where excessive gap fill is generated between perimeters, a better option would be to switch to the arachne wall generator and use this option to control whether the cosmetic top and bottom surface gap fill is generated. */
589
+ gap_fill_target?: 'everywhere' | 'topbottom' | 'nowhere'
590
+ /** Gap infill — (mm/s) — This is the speed for gap infill. Gaps usually have irregular line width and should be printed more slowly. */
591
+ gap_infill_speed?: number[] | number
592
+ /** Add line number — Enable this to add line number(Nx) at the beginning of each G-code line. */
593
+ gcode_add_line_number?: boolean
594
+ /** Verbose G-code — Enable this to get a commented G-code file, with each line explained by a descriptive text. If you print from SD card, the additional weight of the file could make your firmware slow down. */
595
+ gcode_comments?: boolean
596
+ /** G-code flavor — What kind of G-code the printer is compatible with. */
597
+ gcode_flavor?: 'marlin' | 'klipper' | 'reprapfirmware' | 'repetier' | 'marlin2'
598
+ /** Label objects — Enable this to add comments into the G-code labeling print moves with what object they belong to, which is useful for the Octoprint CancelObject plug-in. This setting is NOT compatible with Single Extruder Multi Material setup and Wipe into Object / Wipe into Infill. */
599
+ gcode_label_objects?: boolean
600
+ /** Grab length — (mm) */
601
+ grab_length?: number[] | number
602
+ group_algo_with_time?: boolean
603
+ /** Z-buckling bias optimization (experimental) — Tightens the gyroid wave along the Z (vertical) axis at low infill density to shorten the effective vertical column length and improve Z-axis compression buckling resistance. Filament use is preserved. No effect at ~30% sparse infill density and above. Only applies when Sparse infill pattern is set to Gyroid. */
604
+ gyroid_optimized?: boolean
605
+ handle_hotend_as_extruder?: boolean
606
+ /** Has filament switcher — Printer has a filament switcher hardware (e.g., AMS). */
607
+ has_filament_switcher?: boolean
608
+ /** (mm/s) — Maximum jerk of the %1% axis */
609
+ has_scarf_joint_seam?: boolean
610
+ /** Has single extruder MM priming — Are the extra multi-material priming regions used in this print? */
611
+ has_single_extruder_multi_material_priming?: boolean
612
+ /** Has wipe tower — Whether or not wipe tower is being generated in the print. */
613
+ has_wipe_tower?: boolean
614
+ /** Head wrap detect zone */
615
+ head_wrap_detect_zone?: Point[]
616
+ /** Help — This shows command help. */
617
+ help?: boolean
618
+ /** High extruder current on filament swap — It may be beneficial to increase the extruder motor current during the filament exchange sequence to allow for rapid ramming feed rates and to overcome resistance when loading a filament with an ugly shaped tip. */
619
+ high_current_on_filament_swap?: boolean
620
+ /** Convert holes to polyholes — Search for almost-circular holes that span more than one layer and convert the geometry to polyholes. Use the nozzle size and the (biggest) diameter to compute the polyhole. See http://hydraraptor.blogspot.com/2011/02/polyholes.html */
621
+ hole_to_polyhole?: boolean
622
+ /** Maximum Polyhole edge count — Maximum number of polyhole edges This setting limits the amount of edges a polyhole can have */
623
+ hole_to_polyhole_max_edges?: number
624
+ /** Polyhole detection margin — (mm or %) — Maximum defection of a point to the estimated radius of the circle. As cylinders are often exported as triangles of varying size, points may not be on the circle circumference. This setting allows you some leeway to broaden the detection. In mm or in % of the radius. */
625
+ hole_to_polyhole_threshold?: number | string
626
+ /** Polyhole twist — Rotate the polyhole every layer. */
627
+ hole_to_polyhole_twisted?: boolean
628
+ /** (mm) */
629
+ hollowing_closing_distance?: number
630
+ hollowing_enable?: boolean
631
+ hollowing_min_thickness?: number
632
+ hollowing_quality?: number
633
+ /** Host Type — Orca Slicer can upload G-code files to a printer host. This field must contain the kind of the host. */
634
+ host_type?: 'prusalink' | 'prusaconnect' | 'octoprint' | 'duet' | 'flashair' | 'astrobox' | 'repetier' | 'mks' | 'esp3d' | 'crealityprint' | 'obico' | 'flashforge' | 'simplyprint' | 'elegoolink' | '3dprinteros' | 'moonraker'
635
+ /** Other layers — (\u2103) — This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the High Temp Plate. */
636
+ hot_plate_temp?: number[] | number
637
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the High Temp Plate. */
638
+ hot_plate_temp_initial_layer?: number[] | number
639
+ hotend_cooling_rate?: number[] | number
640
+ hotend_heating_rate?: number[] | number
641
+ /** Hour */
642
+ hour?: number
643
+ /** Idle temperature — (\u2103) — Nozzle temperature when the tool is currently not used in multi-tool setups. This is only used when 'Ooze prevention' is active in Print Settings. Set to 0 to disable. */
644
+ idle_temperature?: number[] | number
645
+ /** Independent support layer height — Support layer uses layer height independent with object layer. This is to support customizing Z-gap and save print time. This option will be invalid when the prime tower is enabled. */
646
+ independent_support_layer_height?: boolean
647
+ /** Sparse infill anchor length — (mm or %) — Connect an infill line to an internal perimeter with a short segment of an additional perimeter. If expressed as percentage (example: 15%) it is calculated over infill extrusion width. Orca Slicer tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment shorter than infill_anchor_max is found, the infill line is connected to a perimeter segment at just one side and the length of the perimeter segment taken is limited to this parameter, but no longer than anchor_length_max. Set this parameter to zero to disable anchoring perimeters connected to a single infill line. */
648
+ infill_anchor?: number | string
649
+ /** Maximum length of the infill anchor — (def_infill_anchor_min->sidetext) — Connect an infill line to an internal perimeter with a short segment of an additional perimeter. If expressed as percentage (example: 15%) it is calculated over infill extrusion width. Orca Slicer tries to connect two close infill lines to a short perimeter segment. If no such perimeter segment shorter than this parameter is found, the infill line is connected to a perimeter segment at just one side and the length of the perimeter segment taken is limited to infill_anchor, but no longer than this parameter. If set to 0, the old algorithm for infill connection will be used, it should create the same result as with 1000 & 0. */
650
+ infill_anchor_max?: number | string
651
+ /** Infill combination — Automatically combine sparse infill of several layers to print together in order to reduce time. Walls are still printed with original layer height. */
652
+ infill_combination?: boolean
653
+ /** Infill combination - Max layer height — (mm or %) — Maximum layer height for the combined sparse infill. Set it to 0 or 100% to use the nozzle diameter (for maximum reduction in print time) or a value of ~80% to maximize sparse infill strength. The number of layers over which infill is combined is derived by dividing this value with the layer height and rounded down to the nearest decimal. Use either absolute mm values (eg. 0.32mm for a 0.4mm nozzle) or % values (eg 80%). This value must not be larger than the nozzle diameter. */
654
+ infill_combination_max_layer_height?: number | string
655
+ /** Sparse infill direction — (°) — This is the angle for sparse infill pattern, which controls the start or main direction of lines. */
656
+ infill_direction?: number
657
+ /** Infill — (mm/s) — Jerk for infill. */
658
+ infill_jerk?: number[] | number
659
+ /** Infill lock depth — (mm) — The parameter sets the overlapping depth between the interior and skin. */
660
+ infill_lock_depth?: number
661
+ /** Infill overhang angle — (°) — The angle of the infill angled lines. 60° will result in a pure honeycomb. */
662
+ infill_overhang_angle?: number
663
+ /** Infill shift step — (mm) — This parameter adds a slight displacement to each layer of infill to create a cross texture. */
664
+ infill_shift_step?: number
665
+ /** Infill/wall overlap — (%) — This allows the infill area to be enlarged slightly to overlap with walls for better bonding. The percentage value is relative to line width of sparse infill. Set this value to ~10-15% to minimize potential over extrusion and accumulation of material resulting in rough top surfaces. */
666
+ infill_wall_overlap?: number
667
+ /** Output Model Info — This outputs the model\u2019s information. */
668
+ info?: boolean
669
+ /** Inherits profile — Name of parent profile. */
670
+ inherits?: string
671
+ inherits_group?: string[] | string
672
+ initial_exposure_time?: number
673
+ /** Initial extruder — Zero-based index of the first extruder used in the print. Same as initial_tool. */
674
+ initial_extruder?: number
675
+ /** First layer — (mm/s²) — This is the printing acceleration for the first layer. Using limited acceleration can improve build plate adhesion. */
676
+ initial_layer_acceleration?: number[] | number
677
+ /** First layer fan speed — (%) — Sets an exact fan speed for the first layer, overriding all other cooling settings. Useful for protecting 3D-printed toolhead parts (e.g. Voron-style ABS/ASA ducts) from a hot bed. A small amount of airflow cools the ducts down, without using full cooling that may in certain conditions hurt first-layer adhesion. From the second layer onwards, normal cooling resumes. If "Full fan speed at layer" is also set, the fan ramps smoothly from this value on the first layer up to your target by the chosen layer. Only available when "No cooling for the first" is 0. Set to -1 to disable it. */
678
+ initial_layer_fan_speed?: number[] | number
679
+ initial_layer_height?: number
680
+ /** First layer infill — (mm/s) — This is the speed for solid infill parts of the first layer. */
681
+ initial_layer_infill_speed?: number[] | number
682
+ /** First layer — (mm/s) — Jerk for the first layer. */
683
+ initial_layer_jerk?: number[] | number
684
+ /** First layer — (mm or %) — Line width of the first layer. If expressed as a %, it will be computed over the nozzle diameter. */
685
+ initial_layer_line_width?: number | string
686
+ /** First layer minimum wall width — (%) — The minimum wall width that should be used for the first layer is recommended to be set to the same size as the nozzle. This adjustment is expected to enhance adhesion. */
687
+ initial_layer_min_bead_width?: number
688
+ /** First layer height — (mm) — Height of the first layer. Making the first layer height thicker can improve build plate adhesion. */
689
+ initial_layer_print_height?: number
690
+ /** First layer — (mm/s) — This is the speed for the first layer except for solid infill sections. */
691
+ initial_layer_speed?: number[] | number
692
+ /** First layer travel — (mm/s² or %) — Travel acceleration of first layer. The percentage value is relative to Travel Acceleration. */
693
+ initial_layer_travel_acceleration?: (number | string)[] | (number | string)
694
+ /** First layer travel — (mm/s or %) — Travel jerk of first layer. The percentage value is relative to Travel Jerk. */
695
+ initial_layer_travel_jerk?: (number | string)[] | (number | string)
696
+ /** First layer travel speed — (mm/s or %) — Travel speed of the first layer. */
697
+ initial_layer_travel_speed?: (number | string)[] | (number | string)
698
+ /** Initial tool — Zero-based index of the first extruder used in the print. Same as initial_extruder. */
699
+ initial_tool?: number
700
+ /** Inner wall — (mm/s²) — Acceleration of inner walls. */
701
+ inner_wall_acceleration?: number[] | number
702
+ /** Inner walls — Filament to print inner walls. "Default" uses the active object/part filament. */
703
+ inner_wall_filament_id?: number
704
+ /** Inner wall flow ratio — This factor affects the amount of material for inner walls. The actual inner wall flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
705
+ inner_wall_flow_ratio?: number
706
+ /** Inner wall — (mm/s) — Jerk of inner walls. */
707
+ inner_wall_jerk?: number[] | number
708
+ /** Inner wall — (mm or %) — Line width of inner wall. If expressed as a %, it will be computed over the nozzle diameter. */
709
+ inner_wall_line_width?: number | string
710
+ /** Inner wall — (mm/s) — This is the speed for inner walls. */
711
+ inner_wall_speed?: number[] | number
712
+ /** Input filename without extension — Source filename of the first object, without extension. */
713
+ input_filename_base?: string
714
+ /** X — Damping ratio for the X axis input shaper. Zero will use the firmware damping ratio. To disable input shaping, use the Disable type. RRF: X and Y values are equal. */
715
+ input_shaping_damp_x?: number
716
+ /** Y — Damping ratio for the Y axis input shaper. Zero will use the firmware damping ratio. To disable input shaping, use the Disable type. */
717
+ input_shaping_damp_y?: number
718
+ /** Emit input shaping — Override firmware input shaping settings. If disabled, firmware settings are used. */
719
+ input_shaping_emit?: boolean
720
+ /** X — (Hz) — Resonant frequency for the X axis input shaper. Zero will use the firmware frequency. To disable input shaping, use the Disable type. RRF: X and Y values are equal. */
721
+ input_shaping_freq_x?: number
722
+ /** Y — (Hz) — Resonant frequency for the Y axis input shaper. Zero will use the firmware frequency. To disable input shaping, use the Disable type. */
723
+ input_shaping_freq_y?: number
724
+ /** Input shaper type — Choose the input shaper algorithm. Default uses the firmware default settings. Disable turns off input shaping in the firmware. */
725
+ input_shaping_type?: 'Default' | 'MZV' | 'ZV' | 'ZVD' | 'ZVDD' | 'ZVDDD' | 'EI' | 'EI2' | '2HUMP_EI' | 'EI3' | '3HUMP_EI' | 'DAA' | 'Disable'
726
+ /** Interface shells — Force the generation of solid shells between adjacent materials/volumes. Useful for multi-extruder prints with translucent materials or manual soluble support material. */
727
+ interface_shells?: boolean
728
+ /** Use beam interlocking — Generate interlocking beam structure at the locations where different filaments touch. This improves the adhesion between filaments, especially models printed in different materials. */
729
+ interlocking_beam?: boolean
730
+ /** Interlocking beam layers — The height of the beams of the interlocking structure, measured in number of layers. Less layers is stronger, but more prone to defects. */
731
+ interlocking_beam_layer_count?: number
732
+ /** Interlocking beam width — (mm) — The width of the interlocking structure beams. */
733
+ interlocking_beam_width?: number
734
+ /** Interlocking boundary avoidance — The distance from the outside of a model where interlocking structures will not be generated, measured in cells. */
735
+ interlocking_boundary_avoidance?: number
736
+ /** Interlocking depth — The distance from the boundary between filaments to generate interlocking structure, measured in cells. Too few cells will result in poor adhesion. */
737
+ interlocking_depth?: number
738
+ /** Interlocking direction — (°) — Orientation of interlock beams. */
739
+ interlocking_orientation?: number
740
+ /** Internal bridge infill direction — (°) — Internal Bridging angle override. If left to zero, the bridging angle will be calculated automatically for each specific bridge. Otherwise the provided angle will be used according to: - The absolute coordinates - The absolute coordinates + Model rotation: If Align directions to model is enabled - The optimal automatic angle + this value: If 'Relative Bridge Angle' is enabled Use 180° for zero absolute angle. */
741
+ internal_bridge_angle?: number
742
+ /** Internal bridge density — (%) — Controls the density (spacing) of internal bridge lines. Internal bridges act as intermediate support between sparse infill and top solid infill and can strongly affect top surface quality. - Higher than 100% density (Recommended Max 125%): - Pros: Improves internal bridge strength and support under top layers, reducing sagging and improving top-surface finish. - Cons: Increases material use and print time; excessive density may cause overextrusion and internal stresses. - Lower than 100% density (Min 10%): - Pros: Can reduce pillowing and improve cooling (more airflow through the bridge), and may speed up printing. - Cons: May reduce internal support, increasing the risk of sagging and top surface defects. This option works particularly well when combined with the second internal bridge over infill option to improve bridging further before solid infill is extruded. */
743
+ internal_bridge_density?: number
744
+ /** Internal bridges fan speed — (%) — The part cooling fan speed used for all internal bridges. Set to -1 to use the overhang fan speed settings instead. Reducing the internal bridges fan speed, compared to your regular fan speed, can help reduce part warping due to excessive cooling applied over a large surface for a prolonged period of time. */
745
+ internal_bridge_fan_speed?: number[] | number
746
+ /** Internal bridge flow ratio — This value governs the thickness of the internal bridge layer. This is the first layer over sparse infill so increasing it may increase strength and upper layer quality. Values above 1.0: Increase the amount of material while maintaining line spacing. This can improve line contact and strength. Values below 1.0: Reduce the amount of material while adjusting line spacing to maintain contact. This can improve sagging. The actual bridge flow used is calculated by multiplying this value with the filament flow ratio, and if set, the object's flow ratio. */
747
+ internal_bridge_flow?: number
748
+ /** Internal — (mm/s or %) — Speed of internal bridges. If the value is expressed as a percentage, it will be calculated based on the bridge_speed. Default value is 150%. */
749
+ internal_bridge_speed?: (number | string)[] | (number | string)
750
+ /** Internal solid infill — Filament to print internal solid infill. "Default" uses the active object/part filament. */
751
+ internal_solid_filament_id?: number
752
+ /** Internal solid infill — (mm/s² or %) — Acceleration of internal solid infill. If the value is expressed as a percentage (e.g. 100%), it will be calculated based on the default acceleration. */
753
+ internal_solid_infill_acceleration?: (number | string)[] | (number | string)
754
+ /** Internal solid infill flow ratio — This factor affects the amount of material for internal solid infill. The actual internal solid infill flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
755
+ internal_solid_infill_flow_ratio?: number
756
+ /** Internal solid infill — (mm or %) — Line width of internal solid infill. If expressed as a %, it will be computed over the nozzle diameter. */
757
+ internal_solid_infill_line_width?: number | string
758
+ /** Internal solid infill pattern — Line pattern of internal solid infill. if the detect narrow internal solid infill be enabled, the concentric pattern will be used for the small area. */
759
+ internal_solid_infill_pattern?: 'monotonic' | 'monotonicline' | 'rectilinear' | 'alignedrectilinear' | 'concentric' | 'hilbertcurve' | 'archimedeanchords' | 'octagramspiral'
760
+ /** Internal solid infill — (mm/s) — This is the speed for internal solid infill, not including the top or bottom surface. */
761
+ internal_solid_infill_speed?: number[] | number
762
+ /** Ironing angle offset — (°) — The angle of ironing lines offset from the top surface. */
763
+ ironing_angle?: number
764
+ /** Fixed ironing angle — Use a fixed absolute angle for ironing. */
765
+ ironing_angle_fixed?: boolean
766
+ /** Ironing expansion — (mm) — Expand or contract the ironing area. */
767
+ ironing_expansion?: number
768
+ /** Ironing fan speed — (%) — This part cooling fan speed is applied when ironing. Setting this parameter to a lower than regular speed reduces possible nozzle clogging due to the low volumetric flow rate, making the interface smoother. Set to -1 to disable it. */
769
+ ironing_fan_speed?: number[] | number
770
+ /** Ironing flow — (%) — This is the amount of material to be extruded during ironing. It is relative to the flow of normal layer height. Too high a value will result in overextrusion on the surface. */
771
+ ironing_flow?: number
772
+ /** Ironing inset — (mm) — The distance to keep from the edges. A value of 0 sets this to half of the nozzle diameter. */
773
+ ironing_inset?: number
774
+ /** Ironing Pattern — The pattern that will be used when ironing. */
775
+ ironing_pattern?: 'rectilinear' | 'concentric'
776
+ /** Ironing line spacing — (mm) — This is the distance between the lines used for ironing. */
777
+ ironing_spacing?: number
778
+ /** Ironing speed — (mm/s) — This is the print speed for ironing lines. */
779
+ ironing_speed?: number
780
+ /** Ironing type — Ironing uses a small flow to print at the same height of a surface to make flat surfaces smoother. This setting controls which layers are being ironed. */
781
+ ironing_type?: 'no ironing' | 'top' | 'topmost' | 'solid'
782
+ /** Is extruder used? — Vector of booleans stating whether a given extruder is used in the print. */
783
+ is_extruder_used?: boolean[] | boolean
784
+ /** Print infill first — Order of wall/infill. When the tickbox is unchecked the walls are printed first, which works best in most cases. Printing infill first may help with extreme overhangs as the walls have the neighbouring infill to adhere to. However, the infill will slightly push out the printed walls where it is attached to them, resulting in a worse external surface finish. It can also cause the infill to shine through the external surfaces of the part. */
785
+ is_infill_first?: boolean
786
+ /** Lateral lattice angle 1 — (°) — The angle of the first set of Lateral lattice elements in the Z direction. Zero is vertical. */
787
+ lateral_lattice_angle_1?: number
788
+ /** Lateral lattice angle 2 — (°) — The angle of the second set of Lateral lattice elements in the Z direction. Zero is vertical. */
789
+ lateral_lattice_angle_2?: number
790
+ /** Layer change G-code — This G-code is inserted at every layer change after the Z lift. */
791
+ layer_change_gcode?: string
792
+ /** Layer height — (mm) — This is the height for each layer. Smaller layer heights give greater accuracy but longer printing time. */
793
+ layer_height?: number
794
+ /** Layer number — Index of the current layer. One-based (i.e. first layer is number 1). */
795
+ layer_num?: number
796
+ /** Layer Z — Height of the current layer above the print bed, measured to the top of the layer. */
797
+ layer_z?: number
798
+ /** Lightning overhang angle — (°) — Maximum overhang angle for Lightning infill support propagation. */
799
+ lightning_overhang_angle?: number
800
+ /** Prune angle — (°) — Controls how aggressively short or unsupported Lightning branches are pruned. This angle is converted internally to a per-layer distance. */
801
+ lightning_prune_angle?: number
802
+ /** Straightening angle — (°) — Maximum straightening angle used to simplify Lightning branches. */
803
+ lightning_straightening_angle?: number
804
+ /** Default — (mm or %) — Default line width if other line widths are set to 0. If expressed as a %, it will be computed over the nozzle diameter. */
805
+ line_width?: number | string
806
+ /** Load assemble list — Load assemble object list from config file. */
807
+ load_assemble_list?: string
808
+ /** Load custom G-code — Load custom G-code from json. */
809
+ load_custom_gcodes?: string
810
+ /** Load default filaments — Load first filament as default for those not loaded. */
811
+ load_defaultfila?: boolean
812
+ /** Load filament IDs — Load filament IDs for each object. */
813
+ load_filament_ids?: number[] | number
814
+ /** Load Filament Settings — Load filament settings from the specified file list. */
815
+ load_filaments?: string[] | string
816
+ /** Load General Settings — Load process/machine settings from the specified file. */
817
+ load_settings?: string[] | string
818
+ /** Load slicing data — Load cached slicing data from directory. */
819
+ load_slicedata?: string[] | string
820
+ /** Log file — Redirects debug logging to file. */
821
+ logfile?: number
822
+ /** Long retraction when cut (beta) — Experimental feature: Retracting and cutting off the filament at a longer distance during changes to minimize purge. While this reduces flush significantly, it may also raise the risk of nozzle clogs or other printing problems. */
823
+ long_retractions_when_cut?: boolean[] | boolean
824
+ /** Long retraction when extruder change */
825
+ long_retractions_when_ec?: boolean[] | boolean
826
+ /** (g) — The machine bed mass load of Y axis */
827
+ machine_bed_mass_Y?: number
828
+ /** End G-code — Add end G-Code when finishing the entire print. */
829
+ machine_end_gcode?: string
830
+ /** Hotend change time — (s) — Time to change hotend. */
831
+ machine_hotend_change_time?: number
832
+ /** Filament load time — (s) — Time to load new filament when switch filament. It's usually applicable for single-extruder multi-material machines. For tool changers or multi-tool machines, it's typically 0. For statistics only. */
833
+ machine_load_filament_time?: number
834
+ machine_max_acceleration_e?: number[] | number
835
+ /** (mm/s²) — Maximum acceleration for extruding (M204 P) */
836
+ machine_max_acceleration_extruding?: number[] | number
837
+ /** (mm/s²) — Maximum acceleration for retracting (M204 R) */
838
+ machine_max_acceleration_retracting?: number[] | number
839
+ /** (mm/s²) — Maximum acceleration for travel (M204 T), it only applies to Marlin 2. */
840
+ machine_max_acceleration_travel?: number[] | number
841
+ machine_max_acceleration_x?: number[] | number
842
+ machine_max_acceleration_y?: number[] | number
843
+ machine_max_acceleration_z?: number[] | number
844
+ /** (N) — The allowed maximum output force of Y axis */
845
+ machine_max_force_Y?: number
846
+ machine_max_jerk_e?: number[] | number
847
+ machine_max_jerk_x?: number[] | number
848
+ machine_max_jerk_y?: number[] | number
849
+ machine_max_jerk_z?: number[] | number
850
+ /** (mm) — Maximum junction deviation (M205 J, only apply if JD > 0 for Marlin Firmware If your Marlin 2 printer uses Classic Jerk set this value to 0.) */
851
+ machine_max_junction_deviation?: number[] | number
852
+ /** (g) — The allowed max printed mass on a plate */
853
+ machine_max_printed_mass?: number
854
+ machine_max_speed_e?: number[] | number
855
+ machine_max_speed_x?: number[] | number
856
+ machine_max_speed_y?: number[] | number
857
+ machine_max_speed_z?: number[] | number
858
+ /** (mm/s) — Minimum speed for extruding (M205 S) */
859
+ machine_min_extruding_rate?: number[] | number
860
+ /** (mm/s) — Minimum travel speed (M205 T) */
861
+ machine_min_travel_rate?: number[] | number
862
+ /** Pause G-code — This G-code will be used as a code for the pause print. Users can insert pause G-code in the G-code viewer. */
863
+ machine_pause_gcode?: string
864
+ machine_prepare_compensation_time?: number
865
+ /** Start G-code — G-code added when starting a print. */
866
+ machine_start_gcode?: string
867
+ /** Tool change time — (s) — Time taken to switch tools. It's usually applicable for tool changers or multi-tool machines. For single-extruder multi-material machines, it's typically 0. For statistics only. */
868
+ machine_tool_change_time?: number
869
+ /** Filament unload time — (s) — Time to unload old filament when switch filament. It's usually applicable for single-extruder multi-material machines. For tool changers or multi-tool machines, it's typically 0. For statistics only. */
870
+ machine_unload_filament_time?: number
871
+ /** Make overhangs printable — Modify the geometry to print overhangs without support material. */
872
+ make_overhang_printable?: boolean
873
+ /** Make overhangs printable - Maximum angle — (°) — Maximum angle of overhangs to allow after making more steep overhangs printable.90° will not change the model at all and allow any overhang, while 0 will replace all overhangs with conical material. */
874
+ make_overhang_printable_angle?: number
875
+ /** Make overhangs printable - Hole area — (mm²) — Maximum area of a hole in the base of the model before it's filled by conical material. A value of 0 will fill all the holes in the model base. */
876
+ make_overhang_printable_hole_size?: number
877
+ /** MakerLab name — MakerLab name to generate this 3MF. */
878
+ makerlab_name?: string
879
+ /** MakerLab version — MakerLab version to generate this 3MF. */
880
+ makerlab_version?: string
881
+ /** Manual Filament Change — Enable this option to omit the custom Change filament G-code only at the beginning of the print. The tool change command (e.g., T0) will be skipped throughout the entire print. This is useful for manual multi-material printing, where we use M600/PAUSE to trigger the manual filament change action. */
882
+ manual_filament_change?: boolean
883
+ /** Master extruder id — Default extruder id to place filament. */
884
+ master_extruder_id?: number
885
+ material_colour?: string
886
+ material_correction?: number[] | number
887
+ material_correction_x?: number
888
+ material_correction_y?: number
889
+ material_correction_z?: number
890
+ material_density?: number
891
+ material_print_speed?: 'slow' | 'fast'
892
+ material_type?: string
893
+ material_vendor?: string
894
+ /** Max bridge length — (mm) — This is the maximum length of bridges that don\'t need support. Set it to 0 if you want all bridges to be supported, and set it to a very large value if you don\'t want any bridges to be supported. */
895
+ max_bridge_length?: number
896
+ max_exposure_time?: number
897
+ max_initial_exposure_time?: number
898
+ /** Max — (mm) — The highest printable layer height for the extruder. Used to limit the maximum layer height when enable adaptive layer height. */
899
+ max_layer_height?: number[] | number
900
+ /** Maximal layer Z — Height of the last layer above the print bed. */
901
+ max_layer_z?: number
902
+ /** Max — (mm/s) — Maximum speed of resonance avoidance. */
903
+ max_resonance_avoidance_speed?: number
904
+ /** Avoid crossing walls - Max detour length — (mm or %) — Maximum detour distance for avoiding crossing wall: The printer won\'t detour if the detour distance is larger than this value. Detour length could be specified either as an absolute value or as percentage (for example 50%) of a direct travel path. A value of 0 will disable this. */
905
+ max_travel_detour_distance?: number | string
906
+ /** Extrusion rate smoothing — (mm³/s²) — This parameter smooths out sudden extrusion rate changes that happen when the printer transitions from printing a high flow (high speed/larger width) extrusion to a lower flow (lower speed/smaller width) extrusion and vice versa. It defines the maximum rate by which the extruded volumetric flow in mm³/s can change over time. Higher values mean higher extrusion rate changes are allowed, resulting in faster speed transitions. A value of 0 disables the feature. For a high speed, high flow direct drive printer (like the Bambu lab or Voron) this value is usually not needed. However it can provide some marginal benefit in certain cases where feature speeds vary greatly. For example, when there are aggressive slowdowns due to overhangs. In these cases a high value of around 300-350 mm³/s² is recommended as this allows for just enough smoothing to assist pressure advance achieve a smoother flow transition. For slower printers without pressure advance, the value should be set much lower. A value of 10-15 mm³/s² is a good starting point for direct drive extruders and 5-10 mm³/s² for Bowden style. This feature is known as Pressure Equalizer in Prusa slicer. Note: this parameter disables arc fitting. */
907
+ max_volumetric_extrusion_rate_slope?: number
908
+ /** Smoothing segment length — (mm) — A lower value results in smoother extrusion rate transitions. However, this results in a significantly larger G-code file and more instructions for the printer to process. Default value of 3 works well for most cases. If your printer is stuttering, increase this value to reduce the number of adjustments made. Allowed values: 0.5-5 */
909
+ max_volumetric_extrusion_rate_slope_segment_length?: number
910
+ /** Metadata name list — Metadata name list added into 3MF. */
911
+ metadata_name?: string[] | string
912
+ /** Metadata value list — Metadata value list added into 3MF. */
913
+ metadata_value?: string[] | string
914
+ /** Minimum wall width — (%) — Width of the wall that will replace thin features (according to the Minimum feature size) of the model. If the Minimum wall width is thinner than the thickness of the feature, the wall will become as thick as the feature itself. It's expressed as a percentage over nozzle diameter. */
915
+ min_bead_width?: number
916
+ min_exposure_time?: number
917
+ /** Minimum feature size — (%) — Minimum thickness of thin features. Model features that are thinner than this value will not be printed, while features thicker than than this value will be widened to the minimum wall width. It's expressed as a percentage over nozzle diameter. */
918
+ min_feature_size?: number
919
+ min_initial_exposure_time?: number
920
+ /** Min — (mm) — The lowest printable layer height for the extruder. Used to limit the minimum layer height when enable adaptive layer height. */
921
+ min_layer_height?: number[] | number
922
+ /** Minimum wall length — (mm) — Adjust this value to prevent short, unclosed walls from being printed, which could increase print time. Higher values remove more and longer walls. NOTE: Bottom and top surfaces will not be affected by this value to prevent visual gaps on the outside of the model. Adjust 'One wall threshold' in the Advanced settings below to adjust the sensitivity of what is considered a top-surface. 'One wall threshold' is only visible if this setting is set above the default value of 0.5, or if single-wall top surfaces is enabled. */
923
+ min_length_factor?: number
924
+ /** Min — (mm/s) — Minimum speed of resonance avoidance. */
925
+ min_resonance_avoidance_speed?: number
926
+ /** Minimum save — Export 3MF with minimum size. */
927
+ min_save?: boolean
928
+ /** Skirt minimum extrusion length — (mm) — Minimum filament extrusion length in mm when printing the skirt. Zero means this feature is disabled. Using a non-zero value is useful if the printer is set up to print without a prime line. Final number of loops is not taking into account while arranging or validating objects distance. Increase loop number in such case. */
929
+ min_skirt_length?: number
930
+ /** One wall threshold — (mm or %) — If a top surface has to be printed and it's partially covered by another layer, it won't be considered at a top layer where its width is below this value. This can be useful to not let the 'one perimeter on top' trigger on surface that should be covered only by perimeters. This value can be a mm or a % of the perimeter extrusion width. Warning: If enabled, artifacts can be created if you have some thin features on the next layer, like letters. Set this setting to 0 to remove these artifacts. */
931
+ min_width_top_surface?: number | string
932
+ /** Minimum sparse infill threshold — (mm²) — Sparse infill areas which are smaller than this threshold value are replaced by internal solid infill. */
933
+ minimum_sparse_infill_area?: number
934
+ /** Minute */
935
+ minute?: number
936
+ /** Interlocking depth of a segmented region — (mm) — Interlocking depth of a segmented region. It will be ignored if "mmu_segmented_region_max_width" is zero or if "mmu_segmented_region_interlocking_depth" is bigger than "mmu_segmented_region_max_width". Zero disables this feature. */
937
+ mmu_segmented_region_interlocking_depth?: number
938
+ /** Maximum width of a segmented region — (mm) — Maximum width of a segmented region. A value of 0 disables this feature. */
939
+ mmu_segmented_region_max_width?: number
940
+ /** Month */
941
+ month?: number
942
+ /** mstpp — max slicing time per plate in seconds */
943
+ mstpp?: number
944
+ /** mtcpp — max triangle count per plate for slicing */
945
+ mtcpp?: number
946
+ /** No check — Do not run any validity checks, such as G-code path conflicts check. */
947
+ no_check?: boolean
948
+ /** Print time (normal mode) — Estimated print time when printed in normal mode (i.e. not in silent mode). Same as print_time. */
949
+ normal_print_time?: string
950
+ /** Normative check — Check the normative items. */
951
+ normative_check?: boolean
952
+ /** Configuration notes — You can put here your personal notes. This text will be added to the G-code header comments. */
953
+ notes?: string
954
+ /** Nozzle diameter — (mm) — The diameter of nozzle. */
955
+ nozzle_diameter?: number[] | number
956
+ nozzle_flush_dataset?: number[] | number
957
+ /** Nozzle height — (mm) — The height of nozzle tip. */
958
+ nozzle_height?: number
959
+ /** Nozzle HRC — (HRC) — The nozzle\'s hardness. Zero means no checking for nozzle hardness during slicing. */
960
+ nozzle_hrc?: number
961
+ /** Other layers — (\u2103) — Nozzle temperature after the first layer */
962
+ nozzle_temperature?: number[] | number
963
+ /** First layer — (\u2103) — Nozzle temperature for printing the first layer with this filament */
964
+ nozzle_temperature_initial_layer?: number[] | number
965
+ /** Max — (\u2103) */
966
+ nozzle_temperature_range_high?: number[] | number
967
+ /** Min — (\u2103) */
968
+ nozzle_temperature_range_low?: number[] | number
969
+ /** Nozzle type — The metallic material of the nozzle: This determines the abrasive resistance of the nozzle and what kind of filament can be printed. */
970
+ nozzle_type?: ('undefine' | 'hardened_steel' | 'stainless_steel' | 'tungsten_carbide' | 'brass')[] | ('undefine' | 'hardened_steel' | 'stainless_steel' | 'tungsten_carbide' | 'brass')
971
+ /** Nozzle volume — (mm³) — Volume of nozzle between the filament cutter and the end of the nozzle */
972
+ nozzle_volume?: number[] | number
973
+ /** Nozzle Volume Type — Nozzle volume type for extruders. */
974
+ nozzle_volume_type?: ('Standard' | 'High Flow' | 'Hybrid' | 'TPU High Flow')[] | ('Standard' | 'High Flow' | 'Hybrid' | 'TPU High Flow')
975
+ /** Number of extruders — Total number of extruders, regardless of whether they are used in the current print. */
976
+ num_extruders?: number
977
+ /** Number of instances — Total number of object instances in the print, summed over all objects. */
978
+ num_instances?: number
979
+ /** Number of objects — Total number of objects in the print. */
980
+ num_objects?: number
981
+ /** Only one wall on first layer — Use only one wall on first layer, to give more space to the bottom infill pattern. */
982
+ only_one_wall_first_layer?: boolean
983
+ /** Only one wall on top surfaces — Use only one wall on flat top surfaces, to give more space to the top infill pattern. */
984
+ only_one_wall_top?: boolean
985
+ /** Enable — This option will drop the temperature of the inactive extruders to prevent oozing. */
986
+ ooze_prevention?: boolean
987
+ /** Orient Options — Orient options: 0-disable, 1-enable, others-auto */
988
+ orient?: number
989
+ /** Other layers print sequence */
990
+ other_layers_print_sequence?: number[] | number
991
+ /** The number of other layers print sequence */
992
+ other_layers_print_sequence_nums?: number
993
+ /** Other layers filament sequence */
994
+ other_layers_sequence_choice?: 'Auto' | 'Customize'
995
+ /** Outer wall — (mm/s²) — Acceleration of outer wall: using a lower value can improve quality. */
996
+ outer_wall_acceleration?: number[] | number
997
+ /** Outer walls — Filament to print outer walls. "Default" uses the active object/part filament. */
998
+ outer_wall_filament_id?: number
999
+ /** Outer wall flow ratio — This factor affects the amount of material for outer walls. The actual outer wall flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
1000
+ outer_wall_flow_ratio?: number
1001
+ /** Outer wall — (mm/s) — Jerk of outer walls. */
1002
+ outer_wall_jerk?: number[] | number
1003
+ /** Outer wall — (mm or %) — Line width of outer wall. If expressed as a %, it will be computed over the nozzle diameter. */
1004
+ outer_wall_line_width?: number | string
1005
+ /** Outer wall — (mm/s) — This is the printing speed for the outer walls of parts. These are generally printed slower than inner walls for higher quality. */
1006
+ outer_wall_speed?: number[] | number
1007
+ /** Output directory — This is the output directory for exported files. */
1008
+ outputdir?: string
1009
+ /** 10% — (mm/s or %) */
1010
+ overhang_1_4_speed?: (number | string)[] | (number | string)
1011
+ /** 25% — (mm/s or %) */
1012
+ overhang_2_4_speed?: (number | string)[] | (number | string)
1013
+ /** 50% — (mm/s or %) */
1014
+ overhang_3_4_speed?: (number | string)[] | (number | string)
1015
+ /** 75% — (mm/s or %) */
1016
+ overhang_4_4_speed?: (number | string)[] | (number | string)
1017
+ /** Overhangs and external bridges fan speed — (%) — Use this part cooling fan speed when printing bridges or overhang walls with an overhang threshold that exceeds the value set in the 'Overhangs cooling threshold' parameter above. Increasing the cooling specifically for overhangs and bridges can improve the overall print quality of these features. Please note, this fan speed is clamped on the lower end by the minimum fan speed threshold set above. It is also adjusted upwards up to the maximum fan speed threshold when the minimum layer time threshold is not met. */
1018
+ overhang_fan_speed?: number[] | number
1019
+ /** Overhang cooling activation threshold — When the overhang exceeds this specified threshold, force the cooling fan to run at the 'Overhang Fan Speed' set below. This threshold is expressed as a percentage, indicating the portion of each line's width that is unsupported by the layer beneath it. Setting this value to 0% forces the cooling fan to run for all outer walls, regardless of the overhang degree. */
1020
+ overhang_fan_threshold?: ('0%' | '10%' | '25%' | '50%' | '75%' | '95%')[] | ('0%' | '10%' | '25%' | '50%' | '75%' | '95%')
1021
+ /** Overhang flow ratio — This factor affects the amount of material for overhangs. The actual overhang flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
1022
+ overhang_flow_ratio?: number
1023
+ /** Reverse on even — Extrude perimeters that have a part over an overhang in the reverse direction on even layers. This alternating pattern can drastically improve steep overhangs. This setting can also help reduce part warping due to the reduction of stresses in the part walls. */
1024
+ overhang_reverse?: boolean
1025
+ /** Reverse only internal perimeters — Apply the reverse perimeters logic only on internal perimeters. This setting greatly reduces part stresses as they are now distributed in alternating directions. This should reduce part warping while also maintaining external wall quality. This feature can be very useful for warp prone material, like ABS/ASA, and also for elastic filaments, like TPU and Silk PLA. It can also help reduce warping on floating regions over supports. For this setting to be the most effective, it is recommended to set the Reverse Threshold to 0 so that all internal walls print in alternating directions on even layers irrespective of their overhang degree. */
1026
+ overhang_reverse_internal_only?: boolean
1027
+ /** Reverse threshold — (mm or %) — Number of mm the overhang need to be for the reversal to be considered useful. Can be a % of the perimeter width. Value 0 enables reversal on every even layers regardless. When Detect overhang wall is not enabled, this option is ignored and reversal happens on every even layers regardless. */
1028
+ overhang_reverse_threshold?: number | string
1029
+ pad_around_object?: boolean
1030
+ pad_around_object_everywhere?: boolean
1031
+ pad_brim_size?: number
1032
+ pad_enable?: boolean
1033
+ pad_max_merge_distance?: number
1034
+ pad_object_connector_penetration?: number
1035
+ pad_object_connector_stride?: number
1036
+ pad_object_connector_width?: number
1037
+ pad_object_gap?: number
1038
+ pad_wall_height?: number
1039
+ pad_wall_slope?: number
1040
+ pad_wall_thickness?: number
1041
+ /** Parallel printheads bed exclude areas — Ordered list of bed exclude areas by parallel printhead count. Item 1 applies to one printhead, item 2 to two printheads, and so on. Leave an item empty for no excluded area. */
1042
+ parallel_printheads_bed_exclude_areas?: string[] | string
1043
+ /** Parallel printheads count — Set the number of parallel printheads for machines like OrangeStorm Giga printer. */
1044
+ parallel_printheads_count?: number
1045
+ /** Filament parking position — (mm) — Distance of the extruder tip from the position where the filament is parked when unloaded. This should match the value in printer firmware. */
1046
+ parking_pos_retraction?: number
1047
+ /** Minimum non-zero part cooling fan speed — (%) — Some part-cooling fans cannot start spinning when commanded below a certain PWM duty cycle. When set above 0, any non-zero part-cooling fan command will be raised to at least this percentage so the fan reliably starts. A fan command of 0 (fan off) is always honoured exactly. This clamp is applied after every other fan calculation (first-layer ramp, layer-time interpolation, overhang/bridge/support-interface/ironing overrides), so scaling still operates within the range [this value, 100%]. If your firmware already disables the fan below a threshold (for example Klipper's [fan] off_below: 0.10 shuts the fan off whenever the commanded duty cycle is below 10%), this option and the firmware threshold should ideally be set to the same value. Matching them (e.g. off_below: 0.10 in Klipper and 10% here) guarantees the slicer never emits a non-zero value that the firmware would silently drop, and the fan never receives a value below the one you know it can actually spool at. Set to 0 to deactivate. */
1048
+ part_cooling_fan_min_pwm?: number
1049
+ /** Pellet flow coefficient — Pellet flow coefficient is empirically derived and allows for volume calculation for pellet printers. Internally it is converted to filament_diameter. All other volume calculations remain the same. filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI ) */
1050
+ pellet_flow_coefficient?: number[] | number
1051
+ /** Pellet Modded Printer — Enable this option if your printer uses pellets instead of filaments. */
1052
+ pellet_modded_printer?: boolean
1053
+ /** Map the logical extruder to physical extruder — Map the logical extruder to physical extruder. */
1054
+ physical_extruder_map?: number[] | number
1055
+ /** Physical printer name — Name of the physical printer used for slicing. */
1056
+ physical_printer_preset?: string
1057
+ /** Send progress to pipe — Send progress to pipe. */
1058
+ pipe?: string
1059
+ /** Capabilities — Configuration for the plugin capabilities this preset uses, overriding the global Capabilities configuration. Stored as a raw JSON array and edited through the dialog behind the button, never typed in directly. */
1060
+ plugin_config_overrides?: string
1061
+ /** Plugins Used — Plugin capabilities referenced by this preset, stored as name;uuid;capability. */
1062
+ plugins?: string[] | string
1063
+ /** Position — Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back. */
1064
+ position?: number[] | number
1065
+ /** Post-processing Scripts — If you want to process the output G-code through custom scripts, just list their absolute paths here. Separate multiple scripts with a semicolon. Scripts will be passed the absolute path to the G-code file as the first argument, and they can access the Orca Slicer config settings by reading environment variables. */
1066
+ post_process?: string[] | string
1067
+ /** Precise wall — Improve shell precision by adjusting outer wall spacing. This also improves layer consistency. NOTE: This option will be ignored for outer-inner or inner-outer-inner wall sequences. */
1068
+ precise_outer_wall?: boolean
1069
+ /** Precise Z height — Enable this to get precise Z height of object after slicing. It will get the precise object height by fine-tuning the layer heights of the last few layers. Note that this is an experimental parameter. */
1070
+ precise_z_height?: boolean
1071
+ /** Preferred orientation — (°) — Automatically orient STL files on the Z axis upon initial import. */
1072
+ preferred_orientation?: number
1073
+ /** Preheat steps — Insert multiple preheat commands (e.g. M104.1). Only useful for Prusa XL. For other printers, please set it to 1. */
1074
+ preheat_steps?: number
1075
+ /** Preheat time — (s) — To reduce the waiting time after tool change, Orca can preheat the next tool while the current tool is still in use. This setting specifies the time in seconds to preheat the next tool. Orca will insert a M104 command to preheat the tool in advance. */
1076
+ preheat_time?: number
1077
+ preset_name?: string
1078
+ /** Printer preset names — Names of presets related to the physical printer. */
1079
+ preset_names?: string[] | string
1080
+ /** Pressure advance — Pressure advance (Klipper) AKA Linear advance factor (Marlin). */
1081
+ pressure_advance?: number[] | number
1082
+ /** Brim width — (mm) — Brim width of prime tower, negative number means auto calculated width based on the height of prime tower. */
1083
+ prime_tower_brim_width?: number
1084
+ /** Internal ribs — Enable internal ribs to increase the stability of the prime tower. */
1085
+ prime_tower_enable_framework?: boolean
1086
+ prime_tower_flat_ironing?: boolean
1087
+ /** Infill gap — (%) — Infill gap. */
1088
+ prime_tower_infill_gap?: number
1089
+ /** Skip points — The wall of prime tower will skip the start points of wipe path. */
1090
+ prime_tower_skip_points?: boolean
1091
+ /** Width — (mm) — This is the width of prime towers. */
1092
+ prime_tower_width?: number
1093
+ /** Prime volume — (mm³) — This is the volume of material to prime the extruder with on the tower. */
1094
+ prime_volume?: number
1095
+ /** Prime volume mode — Selects how the wipe-tower prime and flush volumes are computed on multi-extruder printers. */
1096
+ prime_volume_mode?: 'Default' | 'Saving' | 'Fast'
1097
+ /** Top-right corner of print bed bounding box — point_tooltip */
1098
+ print_bed_max?: number[] | number
1099
+ /** Bottom-left corner of print bed bounding box — point_tooltip */
1100
+ print_bed_min?: number[] | number
1101
+ /** Size of the print bed bounding box — bb_size_tooltip */
1102
+ print_bed_size?: number[] | number
1103
+ print_compatible_printers?: string[] | string
1104
+ /** Print extruder id — Print extruder id. */
1105
+ print_extruder_id?: number[] | number
1106
+ /** Print's extruder variant — Print's extruder variant. */
1107
+ print_extruder_variant?: string[] | string
1108
+ /** Flow ratio — The material may have volumetric change after switching between molten and crystalline states. This setting changes all extrusion flow of this filament in G-code proportionally. The recommended value range is between 0.95 and 1.05. You may be able to tune this value to get a nice flat surface if there is slight overflow or underflow. The final object flow ratio is this value multiplied by the filament flow ratio. */
1109
+ print_flow_ratio?: number
1110
+ /** Hostname, IP or URL — Orca Slicer can upload G-code files to a printer host. This field should contain the hostname, IP address or URL of the printer host instance. Print host behind HAProxy with basic auth enabled can be accessed by putting the user name and password into the URL in the following format: https://username:password@your-octopi-address/ */
1111
+ print_host?: string
1112
+ /** Device UI — Specify the URL of your device user interface if it's not same as print_host. */
1113
+ print_host_webui?: string
1114
+ /** Intra-layer order — Print order within a single layer. */
1115
+ print_order?: 'default' | 'as_obj_list'
1116
+ /** Print preset name — Name of the print preset used for slicing. */
1117
+ print_preset?: string
1118
+ /** Print sequence — This determines the print sequence, allowing you to print layer-by-layer or object-by-object. */
1119
+ print_sequence?: 'by layer' | 'by object'
1120
+ print_settings_id?: string
1121
+ /** Print time (normal mode) — Estimated print time when printed in normal mode (i.e. not in silent mode). Same as normal_print_time. */
1122
+ print_time?: string
1123
+ /** Print time (seconds) — Total estimated print time in seconds. Replaced with actual value during post-processing. */
1124
+ print_time_sec?: string
1125
+ /** Printable area */
1126
+ printable_area?: Point[]
1127
+ /** Printable height — (mm) — This is the maximum printable height which is limited by the height of the build area. */
1128
+ printable_height?: number
1129
+ /** Printer Agent — Select the network agent implementation for printer communication. */
1130
+ printer_agent?: string
1131
+ /** Printer extruder id — Printer extruder id. */
1132
+ printer_extruder_id?: number[] | number
1133
+ /** Printer's extruder variant — Printer's extruder variant. */
1134
+ printer_extruder_variant?: string[] | string
1135
+ /** Printer type — Type of the printer. */
1136
+ printer_model?: string
1137
+ /** Printer notes — You can put your notes regarding the printer here. */
1138
+ printer_notes?: string
1139
+ /** Printer preset name — Name of the printer preset used for slicing. */
1140
+ printer_preset?: string
1141
+ printer_settings_id?: string
1142
+ /** Printer structure — The physical arrangement and components of a printing device. */
1143
+ printer_structure?: 'undefine' | 'corexy' | 'i3' | 'hbot' | 'delta'
1144
+ /** Printer technology */
1145
+ printer_technology?: 'FFF' | 'SLA'
1146
+ /** Printer variant */
1147
+ printer_variant?: string
1148
+ /** API Key / Password — Orca Slicer can upload G-code files to a printer host. This field should contain the API Key or the password required for authentication. */
1149
+ printhost_apikey?: string
1150
+ /** Authorization Type */
1151
+ printhost_authorization_type?: 'key' | 'user'
1152
+ /** HTTPS CA File — Custom CA certificate file can be specified for HTTPS OctoPrint connections, in crt/pem format. If left blank, the default OS CA certificate repository is used. */
1153
+ printhost_cafile?: string
1154
+ /** Password */
1155
+ printhost_password?: string
1156
+ /** Printer — Name of the printer. */
1157
+ printhost_port?: string
1158
+ /** Ignore HTTPS certificate revocation checks — Ignore HTTPS certificate revocation checks in the case of missing or offline distribution points. One may want to enable this option for self signed certificates if connection fails. */
1159
+ printhost_ssl_ignore_revoke?: boolean
1160
+ /** User */
1161
+ printhost_user?: string
1162
+ /** Between Object G-code — Insert G-code between objects. This parameter will only come into effect when you print your models object by object. */
1163
+ printing_by_object_gcode?: string
1164
+ /** Change extrusion role G-code (process) — This G-code is inserted when the extrusion role is changed. It runs after the machine and filament extrusion role G-code. */
1165
+ process_change_extrusion_role_gcode?: string
1166
+ /** Purge in prime tower — Purge remaining filament into prime tower. */
1167
+ purge_in_prime_tower?: boolean
1168
+ /** Raft contact Z distance — (mm) — Z gap between raft and object. If Support Top Z Distance is 0, this value is ignored and the object is printed in direct contact with the raft (no gap). */
1169
+ raft_contact_distance?: number
1170
+ /** Raft expansion — (mm) — This expands all raft layers in XY plane. */
1171
+ raft_expansion?: number
1172
+ /** First layer density — (%) — This is the density of the first raft or support layer. */
1173
+ raft_first_layer_density?: number
1174
+ /** First layer expansion — (mm) — This expands the first raft or support layer to improve bed adhesion. */
1175
+ raft_first_layer_expansion?: number
1176
+ /** Raft layers — (layers) — Object will be raised by this number of support layers. Use this function to avoid warping when printing ABS. */
1177
+ raft_layers?: number
1178
+ /** Avoid crossing walls — This detours to avoid traveling across walls, which may cause blobs on the surface. */
1179
+ reduce_crossing_wall?: boolean
1180
+ /** Keep fan always on — Enabling this setting means that part cooling fan will never stop entirely and will instead run at least at minimum speed to reduce the frequency of starting and stopping. */
1181
+ reduce_fan_stop_start_freq?: boolean[] | boolean
1182
+ /** Reduce infill retraction — Don\'t retract when the travel is entirely within an infill area. That means the oozing can\'t been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped. */
1183
+ reduce_infill_retraction?: boolean
1184
+ /** Relative bridge angle — When enabled, the bridge angle values are added to the automatically calculated bridge direction instead of overriding it. */
1185
+ relative_bridge_angle?: boolean
1186
+ relative_correction?: number[] | number
1187
+ relative_correction_x?: number
1188
+ relative_correction_y?: number
1189
+ relative_correction_z?: number
1190
+ /** Repetition count — Repetition count of the whole model. */
1191
+ repetitions?: number
1192
+ /** Required nozzle HRC — Minimum HRC of nozzle required to print the filament. A value of 0 means no checking of the nozzle\'s HRC. */
1193
+ required_nozzle_HRC?: number[] | number
1194
+ /** Resolution — (mm) — The G-code path is generated after simplifying the contour of models to avoid too many points and G-code lines. Smaller values mean higher resolution and more time required to slice. */
1195
+ resolution?: number
1196
+ /** Resonance avoidance — By reducing the speed of the outer wall to avoid the resonance zone of the printer, ringing on the surface of the model are avoided. Please turn this option off when testing ringing. */
1197
+ resonance_avoidance?: boolean
1198
+ /** Retract amount after wipe — (%) — The length of fast retraction after wipe, relative to retraction length. The value will be clamped by 100% minus the retract amount before the wipe value. */
1199
+ retract_after_wipe?: number[] | number
1200
+ /** Retract amount before wipe — (%) — This is the length of fast retraction before a wipe, relative to retraction length. */
1201
+ retract_before_wipe?: number[] | number
1202
+ /** Length — (mm) */
1203
+ retract_length_toolchange?: number[] | number
1204
+ /** Only lift Z above — (mm) — If you set this to a positive value, Z lift will only take place above the specified absolute Z. */
1205
+ retract_lift_above?: number[] | number
1206
+ /** Only lift Z below — (mm) — If you set this to a positive value, Z lift will only take place below the specified absolute Z. */
1207
+ retract_lift_below?: number[] | number
1208
+ /** On surfaces — Enforce Z-Hop behavior. This setting is impacted by the above settings (Only lift Z above/below). */
1209
+ retract_lift_enforce?: ('All Surfaces' | 'Top Only' | 'Bottom Only' | 'Top and Bottom')[] | ('All Surfaces' | 'Top Only' | 'Bottom Only' | 'Top and Bottom')
1210
+ /** Extra length on restart — (mm) — When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed. */
1211
+ retract_restart_extra?: number[] | number
1212
+ /** Extra length on restart — (mm) — When the retraction is compensated after changing tool, the extruder will push this additional amount of filament. */
1213
+ retract_restart_extra_toolchange?: number[] | number
1214
+ /** Retract on layer change — This forces a retraction on layer changes. */
1215
+ retract_when_changing_layer?: boolean[] | boolean
1216
+ /** Retraction distance when cut — Experimental feature: Retraction length before cutting off during filament change. */
1217
+ retraction_distances_when_cut?: number[] | number
1218
+ /** Retraction distance when extruder change — (mm) */
1219
+ retraction_distances_when_ec?: number[] | number
1220
+ /** Length — (mm) — Some amount of material in extruder is pulled back to avoid ooze during long travel. Set zero to disable retraction. */
1221
+ retraction_length?: number[] | number
1222
+ /** Travel distance threshold — (mm) — Only trigger retraction when the travel distance is longer than this threshold. */
1223
+ retraction_minimum_travel?: number[] | number
1224
+ /** Retraction speed — (mm/s) — Speed for retracting filament from the nozzle. */
1225
+ retraction_speed?: number[] | number
1226
+ /** Role base wipe speed — The wipe speed is determined by the speed of the current extrusion role. e.g. if a wipe action is executed immediately following an outer wall extrusion, the speed of the outer wall extrusion will be utilized for the wipe action. */
1227
+ role_based_wipe_speed?: boolean
1228
+ /** Rotate — (°) — Rotation angle around the Z axis in degrees. */
1229
+ rotate?: number
1230
+ /** Rotate around X — (°) — Rotation angle around the X axis in degrees. */
1231
+ rotate_x?: number
1232
+ /** Rotate around Y — (°) — Rotation angle around the Y axis in degrees. */
1233
+ rotate_y?: number
1234
+ /** Scale per object — Contains a string with the information about what scaling was applied to the individual objects. Indexing of the objects is zero-based (first object has index 0). Example: 'x:100% y:50% z:100%'. */
1235
+ scale?: string[] | string
1236
+ /** Scan first layer — Enable this to allow the camera on the printer to check the quality of the first layer. */
1237
+ scan_first_layer?: boolean
1238
+ /** Conditional angle threshold — (°) — This option sets the threshold angle for applying a conditional scarf joint seam. If the maximum angle within the perimeter loop exceeds this value (indicating the absence of sharp corners), a scarf joint seam will be used. The default value is 155°. */
1239
+ scarf_angle_threshold?: number
1240
+ /** Scarf joint flow ratio — This factor affects the amount of material for scarf joints. */
1241
+ scarf_joint_flow_ratio?: number
1242
+ /** Scarf joint speed — (mm/s or %) — This option sets the printing speed for scarf joints. It is recommended to print scarf joints at a slow speed (less than 100 mm/s). It's also advisable to enable 'Extrusion rate smoothing' if the set speed varies significantly from the speed of the outer or inner walls. If the speed specified here is higher than the speed of the outer or inner walls, the printer will default to the slower of the two speeds. When specified as a percentage (e.g., 80%), the speed is calculated based on the respective outer or inner wall speed. The default value is set to 100%. */
1243
+ scarf_joint_speed?: number | string
1244
+ /** Conditional overhang threshold — (%) — This option determines the overhang threshold for the application of scarf joint seams. If the unsupported portion of the perimeter is less than this threshold, scarf joint seams will be applied. The default threshold is set at 40% of the external wall's width. Due to performance considerations, the degree of overhang is estimated. */
1245
+ scarf_overhang_threshold?: number
1246
+ /** Seam gap — (mm or %) — In order to reduce the visibility of the seam in a closed loop extrusion, the loop is interrupted and shortened by a specified amount. This amount can be specified in millimeters or as a percentage of the current extruder diameter. The default value for this parameter is 10%. */
1247
+ seam_gap?: number | string
1248
+ /** Seam position — This is the starting position for each part of the outer wall. */
1249
+ seam_position?: 'nearest' | 'aligned' | 'aligned_back' | 'back' | 'random'
1250
+ /** Conditional scarf joint — Apply scarf joints only to smooth perimeters where traditional seams do not conceal the seams at sharp corners effectively. */
1251
+ seam_slope_conditional?: boolean
1252
+ /** Scarf around entire wall — The scarf extends to the entire length of the wall. */
1253
+ seam_slope_entire_loop?: boolean
1254
+ /** Scarf joint for inner walls — Use scarf joint for inner walls as well. */
1255
+ seam_slope_inner_walls?: boolean
1256
+ /** Scarf length — (mm) — Length of the scarf. Setting this parameter to zero effectively disables the scarf. */
1257
+ seam_slope_min_length?: number
1258
+ /** Scarf start height — (mm or %) — Start height of the scarf. This amount can be specified in millimeters or as a percentage of the current layer height. The default value for this parameter is 0. */
1259
+ seam_slope_start_height?: number | string
1260
+ /** Scarf steps — Minimum number of segments of each scarf. */
1261
+ seam_slope_steps?: number
1262
+ /** Scarf joint seam (beta) — Use scarf joint to minimize seam visibility and increase seam strength. */
1263
+ seam_slope_type?: 'none' | 'external' | 'all'
1264
+ /** Second */
1265
+ second?: number
1266
+ /** Separated infills — Centers the internal infill of each part on itself, as if it were sliced on its own, instead of on the whole assembly. Parts that touch or overlap are treated as one body and share a center; separate parts (or distinct 3D objects) each get their own. Useful when an assembly groups several objects that should each keep a consistent, self-centered infill. Affects line and grid patterns and rotation-template infills. Patterns locked to global coordinates (Gyroid, Honeycomb, TPMS, ...) are unaffected. */
1267
+ separated_infills?: boolean
1268
+ /** Set other flow ratios — Change flow ratios for other extrusion path types. */
1269
+ set_other_flow_ratios?: boolean
1270
+ /** Silent Mode — Whether the machine supports silent mode in which machine uses lower acceleration to print more quietly */
1271
+ silent_mode?: boolean
1272
+ /** Print time (silent mode) — Estimated print time when printed in silent mode. */
1273
+ silent_print_time?: string
1274
+ /** Single Extruder Multi Material — Use single nozzle to print multi filament. */
1275
+ single_extruder_multi_material?: boolean
1276
+ /** Prime all printing extruders — If enabled, all printing extruders will be primed at the front edge of the print bed at the start of the print. */
1277
+ single_extruder_multi_material_priming?: boolean
1278
+ /** Single loop after first layer — Limits the skirt/draft shield loops to one wall after the first layer. This is useful, on occasion, to conserve filament but may cause the draft shield/skirt to warp / crack. */
1279
+ single_loop_draft_shield?: boolean
1280
+ /** Skeleton infill density — (%) — The remaining part of the model contour after removing a certain depth from the surface is called the skeleton. This parameter is used to adjust the density of this section. When two regions have the same sparse infill settings but different skeleton densities, their skeleton areas will develop overlapping sections. Default is as same as infill density. */
1281
+ skeleton_infill_density?: number
1282
+ /** Skeleton line width — (mm) — Adjust the line width of the selected skeleton paths. */
1283
+ skeleton_infill_line_width?: number | string
1284
+ /** Skin infill density — (%) — The portion of the model's outer surface within a certain depth range is called the skin. This parameter is used to adjust the density of this section. When two regions have the same sparse infill settings but different skin densities, this area will not be split into two separate regions. Default is as same as infill density. */
1285
+ skin_infill_density?: number
1286
+ /** Skin infill depth — (mm) — The parameter sets the depth of skin. */
1287
+ skin_infill_depth?: number
1288
+ /** Skin line width — (mm) — Adjust the line width of the selected skin paths. */
1289
+ skin_infill_line_width?: number | string
1290
+ /** Skip modified G-code in 3MF — Skip the modified G-code in 3MF from printer or filament presets. */
1291
+ skip_modified_gcodes?: boolean
1292
+ /** Skip Objects — Skip some objects in this print. */
1293
+ skip_objects?: number[] | number
1294
+ /** Skirt distance — (mm) — This is the distance from the skirt to the brim or the object. */
1295
+ skirt_distance?: number
1296
+ /** Skirt height — (layers) — Number of skirt layers: usually only one */
1297
+ skirt_height?: number
1298
+ /** Skirt loops — This is the number of loops for the skirt. 0 means the skirt is disabled. */
1299
+ skirt_loops?: number
1300
+ /** Skirt speed — (mm/s) — Speed of skirt, in mm/s. Zero means use default layer extrusion speed. */
1301
+ skirt_speed?: number
1302
+ /** Skirt start point — (°) — Angle from the object center to skirt start point. Zero is the most right position, counter clockwise is positive angle. */
1303
+ skirt_start_angle?: number
1304
+ /** Skirt type — Combined - single skirt for all objects, Per object - individual object skirt. */
1305
+ skirt_type?: 'combined' | 'perobject'
1306
+ sla_material_settings_id?: string
1307
+ sla_print_settings_id?: string
1308
+ /** Slice — Slice the plates: 0-all plates, i-plate i, others-invalid */
1309
+ slice?: number
1310
+ /** Slice gap closing radius — (mm) — Cracks smaller than 2x gap closing radius are being filled during the triangle mesh slicing. The gap closing operation may reduce the final print resolution, therefore it is advisable to keep the value reasonably low. */
1311
+ slice_closing_radius?: number
1312
+ /** Slicing Mode — Use "Even-odd" for 3DLabPrint airplane models. Use "Close holes" to close all holes in the model. */
1313
+ slicing_mode?: 'regular' | 'even_odd' | 'close_holes'
1314
+ /** Slicing Pipeline Plugin — Python plugin(s) invoked at each slicing pipeline step to read and modify intermediate slicing data, including a final G-code post-processing step. Research/experimental. */
1315
+ slicing_pipeline_plugin?: string[] | string
1316
+ /** Slow printing down for better layer cooling — Enable this option to slow printing speed down to ensure that the final layer time is not shorter than the layer time threshold in "Max fan speed threshold", so that the layer can be cooled for a longer time. This can improve the quality for small details. */
1317
+ slow_down_for_layer_cooling?: boolean[] | boolean
1318
+ /** Layer time — (s) — The printing speed in exported G-code will be slowed down when the estimated layer time is shorter than this value in order to get better cooling for these layers. */
1319
+ slow_down_layer_time?: number[] | number
1320
+ /** Number of slow layers — (layers) — The first few layers are printed slower than normal. The speed is gradually increased in a linear fashion over the specified number of layers. */
1321
+ slow_down_layers?: number
1322
+ /** Min print speed — (mm/s) — The minimum print speed to which the printer slows down to maintain the minimum layer time defined above when the slowdown for better layer cooling is enabled. */
1323
+ slow_down_min_speed?: number[] | number
1324
+ slow_tilt_time?: number
1325
+ /** Slow down for curled perimeters — Enable this option to slow down printing in areas where perimeters may have curled upwards. For example, additional slowdown will be applied when printing overhangs on sharp corners like the front of the Benchy hull, reducing curling which compounds over multiple layers. It is generally recommended to have this option switched on unless your printer cooling is powerful enough or the print speed is slow enough that perimeter curling does not happen. If printing with a high external perimeter speed, this parameter may introduce wall artifacts when slowing down, due to the potentially large variance in print speeds causing the extruder to be unable to keep up with the requested flow change. Root cause of these artifacts is most likely PA tuning being slightly off, especially when combined with a high PA smooth time. Recommendations when enabling this option: 1. Reduce Pressure Advance smooth time to 0.015 - 0.02 so the extruder reacts quickly to the speed changes. 2. Increase the minimum print speeds to limit the magnitude of the slowdown and reduce the variance between fast and slow segments. 3. If artifacts still appear, enable Extrusion Rate Smoothing (ERS) to further smooth the flow transitions. Note: When this option is enabled, overhang perimeters are treated like overhangs, meaning the overhang speed is applied even if the overhanging perimeter is part of a bridge. For example, when the perimeters are 100% overhanging, with no wall supporting them from underneath, the 100% overhang speed will be applied. */
1326
+ slowdown_for_curled_perimeters?: boolean[] | boolean
1327
+ /** Small area flow compensation (beta) — Enable flow compensation for small infill areas. */
1328
+ small_area_infill_flow_compensation?: boolean
1329
+ /** Flow Compensation Model — Flow Compensation Model, used to adjust the flow for small infill areas. The model is expressed as a comma separated pair of values for extrusion length and flow correction factor. Each pair is on a separate line, followed by a semicolon, in the following format: "1.234, 5.678;" */
1330
+ small_area_infill_flow_compensation_model?: string[] | string
1331
+ /** Small perimeters — (mm/s or %) — This separate setting will affect the speed of perimeters having radius <= small_perimeter_threshold (usually holes). If expressed as percentage (for example: 80%) it will be calculated on the outer wall speed setting above. Set to zero for auto. */
1332
+ small_perimeter_speed?: (number | string)[] | (number | string)
1333
+ /** Small perimeters threshold — (mm) — This sets the threshold for small perimeter length. Default threshold is 0mm. */
1334
+ small_perimeter_threshold?: number[] | number
1335
+ /** Small support perimeters — (mm/s or %) — Same as "Small perimeters", but for supports. This separate setting will affect the speed of support for areas <= `small_support_perimeter_threshold`. If expressed as a percentage (for example: 80%), it will be calculated on the support or support interface speed setting above. Set to zero for auto. */
1336
+ small_support_perimeter_speed?: (number | string)[] | (number | string)
1337
+ /** Small support perimeters threshold — (mm) — This sets the threshold for small support perimeter length. The default threshold is 0mm. */
1338
+ small_support_perimeter_threshold?: number[] | number
1339
+ /** Solid infill direction — (°) — Angle for solid infill pattern, which controls the start or main direction of line. */
1340
+ solid_infill_direction?: number
1341
+ /** Solid infill rotation template — (°) — This parameter adds a rotation of solid infill direction to each layer according to the specified template. The template is a comma-separated list of angles in degrees, e.g. '0,90'. The first angle is applied to the first layer, the second angle to the second layer, and so on. If there are more layers than angles, the angles will be repeated. Note that not all solid infill patterns support rotation. */
1342
+ solid_infill_rotate_template?: string
1343
+ /** Sparse infill — (mm/s² or %) — Acceleration of sparse infill. If the value is expressed as a percentage (e.g. 100%), it will be calculated based on the default acceleration. */
1344
+ sparse_infill_acceleration?: (number | string)[] | (number | string)
1345
+ /** Sparse infill density — (%) — Density of internal sparse infill, 100% turns all sparse infill into solid infill and internal solid infill pattern will be used. */
1346
+ sparse_infill_density?: number
1347
+ /** Infill — Filament to print internal sparse infill. "Default" uses the active object/part filament. */
1348
+ sparse_infill_filament_id?: number
1349
+ /** Sparse infill flow ratio — This factor affects the amount of material for sparse infill. The actual sparse infill flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
1350
+ sparse_infill_flow_ratio?: number
1351
+ /** Sparse infill — (mm or %) — Line width of internal sparse infill. If expressed as a %, it will be computed over the nozzle diameter. */
1352
+ sparse_infill_line_width?: number | string
1353
+ /** Sparse infill pattern — This is the line pattern for internal sparse infill. */
1354
+ sparse_infill_pattern?: 'rectilinear' | 'alignedrectilinear' | 'zigzag' | 'crosszag' | 'lockedzag' | 'line' | 'grid' | 'triangles' | 'tri-hexagon' | 'cubic' | 'adaptivecubic' | 'quartercubic' | 'supportcubic' | 'lightning' | 'honeycomb' | '3dhoneycomb' | 'lateral-honeycomb' | 'lateral-lattice' | 'crosshatch' | 'tpmsd' | 'tpmsfk' | 'gyroid' | 'concentric' | 'hilbertcurve' | 'archimedeanchords' | 'octagramspiral'
1355
+ /** Sparse infill rotation template — (°) — Rotate the sparse infill direction per layer using a template of angles. Enter comma-separated degrees (e.g., '0,30,60,90'). Angles are applied in order by layer and repeat when the list ends. Advanced syntax is supported: '+5' rotates +5° every layer; '+5#5' rotates +5° every 5 layers. See the Wiki for details. When a template is set, the standard infill direction setting is ignored. Note: some infill patterns (e.g., Gyroid) control rotation themselves; use with care. */
1356
+ sparse_infill_rotate_template?: string
1357
+ /** Sparse infill — (mm/s) — This is the speed for internal sparse infill. */
1358
+ sparse_infill_speed?: number[] | number
1359
+ /** Spiral finishing flow ratio — Sets the finishing flow ratio while ending the spiral. Normally the spiral transition scales the flow ratio from 100% to 0% during the last loop which can in some cases lead to under extrusion at the end of the spiral. */
1360
+ spiral_finishing_flow_ratio?: number
1361
+ /** Spiral vase — This enables spiraling, which smooths out the Z moves of the outer contour and turns a solid model into a single walled print with solid bottom layers. The final generated model has no seam. */
1362
+ spiral_mode?: boolean
1363
+ /** Max XY Smoothing — (mm or %) — Maximum distance to move points in XY to try to achieve a smooth spiral. If expressed as a %, it will be computed over nozzle diameter. */
1364
+ spiral_mode_max_xy_smoothing?: number | string
1365
+ /** Smooth Spiral — Smooth Spiral smooths out X and Y moves as well, resulting in no visible seam at all, even in the XY directions on walls that are not vertical. */
1366
+ spiral_mode_smooth?: boolean
1367
+ /** Spiral starting flow ratio — Sets the starting flow ratio while transitioning from the last bottom layer to the spiral. Normally the spiral transition scales the flow ratio from 0% to 100% during the first loop which can in some cases lead to under extrusion at the start of the spiral. */
1368
+ spiral_starting_flow_ratio?: number
1369
+ /** Staggered inner seams — This option causes the inner seams to be shifted backwards based on their depth, forming a zigzag pattern. */
1370
+ staggered_inner_seams?: boolean
1371
+ /** Temperature variation — (\u2206\u2103) — Temperature difference to be applied when an extruder is not active. The value is not used when 'idle_temperature' in filament settings is set to non-zero value. */
1372
+ standby_temperature_delta?: number
1373
+ /** Start end points — The start and end points which are from the cutter area to the excess chute. */
1374
+ start_end_points?: Point[]
1375
+ /** Other layers — (\u2103) — Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack. */
1376
+ supertack_plate_temp?: number[] | number
1377
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the Cool Plate SuperTack. */
1378
+ supertack_plate_temp_initial_layer?: number[] | number
1379
+ support_air_filtration?: boolean
1380
+ /** Pattern angle — (°) — Use this setting to rotate the support pattern on the horizontal plane. */
1381
+ support_angle?: number
1382
+ support_base_diameter?: number
1383
+ support_base_height?: number
1384
+ /** Base pattern — Line pattern of support. The Default option for Tree supports is Hollow, which means no base pattern. For other support types, the Default option is the Rectilinear pattern. NOTE: For Organic supports, the two walls are supported only with the Hollow/Default base pattern. The Lightning base pattern is supported only by Tree Slim/Strong/Hybrid supports. For the other support types, the Rectilinear will be used instead of Lightning. */
1385
+ support_base_pattern?: 'default' | 'rectilinear' | 'rectilinear-grid' | 'honeycomb' | 'lightning' | 'hollow'
1386
+ /** Base pattern spacing — (mm) — This determines the spacing between support lines. */
1387
+ support_base_pattern_spacing?: number
1388
+ support_base_safety_distance?: number
1389
+ /** Bottom interface spacing — (mm) — This is the spacing of bottom interface lines. 0 means solid interface. */
1390
+ support_bottom_interface_spacing?: number
1391
+ /** Bottom Z distance — (mm) — Z gap between the object and the support bottom. If Support Top Z Distance is 0 and the bottom has interface layers, this value is ignored and the support is printed in direct contact with the object (no gap). */
1392
+ support_bottom_z_distance?: number
1393
+ support_buildplate_only?: boolean
1394
+ support_chamber_temp_control?: boolean
1395
+ support_cooling_filter?: boolean
1396
+ support_critical_angle?: number
1397
+ /** Support critical regions only — Only create support for critical regions including sharp tail, cantilever, etc. */
1398
+ support_critical_regions_only?: boolean
1399
+ /** Normal support expansion — (mm) — Expand (+) or shrink (-) the horizontal span of normal support. */
1400
+ support_expansion?: number
1401
+ /** Support fast purge mode — Whether this printer supports fast purge mode with optimized temperature and multiplier. */
1402
+ support_fast_purge_mode?: boolean
1403
+ /** Support/raft base — Filament to print support base and raft. "Default" means no specific filament for support and current filament is used. */
1404
+ support_filament?: number
1405
+ /** Support flow ratio — This factor affects the amount of material for support. The actual support flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
1406
+ support_flow_ratio?: number
1407
+ support_head_front_diameter?: number
1408
+ support_head_penetration?: number
1409
+ support_head_width?: number
1410
+ /** Bottom interface layers — (layers) — Number of bottom interface layers. */
1411
+ support_interface_bottom_layers?: number
1412
+ /** Support/raft interface — Filament to print support interface. "Default" means no specific filament for support interface and current filament is used. */
1413
+ support_interface_filament?: number
1414
+ /** Support interface flow ratio — This factor affects the amount of material for the support interface. The actual support interface flow used is calculated by multiplying this value by the filament flow ratio, and if set, the object's flow ratio. */
1415
+ support_interface_flow_ratio?: number
1416
+ /** Loop pattern interface — This covers the top contact layer of the supports with loops. It is disabled by default. */
1417
+ support_interface_loop_pattern?: boolean
1418
+ /** Avoid interface filament for base — Avoid using support interface filament to print support base if possible. */
1419
+ support_interface_not_for_body?: boolean
1420
+ /** Interface pattern — This is the line pattern for support interfaces. The default pattern for non-soluble support interfaces is Rectilinear while the default pattern for soluble support interfaces is Concentric. */
1421
+ support_interface_pattern?: 'auto' | 'rectilinear' | 'concentric' | 'rectilinear_interlaced' | 'grid'
1422
+ /** Top interface spacing — (mm) — Spacing of interface lines. Zero means solid interface. Force using solid interface when support ironing is enabled. */
1423
+ support_interface_spacing?: number
1424
+ /** Support interface — (mm/s) — This is the speed for support interfaces. */
1425
+ support_interface_speed?: number[] | number
1426
+ /** Top interface layers — (layers) — This is the number of top interface layers. */
1427
+ support_interface_top_layers?: number
1428
+ /** Ironing Support Interface — Ironing is using small flow to print on same height of support interface again to make it more smooth. This setting controls whether support interface being ironed. When enabled, support interface will be extruded as solid too. */
1429
+ support_ironing?: boolean
1430
+ /** Support Ironing flow — (%) — The amount of material to extrude during ironing. Relative to flow of normal support interface layer height. Too high value results in overextrusion on the surface. */
1431
+ support_ironing_flow?: number
1432
+ /** Support Ironing Pattern — The pattern that will be used when ironing. */
1433
+ support_ironing_pattern?: 'rectilinear' | 'concentric'
1434
+ /** Support Ironing line spacing — (mm) — This is the distance between the lines used for ironing. */
1435
+ support_ironing_spacing?: number
1436
+ /** Support — (mm or %) — Line width of support. If expressed as a %, it will be computed over the nozzle diameter. */
1437
+ support_line_width?: number | string
1438
+ /** Support interface fan speed — (%) — This part cooling fan speed is applied when printing support interfaces. Setting this parameter to a higher than regular speed reduces the layer binding strength between supports and the supported part, making them easier to separate. Set to -1 to disable it. This setting is overridden by disable_fan_first_layers. */
1439
+ support_material_interface_fan_speed?: number[] | number
1440
+ support_max_bridge_length?: number
1441
+ support_max_bridges_on_pillar?: number
1442
+ support_max_pillar_link_distance?: number
1443
+ /** Support multi bed types — Enable this option if you want to use multiple bed types. */
1444
+ support_multi_bed_types?: boolean
1445
+ support_object_elevation?: number
1446
+ /** Support/object first layer gap — (mm) — XY separation between an object and its support at the first layer. */
1447
+ support_object_first_layer_gap?: number
1448
+ support_object_skip_flush?: boolean
1449
+ /** Support/object XY distance — (mm) — This controls the XY separation between an object and its support. */
1450
+ support_object_xy_distance?: number
1451
+ /** On build plate only — This setting only generates supports that begin on the build plate. */
1452
+ support_on_build_plate_only?: boolean
1453
+ /** Support parallel printheads — Enable printer settings for machines that can use multiple printheads in parallel. */
1454
+ support_parallel_printheads?: boolean
1455
+ support_pillar_connection_mode?: 'zigzag' | 'cross' | 'dynamic'
1456
+ support_pillar_diameter?: number
1457
+ support_pillar_widening_factor?: number
1458
+ support_points_density_relative?: number
1459
+ /** (mm) */
1460
+ support_points_minimal_distance?: number
1461
+ /** Ignore small overhangs — Ignore small overhangs that possibly don't require support. */
1462
+ support_remove_small_overhang?: boolean
1463
+ support_small_pillar_diameter_percent?: number
1464
+ /** Support — (mm/s) — This is the speed for support. */
1465
+ support_speed?: number[] | number
1466
+ /** Style — Style and shape of the support. For normal support, projecting the supports into a regular grid will create more stable supports (default), while snug support towers will save material and reduce object scarring. For tree support, slim and organic style will merge branches more aggressively and save a lot of material (default organic), while hybrid style will create similar structure to normal support under large flat overhangs. */
1467
+ support_style?: 'default' | 'grid' | 'snug' | 'organic' | 'tree_slim' | 'tree_strong' | 'tree_hybrid'
1468
+ /** Threshold angle — (°) — Support will be generated for overhangs whose slope angle is below the threshold. The smaller this value is, the steeper the overhang that can be printed without support. Note: If set to 0, normal supports use the Threshold overlap instead, while tree supports fall back to a default value of 30. */
1469
+ support_threshold_angle?: number
1470
+ /** Threshold overlap — (mm or %) — If threshold angle is zero, support will be generated for overhangs whose overlap is below the threshold. The smaller this value is, the steeper the overhang that can be printed without support. */
1471
+ support_threshold_overlap?: number | string
1472
+ /** Top Z distance — (mm) — Z gap between the support\'s top and object. */
1473
+ support_top_z_distance?: number
1474
+ /** Type — Normal (auto) and Tree (auto) are used to generate support automatically. If Normal (manual) or Tree (manual) is selected, only support enforcers are generated. */
1475
+ support_type?: 'normal(auto)' | 'tree(auto)' | 'normal(manual)' | 'tree(manual)'
1476
+ supports_enable?: boolean
1477
+ /** Symmetric infill Y axis — If the model has two parts that are symmetric about the Y axis, and you want these parts to have symmetric textures, please click this option on one of the parts. */
1478
+ symmetric_infill_y_axis?: boolean
1479
+ /** Softening temperature — (\u2103) — The material softens at this temperature, so when the bed temperature is equal to or greater than this, it\'s highly recommended to open the front door and/or remove the upper glass to avoid clogs. */
1480
+ temperature_vitrification?: number[] | number
1481
+ /** Custom G-code — This G-code will be used as a custom code. */
1482
+ template_custom_gcode?: string
1483
+ /** Other layers — (\u2103) — This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate. */
1484
+ textured_cool_plate_temp?: number[] | number
1485
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the Textured Cool Plate. */
1486
+ textured_cool_plate_temp_initial_layer?: number[] | number
1487
+ /** Other layers — (\u2103) — This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured PEI Plate. */
1488
+ textured_plate_temp?: number[] | number
1489
+ /** First layer — (\u2103) — This is the bed temperature of the first layer. A value of 0 means the filament does not support printing on the Textured PEI Plate. */
1490
+ textured_plate_temp_initial_layer?: number[] | number
1491
+ /** Thick external bridges — If enabled, bridge extrusion uses a line height equal to the nozzle diameter. This increases bridge strength and reliability, allowing longer spans, but may worsen appearance. If disabled, bridges may look better but are generally reliable only for shorter spans. */
1492
+ thick_bridges?: boolean
1493
+ /** Thick internal bridges — If enabled, internal bridge extrusion uses a line height equal to the nozzle diameter. This increases internal bridge strength and reliability when printed over sparse infill, but may worsen appearance. If disabled, internal bridges may look better but can be less reliable over sparse infill. */
1494
+ thick_internal_bridges?: boolean
1495
+ /** G-code thumbnails — Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the following format: "XxY, XxY, ..." */
1496
+ thumbnails?: string
1497
+ /** Format of G-code thumbnails — Format of G-code thumbnails: PNG for best quality, JPG for smallest size, QOI for low memory firmware. */
1498
+ thumbnails_format?: 'PNG' | 'JPG' | 'QOI' | 'BTT_TFT' | 'COLPIC'
1499
+ /** Time cost — (money/h) — The printer cost per hour. */
1500
+ time_cost?: number
1501
+ /** Timelapse G-code */
1502
+ time_lapse_gcode?: string
1503
+ /** Timelapse — If smooth or traditional mode is selected, a timelapse video will be generated for each print. After each layer is printed, a snapshot is taken with the chamber camera. All of these snapshots are composed into a timelapse video when printing completes. If smooth mode is selected, the toolhead will move to the excess chute after each layer is printed and then take a snapshot. Since the melt filament may leak from the nozzle during the process of taking a snapshot, a prime tower is required for smooth mode to wipe the nozzle. */
1504
+ timelapse_type?: '0' | '1'
1505
+ /** Timestamp — String containing current time in yyyyMMdd-hhmmss format. */
1506
+ timestamp?: string
1507
+ /** Tool change on wipe tower — Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead. */
1508
+ tool_change_on_wipe_tower?: boolean
1509
+ /** Toolchange ordering — Determines the order of tool changes on each layer. - Default: Starts with the last used extruder to minimize tool changes. - Cyclic: Uses a fixed tool sequence each layer. This sacrifices speed for better surface quality, as the extra toolchanges allow layers more time to cool. */
1510
+ toolchange_ordering?: 'default' | 'cyclic'
1511
+ /** Top/Bottom solid infill/wall overlap — (%) — Top solid infill area is enlarged slightly to overlap with wall for better bonding and to minimize the appearance of pinholes where the top infill meets the walls. A value of 25-30% is a good starting point, minimizing the appearance of pinholes. The percentage value is relative to line width of sparse infill. */
1512
+ top_bottom_infill_wall_overlap?: number
1513
+ /** Top layer direction — (°) — Fixed angle for the top solid infill and ironing lines. Set to -1 to follow the default solid infill direction. */
1514
+ top_layer_direction?: number
1515
+ /** Top shell layers — (layers) — This is the number of solid layers of top shell, including the top surface layer. When the thickness calculated by this value is thinner than the top shell thickness, the top shell layers will be increased */
1516
+ top_shell_layers?: number
1517
+ /** Top shell thickness — (mm) — The number of top solid layers is increased when slicing if the thickness calculated by top shell layers is thinner than this value. This can avoid having too thin a shell when layer height is small. 0 means that this setting is disabled and thickness of top shell is determined simply by the number of top shell layers. */
1518
+ top_shell_thickness?: number
1519
+ /** Top surface flow ratio — This factor affects the amount of material for top solid infill. You can decrease it slightly to have smooth surface finish. The actual top surface flow used is calculated by multiplying this value with the filament flow ratio, and if set, the object's flow ratio. */
1520
+ top_solid_infill_flow_ratio?: number
1521
+ /** Top surface — (mm/s²) — This is the acceleration of top surface infill. Using a lower value may improve top surface quality. */
1522
+ top_surface_acceleration?: number[] | number
1523
+ /** Top surface density — (%) — Density of top surface layer. A value of 100% creates a fully solid, smooth top layer. Reducing this value results in a textured top surface, according to the chosen top surface pattern. A value of 0% will result in only the walls on the top layer being created. Intended for aesthetic or functional purposes, not to fix issues such as over-extrusion. */
1524
+ top_surface_density?: number
1525
+ /** Top surface expansion — (mm) — Expands the top surfaces by this distance to connect distinct top surfaces and fill gaps. Useful for cases where the top surface is interrupted by a raised feature, such as text on a plane. Expanding it removes the holes beneath these features and creates a continuous path with a better finish for printing on top. The expansion is applied to the original top surface, before any other processing such as bridging or overhang detection. */
1526
+ top_surface_expansion?: number
1527
+ /** Top expansion direction — Direction in which the top surface expansion grows. - Inward grows into the holes and gaps left by features rising from the middle of a top surface. - Outward grows the outer edge of the surface, connecting surfaces separated by features that can divide a surface, such as a lattice pattern. - Inward and Outward does both. */
1528
+ top_surface_expansion_direction?: 'inward_and_outward' | 'inward' | 'outward'
1529
+ /** Top expansion wall margin — (mm) — Using “Top surface expansion” may cause a surface that did not previously touch the model's outer walls to now do so. This can cause contraction marks (such as the hull line) on the outer walls. By adding a small margin, this contraction will not occur directly on the walls, thereby preventing a visible mark. */
1530
+ top_surface_expansion_margin?: number
1531
+ /** Top surface — Filament to print top surface. "Default" uses the active object/part filament. */
1532
+ top_surface_filament_id?: number
1533
+ /** Top surface fill order — Direction in which top surfaces are filled when using a center-based pattern (Concentric, Archimedean Chords, Octagram Spiral). Outward starts at the center of the surface, so any excess material is pushed towards the edge where it is least visible. Inward starts at the edge and ends with the tight curves at the center. Default uses shortest-path ordering, which may run in either direction. */
1534
+ top_surface_fill_order?: 'default' | 'outward' | 'inward'
1535
+ /** Top surface — (mm/s) — Jerk for top surface. */
1536
+ top_surface_jerk?: number[] | number
1537
+ /** Top surface — (mm or %) — Line width for top surfaces. If expressed as a %, it will be computed over the nozzle diameter. */
1538
+ top_surface_line_width?: number | string
1539
+ /** Top surface pattern — This is the line pattern for top surface infill. */
1540
+ top_surface_pattern?: 'monotonic' | 'monotonicline' | 'rectilinear' | 'alignedrectilinear' | 'concentric' | 'hilbertcurve' | 'archimedeanchords' | 'octagramspiral'
1541
+ /** Top surface — (mm/s) — This is the speed for solid top surface infill. */
1542
+ top_surface_speed?: number[] | number
1543
+ /** Total cost — Total cost of all material used in the print. Calculated from filament_cost value in Filament Settings. */
1544
+ total_cost?: number
1545
+ /** Total layer count — Number of layers in the entire print. */
1546
+ total_layer_count?: number
1547
+ /** Total tool changes — Number of tool changes during the print. */
1548
+ total_toolchanges?: number
1549
+ /** Total weight — Total weight of the print. Calculated from filament_density value in Filament Settings. */
1550
+ total_weight?: number
1551
+ /** Total wipe tower cost — Total cost of the material wasted on the wipe tower. Calculated from filament_cost value in Filament Settings. */
1552
+ total_wipe_tower_cost?: number
1553
+ /** Wipe tower volume — Total filament volume extruded on the wipe tower. */
1554
+ total_wipe_tower_filament?: number
1555
+ /** Travel — (mm/s²) — Acceleration of travel moves. */
1556
+ travel_acceleration?: number[] | number
1557
+ /** Travel — (mm/s) — Jerk for travel. */
1558
+ travel_jerk?: number[] | number
1559
+ /** Traveling angle — (°) — Traveling angle for Slope and Spiral Z-hop type. Setting it to 90° results in Normal Lift. */
1560
+ travel_slope?: number[] | number
1561
+ /** Travel — (mm/s) — This is the speed at which traveling is done. */
1562
+ travel_speed?: number[] | number
1563
+ /** (mm/s) */
1564
+ travel_speed_z?: number[] | number
1565
+ /** Preferred Branch Angle — (°) — The preferred angle of the branches, when they do not have to avoid the model. Use a lower angle to make them more vertical and more stable. Use a higher angle for branches to merge faster. */
1566
+ tree_support_angle_slow?: number
1567
+ /** Auto brim width — Enabling this option means the width of the brim for tree support will be automatically calculated. */
1568
+ tree_support_auto_brim?: boolean
1569
+ /** Tree support branch angle — (°) — This setting determines the maximum overhang angle that the branches of tree support are allowed to make. If the angle is increased, the branches can be printed more horizontally, allowing them to reach farther. */
1570
+ tree_support_branch_angle?: number
1571
+ /** Tree support branch angle — (°) — This setting determines the maximum overhang angle that the branches of tree support are allowed to make. If the angle is increased, the branches can be printed more horizontally, allowing them to reach farther. */
1572
+ tree_support_branch_angle_organic?: number
1573
+ /** Tree support branch diameter — (mm) — This setting determines the initial diameter of support nodes. */
1574
+ tree_support_branch_diameter?: number
1575
+ /** Branch Diameter Angle — (°) — The angle of the branches' diameter as they gradually become thicker towards the bottom. An angle of 0 will cause the branches to have uniform thickness over their length. A bit of an angle can increase stability of the organic support. */
1576
+ tree_support_branch_diameter_angle?: number
1577
+ /** Tree support branch diameter — (mm) — This setting determines the initial diameter of support nodes. */
1578
+ tree_support_branch_diameter_organic?: number
1579
+ /** Tree support branch distance — (mm) — This setting determines the distance between neighboring tree support nodes. */
1580
+ tree_support_branch_distance?: number
1581
+ /** Tree support branch distance — (mm) — This setting determines the distance between neighboring tree support nodes. */
1582
+ tree_support_branch_distance_organic?: number
1583
+ /** Tree support brim width — Distance from tree branch to the outermost brim line. */
1584
+ tree_support_brim_width?: number
1585
+ /** Tip Diameter — (mm) — Branch tip diameter for organic supports. */
1586
+ tree_support_tip_diameter?: number
1587
+ /** Branch Density — (%) — Adjusts the density of the support structure used to generate the tips of the branches. A higher value results in better overhangs but the supports are harder to remove, thus it is recommended to enable top support interfaces instead of a high branch density value if dense interfaces are needed. */
1588
+ tree_support_top_rate?: number
1589
+ /** Support wall loops — This setting specifies the count of support walls in the range of [0,2]. 0 means auto. */
1590
+ tree_support_wall_count?: number
1591
+ /** Tree support with infill — This setting specifies whether to add infill inside large hollows of tree support. */
1592
+ tree_support_with_infill?: boolean
1593
+ /** UpToDate — Update the config values of 3MF to latest. */
1594
+ uptodate?: boolean
1595
+ /** Load uptodate filament settings when using uptodate — Load uptodate filament settings from the specified file when using uptodate. */
1596
+ uptodate_filaments?: string[] | string
1597
+ /** Load uptodate process/machine settings when using uptodate — load up-to-date process/machine settings from the specified file when using up-to-date */
1598
+ uptodate_settings?: string[] | string
1599
+ /** upward compatible machine */
1600
+ upward_compatible_machine?: string[] | string
1601
+ /** Use 3MF instead of G-code — Enable this if the printer accepts a 3MF file as the print job. When enabled, Orca Slicer sends the sliced file as a .gcode.3mf, instead of a plain .gcode file. */
1602
+ use_3mf?: boolean
1603
+ /** Use firmware retraction — This experimental setting uses G10 and G11 commands to have the firmware handle the retraction. This is only supported in recent Marlin. */
1604
+ use_firmware_retraction?: boolean
1605
+ /** Use relative E distances — Relative extrusion is recommended when using "label_objects" option. Some extruders work better with this option unchecked (absolute extrusion mode). Wipe tower is only compatible with relative mode. It is recommended on most printers. Default is checked. */
1606
+ use_relative_e_distances?: boolean
1607
+ /** Used filament — Total length of filament used in the print. */
1608
+ used_filament?: number
1609
+ /** Filament length (meters) — Total filament length used in meters. Replaced with actual value during post-processing. */
1610
+ used_filament_length?: string
1611
+ /** Max volumetric speed multinomial coefficients */
1612
+ volumetric_speed_coefficients?: string[] | string
1613
+ /** Wall loop direction — The direction which the contour wall loops are extruded when looking down from the top. Holes are printed in the opposite direction to the contour to maintain alignment with layers whose contour polygons are incomplete and change direction, also partially forming the contour of a hole. This option will be disabled if spiral vase mode is enabled. */
1614
+ wall_direction?: 'ccw' | 'cw'
1615
+ /** Wall distribution count — The number of walls, counted from the center, over which the variation needs to be spread. Lower values mean that the outer walls don't change in width. */
1616
+ wall_distribution_count?: number
1617
+ /** Wall generator — The classic wall generator produces walls with constant extrusion width and for very thin areas, gap-fill is used. The Arachne engine produces walls with variable extrusion width. */
1618
+ wall_generator?: 'classic' | 'arachne'
1619
+ /** Wall loops — This is the number of walls per layer. */
1620
+ wall_loops?: number
1621
+ /** Maximum wall deviation — (mm) — The maximum deviation allowed when reducing the resolution for the 'Maximum wall resolution' setting. If you increase this, the print will be less accurate, but the G-Code will be smaller. 'Maximum wall deviation' limits 'Maximum wall resolution', so if the two conflict, 'Maximum wall deviation' takes precedence. */
1622
+ wall_maximum_deviation?: number
1623
+ /** Maximum wall resolution — (mm) — This value determines the smallest wall line segment length in mm. The smaller you set this value, the more accurate and precise the walls will be. */
1624
+ wall_maximum_resolution?: number
1625
+ /** Walls printing order — Print sequence of the internal (inner) and external (outer) walls. Use Inner/Outer for best overhangs. This is because the overhanging walls can adhere to a neighbouring perimeter while printing. However, this option results in slightly reduced surface quality as the external perimeter is deformed by being squashed to the internal perimeter. Use Inner/Outer/Inner for the best external surface finish and dimensional accuracy as the external wall is printed undisturbed from an internal perimeter. However, overhang performance will reduce as there is no internal perimeter to print the external wall against. This option requires a minimum of 3 walls to be effective as it prints the internal walls from the 3rd perimeter onwards first, then the external perimeter and, finally, the first internal perimeter. This option is recommended against the Outer/Inner option in most cases. Use Outer/Inner for the same external wall quality and dimensional accuracy benefits of Inner/Outer/Inner option. However, the Z seams will appear less consistent as the first extrusion of a new layer starts on a visible surface. */
1626
+ wall_sequence?: 'inner wall/outer wall' | 'outer wall/inner wall' | 'inner-outer-inner wall'
1627
+ /** Wall transitioning threshold angle — (°) — When to create transitions between even and odd numbers of walls. A wedge shape with an angle greater than this setting will not have transitions and no walls will be printed in the center to fill the remaining space. Reducing this setting reduces the number and length of these center walls, but may leave gaps or overextrude. */
1628
+ wall_transition_angle?: number
1629
+ /** Wall transitioning filter margin — (%) — Prevent transitioning back and forth between one extra wall and one less. This margin extends the range of extrusion widths which follow to [Minimum wall width - margin, 2 * Minimum wall width + margin]. Increasing this margin reduces the number of transitions, which reduces the number of extrusion starts/stops and travel time. However, large extrusion width variation can lead to under- or overextrusion problems. It's expressed as a percentage over nozzle diameter. */
1630
+ wall_transition_filter_deviation?: number
1631
+ /** Wall transition length — (%) — When transitioning between different numbers of walls as the part becomes thinner, a certain amount of space is allotted to split or join the wall segments. It\'s expressed as a percentage over nozzle diameter. */
1632
+ wall_transition_length?: number
1633
+ /** Wipe while retracting — This moves the nozzle along the last extrusion path when retracting to clean any leaked material on the nozzle. This can minimize blobs when printing a new part after traveling. */
1634
+ wipe?: boolean[] | boolean
1635
+ /** Wipe before external loop — To minimize visibility of potential overextrusion at the start of an external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall print order, the de-retraction is performed slightly on the inside from the start of the external perimeter. That way any potential over extrusion is hidden from the outside surface. This is useful when printing with Outer/Inner or Inner/Outer/Inner wall print order as in these modes it is more likely an external perimeter is printed immediately after a de-retraction move. */
1636
+ wipe_before_external_loop?: boolean
1637
+ /** Wipe distance — (mm) — Describe how long the nozzle will move along the last path when retracting. Depending on how long the wipe operation lasts, how fast and long the extruder/filament retraction settings are, a retraction move may be needed to retract the remaining filament. Setting a value in the retract amount before wipe setting below will perform any excess retraction before the wipe, else it will be performed after. */
1638
+ wipe_distance?: number[] | number
1639
+ /** Wipe on loops — To minimize the visibility of the seam in a closed loop extrusion, a small inward movement is executed before the extruder leaves the loop. */
1640
+ wipe_on_loops?: boolean
1641
+ /** Wipe speed — (mm/s or %) — The wipe speed is determined by the speed setting specified in this configuration. If the value is expressed as a percentage (e.g. 80%), it will be calculated based on the travel speed setting above. The default value for this parameter is 80%. */
1642
+ wipe_speed?: number | string
1643
+ /** Maximal bridging distance — (mm) — Maximal distance between supports on sparse infill sections. */
1644
+ wipe_tower_bridging?: number
1645
+ /** Stabilization cone apex angle — (°) — Angle at the apex of the cone that is used to stabilize the wipe tower. Larger angle means wider base. */
1646
+ wipe_tower_cone_angle?: number
1647
+ /** Extra flow for purging — (%) — Extra flow used for the purging lines on the wipe tower. This makes the purging lines thicker or narrower than they normally would be. The spacing is adjusted automatically. */
1648
+ wipe_tower_extra_flow?: number
1649
+ /** Extra rib length — (mm) — Positive values can increase the size of the rib wall, while negative values can reduce the size. However, the size of the rib wall can not be smaller than that determined by the cleaning volume. */
1650
+ wipe_tower_extra_rib_length?: number
1651
+ /** Wipe tower purge lines spacing — (%) — Spacing of purge lines on the wipe tower. */
1652
+ wipe_tower_extra_spacing?: number
1653
+ /** Wipe tower — The extruder to use when printing perimeter of the wipe tower. Set to 0 to use the one that is available (non-soluble would be preferred). */
1654
+ wipe_tower_filament?: number
1655
+ /** Fillet wall — The wall of prime tower will fillet. */
1656
+ wipe_tower_fillet_wall?: boolean
1657
+ /** Maximum wipe tower print speed — (mm/s) — The maximum print speed when purging in the wipe tower and printing the wipe tower sparse layers. When purging, if the sparse infill speed or calculated speed from the filament max volumetric speed is lower, the lowest will be used instead. When printing the sparse layers, if the internal perimeter speed or calculated speed from the filament max volumetric speed is lower, the lowest will be used instead. Increasing this speed may affect the tower's stability as well as increase the force with which the nozzle collides with any blobs that may have formed on the wipe tower. Before increasing this parameter beyond the default of 90 mm/s, make sure your printer can reliably bridge at the increased speeds and that ooze when tool changing is well controlled. For the wipe tower external perimeters the internal perimeter speed is used regardless of this setting. */
1658
+ wipe_tower_max_purge_speed?: number
1659
+ /** No sparse layers (beta) — If enabled, the wipe tower will not be printed on layers with no tool changes. On layers with a tool change, extruder will travel downward to print the wipe tower. User is responsible for ensuring there is no collision with the print. */
1660
+ wipe_tower_no_sparse_layers?: boolean
1661
+ /** Rib width — (mm) — Rib width is always less than half the prime tower side length. */
1662
+ wipe_tower_rib_width?: number
1663
+ /** Wipe tower rotation angle — (°) — Wipe tower rotation angle with respect to X axis. */
1664
+ wipe_tower_rotation_angle?: number
1665
+ /** Wipe tower type — Choose the wipe tower implementation for multi-material prints. Type 1 is recommended for Bambu and Qidi printers with a filament cutter. Type 2 offers better compatibility with multi-tool and MMU printers and provide overall better compatibility. */
1666
+ wipe_tower_type?: 'type1' | 'type2'
1667
+ /** Wall type — Wipe tower outer wall type. 1. Rectangle: The default wall type, a rectangle with fixed width and height. 2. Cone: A cone with a fillet at the bottom to help stabilize the wipe tower. 3. Rib: Adds four ribs to the tower wall for enhanced stability. */
1668
+ wipe_tower_wall_type?: 'rectangle' | 'cone' | 'rib'
1669
+ wipe_tower_x?: number[] | number
1670
+ wipe_tower_y?: number[] | number
1671
+ /** Purging volumes - load/unload volumes — This vector saves required volumes to change from/to each tool used on the wipe tower. These values are used to simplify creation of the full purging volumes below. */
1672
+ wiping_volumes_extruders?: number[] | number
1673
+ /** Clumping detection G-code */
1674
+ wrapping_detection_gcode?: string
1675
+ /** Clumping detection layers — Clumping detection layers. */
1676
+ wrapping_detection_layers?: number
1677
+ /** Probing exclude area of clumping — Probing exclude area of clumping. */
1678
+ wrapping_exclude_area?: Point[]
1679
+ /** X-Y contour compensation — (mm) — Contours of objects will expand or contract in the XY plane by the set value. Positive values make contours bigger and negative values make contours smaller. This function is used to adjust sizes slightly when objects have assembly issues. */
1680
+ xy_contour_compensation?: number
1681
+ /** X-Y hole compensation — (mm) — Holes in objects will expand or contract in the XY plane by the set value. Positive values make holes bigger and negative values make holes smaller. This function is used to adjust sizes slightly when objects have assembly issues. */
1682
+ xy_hole_compensation?: number
1683
+ /** Year */
1684
+ year?: number
1685
+ /** Z-hop height — (mm) — Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing. */
1686
+ z_hop?: number[] | number
1687
+ /** Z-hop type — Type of Z-hop. */
1688
+ z_hop_types?: ('Auto Lift' | 'Normal Lift' | 'Slope Lift' | 'Spiral Lift')[] | ('Auto Lift' | 'Normal Lift' | 'Slope Lift' | 'Spiral Lift')
1689
+ /** Z offset — (mm) — This value will be added (or subtracted) from all the Z coordinates in the output G-code. It is used to compensate for bad Z endstop position: for example, if your endstop zero actually leaves the nozzle 0.3mm far from the print bed, set this to -0.3 (or fix your endstop). */
1690
+ z_offset?: number
1691
+ /** Don't alternate fill direction — Disable alternating fill direction when using Z contouring. */
1692
+ zaa_dont_alternate_fill_direction?: boolean
1693
+ /** Z contouring enabled — Enable Z-layer contouring (aka Z-layer anti-aliasing). */
1694
+ zaa_enabled?: boolean
1695
+ /** Minimum Z height — (mm) — Minimum Z-layer height. Also controls the slicing plane. */
1696
+ zaa_min_z?: number
1697
+ /** Minimize wall height angle — (°) — Reduce the height of top-surface perimeters to match the model edge height. Affects perimeters with a slope less than this angle (degrees). A reasonable value is 35. Set to 0 to disable. */
1698
+ zaa_minimize_perimeter_height?: number
1699
+ /** Current Z-hop — Contains Z-hop present at the beginning of the custom G-code block. */
1700
+ zhop?: number
1701
+ }
1702
+
1703
+ /** Setting keys that exist in config-schema */
1704
+ export type SettingKey = keyof SlicerSettings & string