mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-21 21:58:01 -06:00
Removed the rather hacky implementation of the shrinkage factor averaging. Issues with dual extrusion were the second extruder is not used should solved in a different way.
Relates to PP-77
This commit is contained in:
parent
733447a2dd
commit
0a8ef5162e
4 changed files with 43 additions and 22 deletions
|
@ -383,7 +383,7 @@ class ConvexHullDecorator(SceneNodeDecorator):
|
||||||
# Shrinkage compensation.
|
# Shrinkage compensation.
|
||||||
if not self._global_stack: # Should never happen.
|
if not self._global_stack: # Should never happen.
|
||||||
return convex_hull
|
return convex_hull
|
||||||
scale_factor = self._global_stack.getProperty("material_shrinkage_percentage_xy", "value") / 100.0
|
scale_factor = self._global_stack.getProperty("material_shrinkage_percentage", "value") / 100.0
|
||||||
result = convex_hull
|
result = convex_hull
|
||||||
if scale_factor != 1.0 and not self.getNode().callDecoration("isGroup"):
|
if scale_factor != 1.0 and not self.getNode().callDecoration("isGroup"):
|
||||||
center = None
|
center = None
|
||||||
|
|
|
@ -139,4 +139,4 @@ class ModelChecker(QObject, Extension):
|
||||||
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||||
if global_container_stack is None:
|
if global_container_stack is None:
|
||||||
return 100
|
return 100
|
||||||
return max(global_container_stack.getProperty("material_shrinkage_percentage_xy", "value"), global_container_stack.getProperty("material_shrinkage_percentage_z", "value"))
|
return global_container_stack.getProperty("material_shrinkage_percentage", "value")
|
||||||
|
|
|
@ -2527,35 +2527,55 @@
|
||||||
"settable_per_mesh": false,
|
"settable_per_mesh": false,
|
||||||
"settable_per_extruder": true
|
"settable_per_extruder": true
|
||||||
},
|
},
|
||||||
"material_shrinkage_percentage_xy":
|
"material_shrinkage_percentage":
|
||||||
{
|
{
|
||||||
"label": "Horizontal Scaling Factor Shrinkage Compensation",
|
"label": "Scaling Factor Shrinkage Compensation",
|
||||||
"description": "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor in the XY-direction (horizontally).",
|
"description": "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor.",
|
||||||
"unit": "%",
|
"unit": "%",
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"default_value": null,
|
"default_value": 100.0,
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"minimum_value": "0.001",
|
"minimum_value": "0.001",
|
||||||
"minimum_value_warning": "100",
|
"minimum_value_warning": "100",
|
||||||
"maximum_value_warning": "120",
|
"maximum_value_warning": "120",
|
||||||
"settable_per_mesh": false,
|
"settable_per_mesh": false,
|
||||||
"settable_per_extruder": false,
|
"settable_per_extruder": false,
|
||||||
"resolve": "100 if sum(1 if s != None else 0 for s in extruderValues('material_shrinkage_percentage_xy')) == 0 else sum(s if s != None else 0 for s in extruderValues('material_shrinkage_percentage_xy'))/sum(1 if s != None else 0 for s in extruderValues('material_shrinkage_percentage_xy'))"
|
"resolve": "sum(extruderValues(\"material_shrinkage_percentage\")) / len(extruderValues(\"material_shrinkage_percentage\"))",
|
||||||
},
|
"children":
|
||||||
"material_shrinkage_percentage_z":
|
{
|
||||||
{
|
"material_shrinkage_percentage_xy":
|
||||||
"label": "Vertical Scaling Factor Shrinkage Compensation",
|
{
|
||||||
"description": "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor in the Z-direction (vertically).",
|
"label": "Horizontal Scaling Factor Shrinkage Compensation",
|
||||||
"unit": "%",
|
"description": "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor in the XY-direction (horizontally).",
|
||||||
"type": "float",
|
"unit": "%",
|
||||||
"default_value": null,
|
"type": "float",
|
||||||
"enabled": true,
|
"default_value": 100.0,
|
||||||
"minimum_value": "0.001",
|
"enabled": true,
|
||||||
"minimum_value_warning": "100",
|
"minimum_value": "0.001",
|
||||||
"maximum_value_warning": "120",
|
"minimum_value_warning": "100",
|
||||||
"settable_per_mesh": false,
|
"maximum_value_warning": "120",
|
||||||
"settable_per_extruder": false,
|
"settable_per_mesh": false,
|
||||||
"resolve": "100 if sum(1 if s != None else 0 for s in extruderValues('material_shrinkage_percentage_z')) == 0 else sum(s if s != None else 0 for s in extruderValues('material_shrinkage_percentage_z'))/sum(1 if s != None else 0 for s in extruderValues('material_shrinkage_percentage_z'))"
|
"settable_per_extruder": false,
|
||||||
|
"resolve": "sum(extruderValues(\"material_shrinkage_percentage_xy\")) / len(extruderValues(\"material_shrinkage_percentage_xy\"))",
|
||||||
|
"value": "material_shrinkage_percentage"
|
||||||
|
},
|
||||||
|
"material_shrinkage_percentage_z":
|
||||||
|
{
|
||||||
|
"label": "Vertical Scaling Factor Shrinkage Compensation",
|
||||||
|
"description": "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor in the Z-direction (vertically).",
|
||||||
|
"unit": "%",
|
||||||
|
"type": "float",
|
||||||
|
"default_value": 100.0,
|
||||||
|
"enabled": true,
|
||||||
|
"minimum_value": "0.001",
|
||||||
|
"minimum_value_warning": "100",
|
||||||
|
"maximum_value_warning": "120",
|
||||||
|
"settable_per_mesh": false,
|
||||||
|
"settable_per_extruder": false,
|
||||||
|
"resolve": "sum(extruderValues(\"material_shrinkage_percentage_z\")) / len(extruderValues(\"material_shrinkage_percentage_z\"))",
|
||||||
|
"value": "material_shrinkage_percentage"
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"material_crystallinity":
|
"material_crystallinity":
|
||||||
{
|
{
|
||||||
|
|
|
@ -117,6 +117,7 @@ material_bed_temperature
|
||||||
material_bed_temperature_layer_0
|
material_bed_temperature_layer_0
|
||||||
material_adhesion_tendency
|
material_adhesion_tendency
|
||||||
material_surface_energy
|
material_surface_energy
|
||||||
|
material_shrinkage_percentage
|
||||||
material_shrinkage_percentage_xy
|
material_shrinkage_percentage_xy
|
||||||
material_shrinkage_percentage_z
|
material_shrinkage_percentage_z
|
||||||
material_flow
|
material_flow
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue