Cleaned up the GetRenderType call to eventually improve the 3d gcode layer creation speed

Made setting the extruder temp to 0 suppress outputting M109
This commit is contained in:
larsbrubaker 2014-08-29 10:45:21 -07:00
parent 5454316591
commit 9bbd272467
2 changed files with 20 additions and 6 deletions

View file

@ -260,7 +260,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
AddHandlers();
}
void TrackballTumbleWidget_DrawGlContent(object sender, EventArgs e)
RenderType GetRenderType()
{
RenderType renderType = RenderType.Extrusions;
if (gcodeViewWidget.RenderMoves)
@ -280,8 +280,13 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
renderType |= RenderType.SimulateExtrusion;
}
return renderType;
}
void TrackballTumbleWidget_DrawGlContent(object sender, EventArgs e)
{
GCodeRenderer.ExtrusionColor = ActiveTheme.Instance.PrimaryAccentColor;
gcodeViewWidget.gCodeRenderer.Render3D(0, Math.Min(gcodeViewWidget.ActiveLayerIndex + 1, gcodeViewWidget.LoadedGCode.NumChangesInZ), gcodeViewWidget.TotalTransform, 1, renderType,
gcodeViewWidget.gCodeRenderer.Render3D(0, Math.Min(gcodeViewWidget.ActiveLayerIndex + 1, gcodeViewWidget.LoadedGCode.NumChangesInZ), gcodeViewWidget.TotalTransform, 1, GetRenderType(),
gcodeViewWidget.FeatureToStartOnRatio0To1, gcodeViewWidget.FeatureToEndOnRatio0To1);
}

View file

@ -140,8 +140,13 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
string setBedTempString = string.Format("M190 S{0}", bed_temperature);
AddDefaultIfNotPresent(preStartGCode, setBedTempString, preStartGCodeLines, "wait for bed temperature to be reached");
}
string setTempString = string.Format("M104 S{0}", ActiveSliceSettings.Instance.GetActiveValue("temperature"));
AddDefaultIfNotPresent(preStartGCode, setTempString, preStartGCodeLines, "set temperature");
string extruderTemperature = ActiveSliceSettings.Instance.GetActiveValue("temperature");
if (extruderTemperature != "0")
{
string setTempString = string.Format("M104 S{0}", extruderTemperature);
AddDefaultIfNotPresent(preStartGCode, setTempString, preStartGCodeLines, "set temperature");
}
preStartGCode.Add("; settings from start_gcode");
return preStartGCode;
@ -154,8 +159,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
List<string> postStartGCode = new List<string>();
postStartGCode.Add("; automatic settings after start_gcode");
string setTempString = "M109 S{0}".FormatWith(ActiveSliceSettings.Instance.GetActiveValue("temperature"));
AddDefaultIfNotPresent(postStartGCode, setTempString, postStartGCodeLines, "wait for temperature");
string extruderTemperature = ActiveSliceSettings.Instance.GetActiveValue("temperature");
if (extruderTemperature != "0")
{
string setTempString = "M109 S{0}".FormatWith(extruderTemperature);
AddDefaultIfNotPresent(postStartGCode, setTempString, postStartGCodeLines, "wait for temperature");
}
AddDefaultIfNotPresent(postStartGCode, "G90", postStartGCodeLines, "use absolute coordinates");
postStartGCode.Add(string.Format("{0} ; {1}", "G92 E0", "reset the expected extruder position"));
AddDefaultIfNotPresent(postStartGCode, "M82", postStartGCodeLines, "use absolute distance for extrusion");