mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-19 11:23:42 +00:00
Updated Wiki content
@@ -12,6 +12,7 @@ Flow ratio and pressure advance settings for the selected material.
|
||||
|
||||
## Flow Ratio
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `filament_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.
|
||||
|
||||
@@ -7,6 +7,7 @@ Each material profile includes a **maximum volumetric speed** setting, which lim
|
||||
|
||||
## Adaptive volumetric speed
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `filament_adaptive_volumetric_speed`.
|
||||
> [!WARNING]
|
||||
> Experimental and incomplete feature imported from BBS.
|
||||
> Functional for some profiles that already have the variable saved.
|
||||
@@ -15,4 +16,5 @@ When enabled, the extrusion flow is limited by the smaller of the fitted value (
|
||||
|
||||
## Max volumetric speed
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `filament_max_volumetric_speed`.
|
||||
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.
|
||||
|
||||
@@ -35,6 +35,7 @@ After a tool change, the exact position of the newly loaded filament inside the
|
||||
|
||||
## Multi Filament
|
||||
|
||||
[Variables](Built-in-placeholders-variables): `long_retractions_when_ec`, `retraction_distances_when_ec`.
|
||||
Enable long retraction when the extruder changes and set its retraction distance value for extruder changes.
|
||||
|
||||
## Tool change parameters with single extruder
|
||||
|
||||
@@ -4,16 +4,20 @@ This section contains the basic information about the extruder.
|
||||
|
||||
## Nozzle diameter
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `nozzle_diameter[extruder_idx]`.
|
||||
The diameter of nozzle.
|
||||
|
||||
## Nozzle volume
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `nozzle_volume[extruder_idx]`.
|
||||
Volume of nozzle between the filament cutter and the end of the nozzle
|
||||
|
||||
## Extruder Layer Height Limits
|
||||
|
||||
[Variables](Built-in-placeholders-variables): `extruder_printable_height[extruder_idx]`, `min_layer_height[extruder_idx]`, `max_layer_height[extruder_idx]`.
|
||||
Min and max layer height limits for the extruder. These settings are used when adaptive layer height is enabled.
|
||||
|
||||
## Extruder offset Position
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `extruder_offset[extruder_idx]`.
|
||||
If your firmware doesn't handle the extruder displacement you need the G-code to take it into account. This option lets you specify the displacement of each extruder with respect to the first one. It expects positive coordinates (they will be subtracted from the XY coordinate).
|
||||
|
||||
@@ -21,46 +21,57 @@ Filaments like PETG and TPU are more prone to stringing, so they may require lon
|
||||
|
||||
## Length
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retraction_length[extruder_idx]`.
|
||||
When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder).
|
||||
|
||||
## Extra length on restart
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_restart_extra[extruder_idx]`.
|
||||
When the retraction is compensated after changing tool, the extruder will push this additional amount of filament.
|
||||
|
||||
## Retraction speed
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retraction_speed[extruder_idx]`.
|
||||
Speed for retracting filament from the nozzle.
|
||||
|
||||
## Deretraction speed
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `deretraction_speed[extruder_idx]`.
|
||||
Speed for reloading filament into the nozzle. Zero means same speed of retraction.
|
||||
|
||||
## Travel distance threshold
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retraction_minimum_travel[extruder_idx]`.
|
||||
Only trigger retraction when the travel distance is longer than this threshold.
|
||||
|
||||
## Retract on layer change
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_when_changing_layer[extruder_idx]`.
|
||||
This forces a retraction on layer changes.
|
||||
|
||||
## Wipe while retracting
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `wipe[extruder_idx]`.
|
||||
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.
|
||||
|
||||
## Wipe distance
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `wipe_distance[extruder_idx]`.
|
||||
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.
|
||||
|
||||
## Retract amount before wipe
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_before_wipe[extruder_idx]`.
|
||||
This is the length of fast retraction before a wipe, relative to retraction length.
|
||||
|
||||
## Retraction When Switching Materials
|
||||
|
||||
[Variables](Built-in-placeholders-variables): `retract_length_toolchange[extruder_idx]`, `retract_restart_extra_toolchange[extruder_idx]`.
|
||||
Retraction settings specifically for material changes during tool changes in multi-material prints.
|
||||
|
||||
### Long retraction when cut (beta)
|
||||
|
||||
[Variables](Built-in-placeholders-variables): `long_retractions_when_cut[extruder_idx]`, `retraction_distances_when_cut[extruder_idx]`.
|
||||
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.
|
||||
|
||||
@@ -4,10 +4,12 @@ Z-Hop is a feature that lifts the nozzle slightly during travel moves to avoid c
|
||||
|
||||
## On surfaces
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_lift_enforce[extruder_idx]`.
|
||||
Enforce Z-Hop behavior. This setting is impacted by the above settings (Only lift Z above/below).
|
||||
|
||||
## Z-hop type
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `z_hop_types[extruder_idx]`.
|
||||
- Auto: Selects automatically between Spiral based on whether the travel move crosses over overhang areas
|
||||
- Normal Lift: The nozzle is lifted vertically during retraction and lowered back down before resuming printing.
|
||||
- Slope: The nozzle moves diagonally (at an angle) during retraction, creating a sloped path.
|
||||
@@ -15,16 +17,20 @@ Enforce Z-Hop behavior. This setting is impacted by the above settings (Only lif
|
||||
|
||||
## Z-hop height
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `z_hop[extruder_idx]`.
|
||||
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.
|
||||
|
||||
## Traveling angle
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `travel_slope[extruder_idx]`.
|
||||
Traveling angle for Slope and Spiral Z-hop type. Setting it to 90° results in Normal Lift.
|
||||
|
||||
## Only lift Z above
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_lift_above[extruder_idx]`.
|
||||
If you set this to a positive value, Z lift will only take place above the specified absolute Z.
|
||||
|
||||
## Only lift Z below
|
||||
|
||||
[Variable](Built-in-placeholders-variables): `retract_lift_below[extruder_idx]`.
|
||||
If you set this to a positive value, Z lift will only take place below the specified absolute Z.
|
||||
|
||||
@@ -54,5 +54,5 @@ Maximum junction deviation (M205 J, only apply if JD > 0 for Marlin Firmware. If
|
||||
|
||||
### Maximum Jerk
|
||||
|
||||
[Variables](Built-in-placeholders-variables): `machine_max_jerk_x`, `machine_max_jerk_y`, `machine_max_jerk_e`, `machine_max_jerk_z`.
|
||||
[Variables](Built-in-placeholders-variables): `machine_max_jerk_z`, `machine_max_jerk_x`, `machine_max_jerk_y`, `machine_max_jerk_e`.
|
||||
Maximum jerk for each axis (M205 X, Y, Z, E, only apply if JD = 0 for Marlin 2 Firmware)
|
||||
|
||||
@@ -94,8 +94,8 @@ if (-not (Test-Path -LiteralPath $WikiRoot)) {
|
||||
|
||||
$tabContent = Get-TabCppContent -Source $TabCppPath
|
||||
|
||||
$patternSingle = 'append_single_option_line\(\s*"(?<variable>[^"]+)"\s*,\s*"(?<ref>[^"]+)"\s*\)'
|
||||
$patternOption = 'append_option_line\(\s*[^,]+\s*,\s*"(?<variable>[^"]+)"\s*,\s*"(?<ref>[^"]+)"\s*\)'
|
||||
$patternSingle = 'append_single_option_line\(\s*"(?<variable>[^"]+)"\s*,\s*"(?<ref>[^"]+)"(?:\s*,\s*(?<indexer>[^\)]+))?\s*\)'
|
||||
$patternOption = 'append_option_line\(\s*[^,]+\s*,\s*"(?<variable>[^"]+)"\s*,\s*"(?<ref>[^"]+)"(?:\s*,\s*(?<indexer>[^\)]+))?\s*\)'
|
||||
$patternAppendLineBlock = '(?s)(?<obj>\w+)\.label_path\s*=\s*"(?<ref>[^"]+)"\s*;(?<body>.*?)(?:\w+->)?append_line\(\s*\k<obj>\s*\)\s*;'
|
||||
$patternForBlock = '(?s)for\s*\(\s*const\s+std::string\s*&\s*(?<iter>\w+)\s*:\s*(?<collection>\w+)\s*\)\s*\{(?<body>.*?)\}'
|
||||
|
||||
@@ -108,16 +108,28 @@ $stringVectors = Get-StringVectors -Content $tabContent
|
||||
$rawEntries = New-Object System.Collections.Generic.List[object]
|
||||
|
||||
foreach ($m in $singleMatches) {
|
||||
$variable = $m.Groups['variable'].Value.Trim()
|
||||
$indexer = $m.Groups['indexer'].Value.Trim()
|
||||
if (-not [string]::IsNullOrWhiteSpace($indexer) -and $indexer -match '^[A-Za-z_]\w*$') {
|
||||
$variable = "${variable}[$indexer]"
|
||||
}
|
||||
|
||||
$rawEntries.Add([PSCustomObject]@{
|
||||
Variable = $m.Groups['variable'].Value.Trim()
|
||||
Variable = $variable
|
||||
Ref = $m.Groups['ref'].Value.Trim()
|
||||
Index = [int]$m.Index
|
||||
})
|
||||
}
|
||||
|
||||
foreach ($m in $optionMatches) {
|
||||
$variable = $m.Groups['variable'].Value.Trim()
|
||||
$indexer = $m.Groups['indexer'].Value.Trim()
|
||||
if (-not [string]::IsNullOrWhiteSpace($indexer) -and $indexer -match '^[A-Za-z_]\w*$') {
|
||||
$variable = "${variable}[$indexer]"
|
||||
}
|
||||
|
||||
$rawEntries.Add([PSCustomObject]@{
|
||||
Variable = $m.Groups['variable'].Value.Trim()
|
||||
Variable = $variable
|
||||
Ref = $m.Groups['ref'].Value.Trim()
|
||||
Index = [int]$m.Index
|
||||
})
|
||||
@@ -298,7 +310,7 @@ foreach ($group in $groupedByFile) {
|
||||
$hasCanonicalLine = $false
|
||||
|
||||
for ($k = $idx + 1; $k -le $sectionEnd; $k++) {
|
||||
if ($buffer[$k] -match '^\s*Variables?:\s*') {
|
||||
if ($buffer[$k] -match '^\s*(?:\[(?:Variable|Variables)\]\([^\)]+\)|Variables?)\s*:\s*') {
|
||||
$metadataLineIndexes.Add($k)
|
||||
if ($buffer[$k] -eq $insertLine) {
|
||||
$hasCanonicalLine = $true
|
||||
|
||||
Reference in New Issue
Block a user