diff --git a/ApplicationView/ApplicationController.cs b/ApplicationView/ApplicationController.cs index 8c425e1c7..e54216021 100644 --- a/ApplicationView/ApplicationController.cs +++ b/ApplicationView/ApplicationController.cs @@ -181,7 +181,7 @@ namespace MatterHackers.MatterControl public class PrinterConfig { - public BedConfig BedPlate { get; } = new BedConfig(); + public BedConfig Bed { get; } = new BedConfig(); public PrinterViewState ViewState { get; } = new PrinterViewState(); public PrinterSettings Settings { get; private set; } @@ -194,10 +194,10 @@ namespace MatterHackers.MatterControl this.Settings = ActiveSliceSettings.Instance; // Reload - this.BedPlate.BuildHeight = this.Settings.GetValue(SettingsKey.build_height); - this.BedPlate.ViewerVolume = new Vector3(this.Settings.GetValue(SettingsKey.bed_size), this.BedPlate.BuildHeight); - this.BedPlate.BedCenter = this.Settings.GetValue(SettingsKey.print_center); - this.BedPlate.BedShape = this.Settings.GetValue(SettingsKey.bed_shape); + this.Bed.BuildHeight = this.Settings.GetValue(SettingsKey.build_height); + this.Bed.ViewerVolume = new Vector3(this.Settings.GetValue(SettingsKey.bed_size), this.Bed.BuildHeight); + this.Bed.BedCenter = this.Settings.GetValue(SettingsKey.print_center); + this.Bed.BedShape = this.Settings.GetValue(SettingsKey.bed_shape); }, ref unregisterEvents); } } diff --git a/PartPreviewWindow/GCode2DWidget.cs b/PartPreviewWindow/GCode2DWidget.cs index ce3a8636e..53ac68221 100644 --- a/PartPreviewWindow/GCode2DWidget.cs +++ b/PartPreviewWindow/GCode2DWidget.cs @@ -82,14 +82,14 @@ namespace MatterHackers.MatterControl.PartPreviewWindow private Vector2 unscaledRenderOffset = new Vector2(0, 0); - private GCodeFile loadedGCode => printer.BedPlate.LoadedGCode; + private GCodeFile loadedGCode => printer.Bed.LoadedGCode; private View3DConfig options; private PrinterConfig printer; public GCode2DWidget(Vector2 gridSizeMm, Vector2 gridCenterMm) { - options = ApplicationController.Instance.Printer.BedPlate.RendererOptions; + options = ApplicationController.Instance.Printer.Bed.RendererOptions; printer = ApplicationController.Instance.Printer; this.gridSizeMm = gridSizeMm; @@ -99,7 +99,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow this.LocalBounds = new RectangleDouble(0, 0, 100, 100); this.AnchorAll(); - printer.BedPlate.LoadedGCodeChanged += BedPlate_LoadedGCodeChanged; + printer.Bed.LoadedGCodeChanged += BedPlate_LoadedGCodeChanged; } private void BedPlate_LoadedGCodeChanged(object sender, EventArgs e) @@ -141,7 +141,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow { if (firstExtrusionIndex < loadedGCode.GetInstructionIndexAtLayer(layerIndex)) { - printer.BedPlate.ActiveLayerIndex = Math.Max(0, layerIndex - 1); + printer.Bed.ActiveLayerIndex = Math.Max(0, layerIndex - 1); break; } } @@ -181,11 +181,11 @@ namespace MatterHackers.MatterControl.PartPreviewWindow } } - var activeOptions = printer.BedPlate.RenderInfo; + var activeOptions = printer.Bed.RenderInfo; var renderInfo = new GCodeRenderInfo( - printer.BedPlate.ActiveLayerIndex, - printer.BedPlate.ActiveLayerIndex, + printer.Bed.ActiveLayerIndex, + printer.Bed.ActiveLayerIndex, transform, layerScale, activeOptions.FeatureToStartOnRatio0To1, @@ -194,7 +194,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow activeOptions.GetRenderType, activeOptions.GetMaterialColor); - printer.BedPlate.GCodeRenderer?.Render(graphics2D, renderInfo); + printer.Bed.GCodeRenderer?.Render(graphics2D, renderInfo); } } @@ -386,8 +386,8 @@ namespace MatterHackers.MatterControl.PartPreviewWindow public override void OnClosed(ClosedEventArgs e) { - printer.BedPlate.GCodeRenderer?.Dispose(); - printer.BedPlate.LoadedGCodeChanged -= BedPlate_LoadedGCodeChanged; + printer.Bed.GCodeRenderer?.Dispose(); + printer.Bed.LoadedGCodeChanged -= BedPlate_LoadedGCodeChanged; base.OnClosed(e); } @@ -407,7 +407,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow { layerScale = layerScale * (Width / oldWidth); } - else if (printer.BedPlate.GCodeRenderer != null) + else if (printer.Bed.GCodeRenderer != null) { CenterPartInView(); } diff --git a/PartPreviewWindow/PrinterTabPage.cs b/PartPreviewWindow/PrinterTabPage.cs index 6591e32c9..ee4c58dee 100644 --- a/PartPreviewWindow/PrinterTabPage.cs +++ b/PartPreviewWindow/PrinterTabPage.cs @@ -72,12 +72,12 @@ namespace MatterHackers.MatterControl.PartPreviewWindow var theme = ApplicationController.Instance.Theme; - gcodeOptions = printer.BedPlate.RendererOptions; + gcodeOptions = printer.Bed.RendererOptions; this.BackgroundColor = theme.TabBodyBackground; this.Padding = 0; - viewControls3D = new ViewControls3D(theme, printer.BedPlate.Scene.UndoBuffer) + viewControls3D = new ViewControls3D(theme, printer.Bed.Scene.UndoBuffer) { PartSelectVisible = false, VAnchor = VAnchor.Top | VAnchor.Fit | VAnchor.Absolute, @@ -151,10 +151,10 @@ namespace MatterHackers.MatterControl.PartPreviewWindow selectLayerSlider.ValueChanged += (s, e) => { // TODO: Why would these need to be updated here as well as in the horizontal slider? - printer.BedPlate.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; - printer.BedPlate.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; + printer.Bed.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; + printer.Bed.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; - printer.BedPlate.ActiveLayerIndex = (int)(selectLayerSlider.Value + .5); + printer.Bed.ActiveLayerIndex = (int)(selectLayerSlider.Value + .5); // show the layer info next to the slider @@ -165,16 +165,16 @@ namespace MatterHackers.MatterControl.PartPreviewWindow layerRenderRatioSlider.FirstValue = 0; layerRenderRatioSlider.FirstValueChanged += (s, e) => { - printer.BedPlate.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; - printer.BedPlate.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; + printer.Bed.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; + printer.Bed.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; this.Invalidate(); }; layerRenderRatioSlider.SecondValue = 1; layerRenderRatioSlider.SecondValueChanged += (s, e) => { - printer.BedPlate.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; - printer.BedPlate.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; + printer.Bed.RenderInfo.FeatureToStartOnRatio0To1 = layerRenderRatioSlider.FirstValue; + printer.Bed.RenderInfo.FeatureToEndOnRatio0To1 = layerRenderRatioSlider.SecondValue; this.Invalidate(); }; @@ -230,17 +230,17 @@ namespace MatterHackers.MatterControl.PartPreviewWindow currentLayerInfo.EditComplete += (s, e) => { - printer.BedPlate.ActiveLayerIndex = (int)currentLayerInfo.Value - 1; + printer.Bed.ActiveLayerIndex = (int)currentLayerInfo.Value - 1; }; - printer.BedPlate.ActiveLayerChanged += SetPositionAndValue; + printer.Bed.ActiveLayerChanged += SetPositionAndValue; selectLayerSlider.MouseEnter += SetPositionAndValue; currentLayerInfo.Visible = false; view3DContainer.AddChild(currentLayerInfo); - printer.BedPlate.ActiveLayerChanged += ActiveLayer_Changed; + printer.Bed.ActiveLayerChanged += ActiveLayer_Changed; AddSettingsTabBar(leftToRight, modelViewer); @@ -259,7 +259,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow modelViewer.World.TranslationMatrix = ApplicationController.Instance.PartPreviewState.TranslationMatrix; } - printer.BedPlate.LoadedGCodeChanged += BedPlate_LoadedGCodeChanged; + printer.Bed.LoadedGCodeChanged += BedPlate_LoadedGCodeChanged; this.ShowSliceLayers = false; @@ -274,7 +274,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow { UiThread.RunOnIdle(() => { - currentLayerInfo.Value = printer.BedPlate.ActiveLayerIndex; + currentLayerInfo.Value = printer.Bed.ActiveLayerIndex; //currentLayerInfo.DebugShowBounds = true; currentLayerInfo.OriginRelativeParent = selectLayerSlider.OriginRelativeParent + new Vector2(-currentLayerInfo.Width - 10, selectLayerSlider.PositionPixelsFromFirstValue - currentLayerInfo.Height / 2); @@ -284,7 +284,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow private void BedPlate_LoadedGCodeChanged(object sender, EventArgs e) { - var layerCount = printer.BedPlate.LoadedGCode.LayerCount; + var layerCount = printer.Bed.LoadedGCode.LayerCount; selectLayerSlider.Maximum = layerCount - 1; layerCountText.Text = layerCount.ToString(); @@ -292,7 +292,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow layerStartText.Visible = true; // ResetRenderInfo - printer.BedPlate.RenderInfo = new GCodeRenderInfo( + printer.Bed.RenderInfo = new GCodeRenderInfo( 0, 1, Agg.Transform.Affine.NewIdentity(), @@ -310,10 +310,10 @@ namespace MatterHackers.MatterControl.PartPreviewWindow // Close and remove any existing widget reference gcode2DWidget?.Close(); - var viewerVolume = printer.BedPlate.ViewerVolume; + var viewerVolume = printer.Bed.ViewerVolume; // Create and append new widget - gcode2DWidget = new GCode2DWidget(new Vector2(viewerVolume.x, viewerVolume.y), printer.BedPlate.BedCenter) + gcode2DWidget = new GCode2DWidget(new Vector2(viewerVolume.x, viewerVolume.y), printer.Bed.BedCenter) { Visible = (this.ViewMode == PartViewMode.Layers2D) }; @@ -381,7 +381,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow sideBar.AddPage("Terminal".Localize(), terminalControls); } - private GCodeFile loadedGCode => printer.BedPlate.LoadedGCode; + private GCodeFile loadedGCode => printer.Bed.LoadedGCode; private bool showSliceLayers; private bool ShowSliceLayers @@ -399,7 +399,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow modelViewer.Scene.ClearSelection(); } - var slidersVisible = printer.BedPlate.RenderInfo != null && value; + var slidersVisible = printer.Bed.RenderInfo != null && value; selectLayerSlider.Visible = slidersVisible; layerRenderRatioSlider.Visible = slidersVisible; @@ -478,10 +478,10 @@ namespace MatterHackers.MatterControl.PartPreviewWindow switch (keyEvent.KeyCode) { case Keys.Up: - printer.BedPlate.ActiveLayerIndex += 1; + printer.Bed.ActiveLayerIndex += 1; break; case Keys.Down: - printer.BedPlate.ActiveLayerIndex -= 1; + printer.Bed.ActiveLayerIndex -= 1; break; } } @@ -513,10 +513,10 @@ namespace MatterHackers.MatterControl.PartPreviewWindow parentSystemWindow.KeyDown -= Parent_KeyDown; } - printer.BedPlate.ActiveLayerChanged -= ActiveLayer_Changed; - printer.BedPlate.LoadedGCodeChanged -= BedPlate_LoadedGCodeChanged; + printer.Bed.ActiveLayerChanged -= ActiveLayer_Changed; + printer.Bed.LoadedGCodeChanged -= BedPlate_LoadedGCodeChanged; - printer.BedPlate.ActiveLayerChanged -= SetPositionAndValue; + printer.Bed.ActiveLayerChanged -= SetPositionAndValue; selectLayerSlider.MouseEnter -= SetPositionAndValue; base.OnClosed(e); @@ -682,9 +682,9 @@ namespace MatterHackers.MatterControl.PartPreviewWindow private void ActiveLayer_Changed(object sender, EventArgs e) { if (selectLayerSlider != null - && printer.BedPlate.ActiveLayerIndex != (int)(selectLayerSlider.Value + .5)) + && printer.Bed.ActiveLayerIndex != (int)(selectLayerSlider.Value + .5)) { - selectLayerSlider.Value = printer.BedPlate.ActiveLayerIndex; + selectLayerSlider.Value = printer.Bed.ActiveLayerIndex; } } diff --git a/PartPreviewWindow/View3D/MeshViewerWidget.cs b/PartPreviewWindow/View3D/MeshViewerWidget.cs index 45f712930..e048e2561 100644 --- a/PartPreviewWindow/View3D/MeshViewerWidget.cs +++ b/PartPreviewWindow/View3D/MeshViewerWidget.cs @@ -88,7 +88,7 @@ namespace MatterHackers.MeshVisualizer public MeshViewerWidget(PrinterConfig printer, TrackballTumbleWidget trackballTumbleWidget, InteractionLayer interactionLayer, string startingTextMessage = "") { - this.scene = printer.BedPlate.Scene; + this.scene = printer.Bed.Scene; var activePrintItem = ApplicationController.Instance.ActivePrintItem; @@ -296,18 +296,18 @@ namespace MatterHackers.MeshVisualizer public void CreatePrintBed(PrinterConfig printer) { - if (bedCenter == printer.BedPlate.BedCenter - && bedShape == printer.BedPlate.BedShape - && viewerVolume == printer.BedPlate.ViewerVolume + if (bedCenter == printer.Bed.BedCenter + && bedShape == printer.Bed.BedShape + && viewerVolume == printer.Bed.ViewerVolume && BedImage != null && buildVolume != null) { return; } - bedCenter = printer.BedPlate.BedCenter; - bedShape = printer.BedPlate.BedShape; - viewerVolume = printer.BedPlate.ViewerVolume; + bedCenter = printer.Bed.BedCenter; + bedShape = printer.Bed.BedShape; + viewerVolume = printer.Bed.ViewerVolume; Vector3 displayVolumeToBuild = Vector3.ComponentMax(viewerVolume, new Vector3(1, 1, 1)); diff --git a/PartPreviewWindow/View3D/PrinterActionsBar.cs b/PartPreviewWindow/View3D/PrinterActionsBar.cs index b12086532..fc2dcc77f 100644 --- a/PartPreviewWindow/View3D/PrinterActionsBar.cs +++ b/PartPreviewWindow/View3D/PrinterActionsBar.cs @@ -121,7 +121,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow gcodeLoadCancellationTokenSource = new CancellationTokenSource(); - ApplicationController.Instance.Printer.BedPlate.LoadGCode(printItem.GetGCodePathAndFileName(), gcodeLoadCancellationTokenSource.Token, printerTabPage.modelViewer.gcodeViewer.LoadProgress_Changed); + ApplicationController.Instance.Printer.Bed.LoadGCode(printItem.GetGCodePathAndFileName(), gcodeLoadCancellationTokenSource.Token, printerTabPage.modelViewer.gcodeViewer.LoadProgress_Changed); sliceProgressReporter.EndReporting(); printerTabPage.ViewMode = PartViewMode.Layers3D; diff --git a/PartPreviewWindow/View3D/SceneActions.cs b/PartPreviewWindow/View3D/SceneActions.cs index 624ef8643..3626aba99 100644 --- a/PartPreviewWindow/View3D/SceneActions.cs +++ b/PartPreviewWindow/View3D/SceneActions.cs @@ -209,8 +209,8 @@ namespace MatterHackers.MatterControl.PartPreviewWindow var center = aabb.Center; newItem.Matrix *= Matrix4X4.CreateTranslation( - (printer.BedPlate.BedCenter.x + center.x), - (printer.BedPlate.BedCenter.y + center.y), + (printer.Bed.BedCenter.x + center.x), + (printer.Bed.BedCenter.y + center.y), -aabb.minXYZ.z); } diff --git a/PartPreviewWindow/View3D/View3DWidget.cs b/PartPreviewWindow/View3D/View3DWidget.cs index 888b928f8..888085410 100644 --- a/PartPreviewWindow/View3D/View3DWidget.cs +++ b/PartPreviewWindow/View3D/View3DWidget.cs @@ -124,7 +124,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow private PrinterConfig printer; // TODO: Make dynamic - public WorldView World { get; } = ApplicationController.Instance.Printer.BedPlate.World; + public WorldView World { get; } = ApplicationController.Instance.Printer.Bed.World; public TrackballTumbleWidget TrackballTumbleWidget { get; } @@ -135,9 +135,9 @@ namespace MatterHackers.MatterControl.PartPreviewWindow public View3DWidget(PrintItemWrapper printItemWrapper, PrinterConfig printer, WindowMode windowType, AutoRotate autoRotate, ViewControls3D viewControls3D, ThemeConfig theme, OpenMode openMode = OpenMode.Viewing) { this.printer = printer; - this.Scene = this.printer.BedPlate.Scene; + this.Scene = this.printer.Bed.Scene; - this.TrackballTumbleWidget = new TrackballTumbleWidget(ApplicationController.Instance.Printer.BedPlate.World) + this.TrackballTumbleWidget = new TrackballTumbleWidget(ApplicationController.Instance.Printer.Bed.World) { TransformState = TrackBallController.MouseDownType.Rotation }; @@ -183,9 +183,9 @@ namespace MatterHackers.MatterControl.PartPreviewWindow // The slice layers view gcodeViewer = new ViewGcodeBasic( - printer.BedPlate.ViewerVolume, - printer.BedPlate.BedCenter, - printer.BedPlate.BedShape, + printer.Bed.ViewerVolume, + printer.Bed.BedCenter, + printer.Bed.BedShape, viewControls3D); gcodeViewer.AnchorAll(); this.gcodeViewer.Visible = false; @@ -549,12 +549,12 @@ namespace MatterHackers.MatterControl.PartPreviewWindow // This shows the BVH as rects around the scene items //Scene?.TraceData().RenderBvhRecursive(0, 3); - if (gcodeViewer?.loadedGCode == null || printer.BedPlate.GCodeRenderer == null || !gcodeViewer.Visible) + if (gcodeViewer?.loadedGCode == null || printer.Bed.GCodeRenderer == null || !gcodeViewer.Visible) { return; } - printer.BedPlate.Render3DLayerFeatures(); + printer.Bed.Render3DLayerFeatures(); } public override void OnKeyDown(KeyEventArgs keyEvent) @@ -1468,7 +1468,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow world.Reset(); world.Scale = .03; - world.Translate(-new Vector3(printer.BedPlate.BedCenter)); + world.Translate(-new Vector3(printer.Bed.BedCenter)); world.Rotate(Quaternion.FromEulerAngles(new Vector3(0, 0, MathHelper.Tau / 16))); world.Rotate(Quaternion.FromEulerAngles(new Vector3(-MathHelper.Tau * .19, 0, 0))); } diff --git a/PartPreviewWindow/ViewGcodeBasic.cs b/PartPreviewWindow/ViewGcodeBasic.cs index 9c12fa9a7..0866dba59 100644 --- a/PartPreviewWindow/ViewGcodeBasic.cs +++ b/PartPreviewWindow/ViewGcodeBasic.cs @@ -84,16 +84,16 @@ namespace MatterHackers.MatterControl.PartPreviewWindow { if (stringEvent.Data == "extruder_offset") { - printer.BedPlate.GCodeRenderer.Clear3DGCode(); + printer.Bed.GCodeRenderer.Clear3DGCode(); } } }, ref unregisterEvents); // TODO: Why do we clear GCode on AdvancedControlsPanelReloading - assume some slice settings should invalidate. If so, code should be more specific and bound to slice settings changed - ApplicationController.Instance.AdvancedControlsPanelReloading.RegisterEvent((s, e) => printer.BedPlate.GCodeRenderer?.Clear3DGCode(), ref unregisterEvents); + ApplicationController.Instance.AdvancedControlsPanelReloading.RegisterEvent((s, e) => printer.Bed.GCodeRenderer?.Clear3DGCode(), ref unregisterEvents); } - internal GCodeFile loadedGCode => printer.BedPlate.LoadedGCode; + internal GCodeFile loadedGCode => printer.Bed.LoadedGCode; internal void CreateAndAddChildren() { @@ -152,7 +152,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow Margin = new BorderDouble(top: 55, left: 11), HAnchor = HAnchor.Fit | HAnchor.Left, VAnchor = VAnchor.Top, - Visible = printer.BedPlate.RendererOptions.RenderSpeeds + Visible = printer.Bed.RendererOptions.RenderSpeeds }; AddChild(gradientWidget); diff --git a/Tests/MatterControl.AutomationTests/SliceSettingsTests.cs b/Tests/MatterControl.AutomationTests/SliceSettingsTests.cs index 34540505e..2427c306c 100644 --- a/Tests/MatterControl.AutomationTests/SliceSettingsTests.cs +++ b/Tests/MatterControl.AutomationTests/SliceSettingsTests.cs @@ -141,9 +141,9 @@ namespace MatterHackers.MatterControl.Tests.Automation var printer = ApplicationController.Instance.Printer; - testRunner.Delay(() => printer.BedPlate.ActiveLayerIndex + 1 == indexToWaitFor, 30, 500); + testRunner.Delay(() => printer.Bed.ActiveLayerIndex + 1 == indexToWaitFor, 30, 500); - Assert.AreEqual(indexToWaitFor, printer.BedPlate.ActiveLayerIndex + 1); + Assert.AreEqual(indexToWaitFor, printer.Bed.ActiveLayerIndex + 1); testRunner.ClickByName("Resume Button"); testRunner.Delay(.1); } diff --git a/TextCreator/Text/TextGenerator.cs b/TextCreator/Text/TextGenerator.cs index 482bc4ecb..2af3b3461 100644 --- a/TextCreator/Text/TextGenerator.cs +++ b/TextCreator/Text/TextGenerator.cs @@ -176,7 +176,7 @@ namespace MatterHackers.MatterControl.Plugins.TextCreator { if (group.HasChildren) { - var bedCenter = ApplicationController.Instance.Printer.BedPlate.BedCenter; + var bedCenter = ApplicationController.Instance.Printer.Bed.BedCenter; int i = 0; foreach (var sceneItem in group.Children) @@ -202,7 +202,7 @@ namespace MatterHackers.MatterControl.Plugins.TextCreator // take out the last scale double oldSize = 1.0 / lastSizeValue; - Vector3 bedCenter = new Vector3(ApplicationController.Instance.Printer.BedPlate.BedCenter); + Vector3 bedCenter = new Vector3(ApplicationController.Instance.Printer.Bed.BedCenter); if (group.HasChildren) { foreach (var object3D in group.Children)