mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-20 11:53:48 +00:00
Updated Wiki content
@@ -12,6 +12,7 @@ Flow ratio and pressure advance settings for the selected material.
|
|||||||
|
|
||||||
## Flow Ratio
|
## 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 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 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.
|
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
|
## Adaptive volumetric speed
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `filament_adaptive_volumetric_speed`.
|
||||||
> [!WARNING]
|
> [!WARNING]
|
||||||
> Experimental and incomplete feature imported from BBS.
|
> Experimental and incomplete feature imported from BBS.
|
||||||
> Functional for some profiles that already have the variable saved.
|
> 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
|
## 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.
|
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
|
## 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.
|
Enable long retraction when the extruder changes and set its retraction distance value for extruder changes.
|
||||||
|
|
||||||
## Tool change parameters with single extruder
|
## Tool change parameters with single extruder
|
||||||
|
|||||||
@@ -4,16 +4,20 @@ This section contains the basic information about the extruder.
|
|||||||
|
|
||||||
## Nozzle diameter
|
## Nozzle diameter
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `nozzle_diameter[extruder_idx]`.
|
||||||
The diameter of nozzle.
|
The diameter of nozzle.
|
||||||
|
|
||||||
## Nozzle volume
|
## Nozzle volume
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `nozzle_volume[extruder_idx]`.
|
||||||
Volume of nozzle between the filament cutter and the end of the nozzle
|
Volume of nozzle between the filament cutter and the end of the nozzle
|
||||||
|
|
||||||
## Extruder Layer Height Limits
|
## 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.
|
Min and max layer height limits for the extruder. These settings are used when adaptive layer height is enabled.
|
||||||
|
|
||||||
## Extruder offset Position
|
## 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).
|
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
|
## 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).
|
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
|
## 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.
|
When the retraction is compensated after changing tool, the extruder will push this additional amount of filament.
|
||||||
|
|
||||||
## Retraction speed
|
## Retraction speed
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `retraction_speed[extruder_idx]`.
|
||||||
Speed for retracting filament from the nozzle.
|
Speed for retracting filament from the nozzle.
|
||||||
|
|
||||||
## Deretraction speed
|
## Deretraction speed
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `deretraction_speed[extruder_idx]`.
|
||||||
Speed for reloading filament into the nozzle. Zero means same speed of retraction.
|
Speed for reloading filament into the nozzle. Zero means same speed of retraction.
|
||||||
|
|
||||||
## Travel distance threshold
|
## 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.
|
Only trigger retraction when the travel distance is longer than this threshold.
|
||||||
|
|
||||||
## Retract on layer change
|
## Retract on layer change
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `retract_when_changing_layer[extruder_idx]`.
|
||||||
This forces a retraction on layer changes.
|
This forces a retraction on layer changes.
|
||||||
|
|
||||||
## Wipe while retracting
|
## 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.
|
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
|
## Wipe distance
|
||||||
|
|
||||||
|
[Variable](Built-in-placeholders-variables): `wipe_distance[extruder_idx]`.
|
||||||
Describe how long the nozzle will move along the last path when retracting.
|
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.
|
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.
|
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
|
## 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.
|
This is the length of fast retraction before a wipe, relative to retraction length.
|
||||||
|
|
||||||
## Retraction When Switching Materials
|
## 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.
|
Retraction settings specifically for material changes during tool changes in multi-material prints.
|
||||||
|
|
||||||
### Long retraction when cut (beta)
|
### 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.
|
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
|
## 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).
|
Enforce Z-Hop behavior. This setting is impacted by the above settings (Only lift Z above/below).
|
||||||
|
|
||||||
## Z-hop type
|
## 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
|
- 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.
|
- 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.
|
- 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
|
## 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.
|
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
|
## 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.
|
Traveling angle for Slope and Spiral Z-hop type. Setting it to 90° results in Normal Lift.
|
||||||
|
|
||||||
## Only lift Z above
|
## 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.
|
If you set this to a positive value, Z lift will only take place above the specified absolute Z.
|
||||||
|
|
||||||
## Only lift Z below
|
## 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.
|
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
|
### 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)
|
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
|
$tabContent = Get-TabCppContent -Source $TabCppPath
|
||||||
|
|
||||||
$patternSingle = 'append_single_option_line\(\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*\)'
|
$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*;'
|
$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>.*?)\}'
|
$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]
|
$rawEntries = New-Object System.Collections.Generic.List[object]
|
||||||
|
|
||||||
foreach ($m in $singleMatches) {
|
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]@{
|
$rawEntries.Add([PSCustomObject]@{
|
||||||
Variable = $m.Groups['variable'].Value.Trim()
|
Variable = $variable
|
||||||
Ref = $m.Groups['ref'].Value.Trim()
|
Ref = $m.Groups['ref'].Value.Trim()
|
||||||
Index = [int]$m.Index
|
Index = [int]$m.Index
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($m in $optionMatches) {
|
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]@{
|
$rawEntries.Add([PSCustomObject]@{
|
||||||
Variable = $m.Groups['variable'].Value.Trim()
|
Variable = $variable
|
||||||
Ref = $m.Groups['ref'].Value.Trim()
|
Ref = $m.Groups['ref'].Value.Trim()
|
||||||
Index = [int]$m.Index
|
Index = [int]$m.Index
|
||||||
})
|
})
|
||||||
@@ -298,7 +310,7 @@ foreach ($group in $groupedByFile) {
|
|||||||
$hasCanonicalLine = $false
|
$hasCanonicalLine = $false
|
||||||
|
|
||||||
for ($k = $idx + 1; $k -le $sectionEnd; $k++) {
|
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)
|
$metadataLineIndexes.Add($k)
|
||||||
if ($buffer[$k] -eq $insertLine) {
|
if ($buffer[$k] -eq $insertLine) {
|
||||||
$hasCanonicalLine = $true
|
$hasCanonicalLine = $true
|
||||||
|
|||||||
Reference in New Issue
Block a user