commit
6ff1c4fdf8
25 changed files with 215 additions and 1477 deletions
|
|
@ -169,6 +169,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
SettingsKey.material_color_1,
|
||||
SettingsKey.material_color_2,
|
||||
SettingsKey.material_color_3,
|
||||
SettingsKey.material_sku,
|
||||
SettingsKey.material_url,
|
||||
SettingsKey.measure_probe_offset_conductively,
|
||||
SettingsKey.model,
|
||||
SettingsKey.number_of_first_layers,
|
||||
|
|
|
|||
|
|
@ -164,6 +164,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
public const string material_color_1 = nameof(material_color_1);
|
||||
public const string material_color_2 = nameof(material_color_2);
|
||||
public const string material_color_3 = nameof(material_color_3);
|
||||
public const string material_sku = nameof(material_sku);
|
||||
public const string material_url = nameof(material_url);
|
||||
public const string max_acceleration = nameof(max_acceleration);
|
||||
public const string max_fan_speed = nameof(max_fan_speed);
|
||||
public const string max_fan_speed_layer_time = nameof(max_fan_speed_layer_time);
|
||||
|
|
|
|||
|
|
@ -63,7 +63,6 @@
|
|||
<None Include="App.config" />
|
||||
<None Include="appsettings.json" />
|
||||
<None Include="StaticData\License\license.json" />
|
||||
<None Include="StaticData\OEMSettings\ExploreFeed.json" />
|
||||
<None Include="StaticData\OEMSettings\OEMUrls.json" />
|
||||
<None Include="StaticData\OEMSettings\Printers.json" />
|
||||
<None Include="StaticData\OEMSettings\Settings.json" />
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
rootNode.TreeView = treeView;
|
||||
rootNode.Load += (s, e) =>
|
||||
{
|
||||
var image = OemSettings.Instance.GetIcon(oem.Key);
|
||||
var image = OemSettings.Instance.GetIcon(oem.Key, theme);
|
||||
|
||||
SetImage(rootNode, image);
|
||||
};
|
||||
|
|
@ -130,7 +130,7 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
printerInfo = new FlowLayoutWidget()
|
||||
{
|
||||
HAnchor = HAnchor.Stretch,
|
||||
VAnchor = VAnchor.Fit
|
||||
VAnchor = VAnchor.Stretch
|
||||
};
|
||||
|
||||
nameSection.BackgroundColor = theme.MinimalShade;
|
||||
|
|
@ -144,20 +144,10 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
Margin = new BorderDouble(top: 3)
|
||||
});
|
||||
|
||||
var scrollable = new ScrollableWidget(autoScroll: true)
|
||||
{
|
||||
HAnchor = HAnchor.Stretch,
|
||||
VAnchor = VAnchor.Stretch,
|
||||
};
|
||||
|
||||
scrollable.ScrollArea.HAnchor = HAnchor.Stretch;
|
||||
|
||||
// Padding allows space for scrollbar
|
||||
printerInfo.Padding = new BorderDouble(right: theme.DefaultContainerPadding + 2);
|
||||
|
||||
scrollable.AddChild(printerInfo);
|
||||
|
||||
panel2Column.AddChild(scrollable);
|
||||
panel2Column.AddChild(printerInfo);
|
||||
|
||||
horizontalSplitter.Panel2.Padding = horizontalSplitter.Panel2.Padding.Clone(right: 0, bottom: 0);
|
||||
|
||||
|
|
@ -361,7 +351,7 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
ShowHeadingRow = false,
|
||||
StoreID = storePrinterID?.SID,
|
||||
HAnchor = HAnchor.Stretch,
|
||||
VAnchor = VAnchor.Fit
|
||||
VAnchor = VAnchor.Stretch
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ using MatterHackers.MatterControl.ConfigurationPage;
|
|||
using MatterHackers.MatterControl.CustomWidgets;
|
||||
using MatterHackers.MatterControl.SettingsManagement;
|
||||
using MatterHackers.MatterControl.SlicerConfiguration;
|
||||
using MatterHackers.VectorMath;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
||||
|
|
@ -49,7 +50,7 @@ namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
|||
private ThemeConfig theme;
|
||||
private GuiWidget headingRow;
|
||||
private PrinterInfo printerInfo;
|
||||
private FlowLayoutWidget productDataContainer;
|
||||
private GuiWidget productDataContainer;
|
||||
|
||||
public PrinterDetails(PrinterInfo printerInfo, ThemeConfig theme, bool showOpenButton)
|
||||
: base(FlowDirection.TopToBottom)
|
||||
|
|
@ -58,7 +59,7 @@ namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
|||
this.theme = theme;
|
||||
|
||||
headingRow = this.AddHeading(
|
||||
OemSettings.Instance.GetIcon(printerInfo.Make),
|
||||
OemSettings.Instance.GetIcon(printerInfo.Make, theme),
|
||||
printerInfo.Name);
|
||||
|
||||
headingRow.AddChild(new HorizontalSpacer());
|
||||
|
|
@ -103,6 +104,19 @@ namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
|||
|
||||
if (!string.IsNullOrWhiteSpace(StoreID))
|
||||
{
|
||||
// add a section to hold the data about the printer
|
||||
var contentScroll = new ScrollableWidget(true);
|
||||
contentScroll.ScrollArea.HAnchor |= HAnchor.Stretch;
|
||||
contentScroll.ScrollArea.VAnchor = VAnchor.Fit;
|
||||
contentScroll.AnchorAll();
|
||||
|
||||
contentScroll.AddChild(productDataContainer = new FlowLayoutWidget(FlowDirection.TopToBottom)
|
||||
{
|
||||
HAnchor = HAnchor.Stretch
|
||||
});
|
||||
|
||||
this.AddChild(contentScroll);
|
||||
|
||||
try
|
||||
{
|
||||
// put in controls from the feed that show relevant printer information
|
||||
|
|
@ -133,6 +147,11 @@ namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
|||
}
|
||||
|
||||
CreateProductDataWidgets(result.ProductSku);
|
||||
|
||||
contentScroll.Width += 1;
|
||||
contentScroll.Width -= 1;
|
||||
|
||||
contentScroll.TopLeftOffset = new Vector2(0, 0);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -140,12 +159,6 @@ namespace MatterHackers.MatterControl.Library.Widgets.HardwarePage
|
|||
{
|
||||
Trace.WriteLine("Error collecting or loading printer details: " + ex.Message);
|
||||
}
|
||||
|
||||
// add a section to hold the data about the printer
|
||||
this.AddChild(productDataContainer = new FlowLayoutWidget(FlowDirection.TopToBottom)
|
||||
{
|
||||
HAnchor = HAnchor.Stretch
|
||||
});
|
||||
}
|
||||
|
||||
headingRow.Visible = this.ShowHeadingRow;
|
||||
|
|
|
|||
|
|
@ -27,49 +27,24 @@ of the authors and should not be interpreted as representing official policies,
|
|||
either expressed or implied, of the FreeBSD Project.
|
||||
*/
|
||||
|
||||
using System.Linq;
|
||||
|
||||
using MatterHackers.Agg;
|
||||
using MatterHackers.Agg.UI;
|
||||
using MatterHackers.Localizations;
|
||||
using MatterHackers.MatterControl.CustomWidgets;
|
||||
using MatterHackers.MatterControl.Library.Widgets.HardwarePage;
|
||||
using MatterHackers.MatterControl.PartPreviewWindow;
|
||||
using MatterHackers.MatterControl.SlicerConfiguration;
|
||||
using MatterHackers.VectorMath;
|
||||
|
||||
namespace MatterHackers.MatterControl.PrintLibrary
|
||||
{
|
||||
public class HardwareTabPage : FlowLayoutWidget
|
||||
public class PrintersTabPage : FlowLayoutWidget
|
||||
{
|
||||
private ThemeConfig theme;
|
||||
|
||||
public HardwareTabPage(ThemeConfig theme)
|
||||
public PrintersTabPage(ThemeConfig theme)
|
||||
: base (FlowDirection.TopToBottom)
|
||||
{
|
||||
this.theme = theme;
|
||||
this.Padding = 0;
|
||||
this.HAnchor = HAnchor.Stretch;
|
||||
this.VAnchor = VAnchor.Stretch;
|
||||
|
||||
var toolbar = new Toolbar(theme.TabbarPadding, theme.CreateSmallResetButton())
|
||||
{
|
||||
HAnchor = HAnchor.Stretch,
|
||||
VAnchor = VAnchor.Fit,
|
||||
Padding = theme.ToolbarPadding
|
||||
};
|
||||
|
||||
theme.ApplyBottomBorder(toolbar);
|
||||
|
||||
toolbar.AddChild(new TextButton("Inventory".Localize(), theme)
|
||||
{
|
||||
Padding = new BorderDouble(6, 0),
|
||||
MinimumSize = new Vector2(0, theme.ButtonHeight),
|
||||
Selectable = false
|
||||
});
|
||||
|
||||
this.AddChild(toolbar);
|
||||
|
||||
var horizontalSplitter = new Splitter()
|
||||
{
|
||||
SplitterDistance = UserSettings.Instance.LibraryViewWidth,
|
||||
|
|
@ -127,17 +127,6 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
HardwareTreeView.CreatePrinterProfilesTree(printersNode, theme);
|
||||
this.Invalidate();
|
||||
|
||||
// Filament
|
||||
var materialsNode = new TreeNode(theme)
|
||||
{
|
||||
Text = "Materials".Localize(),
|
||||
AlwaysExpandable = true,
|
||||
Image = StaticData.Instance.LoadIcon("filament.png", 16, 16).SetToColor(theme.TextColor)
|
||||
};
|
||||
materialsNode.TreeView = this;
|
||||
|
||||
rootColumn.AddChild(materialsNode);
|
||||
|
||||
// Register listeners
|
||||
PrinterSettings.AnyPrinterSettingChanged += Printer_SettingChanged;
|
||||
|
||||
|
|
@ -170,7 +159,7 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
|
||||
printerNode.Load += (s, e) =>
|
||||
{
|
||||
printerNode.Image = OemSettings.Instance.GetIcon(printer.Make);
|
||||
printerNode.Image = OemSettings.Instance.GetIcon(printer.Make, theme);
|
||||
};
|
||||
|
||||
printersNode.Nodes.Add(printerNode);
|
||||
|
|
@ -202,7 +191,7 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
|
||||
printerNode.Load += (s, e) =>
|
||||
{
|
||||
printerNode.Image = OemSettings.Instance.GetIcon(printer.Settings.GetValue(SettingsKey.make));
|
||||
printerNode.Image = OemSettings.Instance.GetIcon(printer.Settings.GetValue(SettingsKey.make), theme);
|
||||
};
|
||||
|
||||
printersNode.Nodes.Add(printerNode);
|
||||
|
|
|
|||
|
|
@ -309,9 +309,9 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
tabControl.AddTab(
|
||||
tab = new ChromeTab(
|
||||
"Hardware",
|
||||
"Hardware".Localize(),
|
||||
"Printers".Localize(),
|
||||
tabControl,
|
||||
new HardwareTabPage(theme)
|
||||
new PrintersTabPage(theme)
|
||||
{
|
||||
BackgroundColor = theme.BackgroundColor
|
||||
},
|
||||
|
|
|
|||
|
|
@ -28,9 +28,11 @@ either expressed or implied, of the FreeBSD Project.
|
|||
*/
|
||||
|
||||
using System;
|
||||
using System.Linq;
|
||||
using MatterHackers.Agg;
|
||||
using MatterHackers.Agg.UI;
|
||||
using MatterHackers.Agg.VertexSource;
|
||||
using MatterHackers.VectorMath;
|
||||
|
||||
namespace MatterHackers.MatterControl.CustomWidgets
|
||||
{
|
||||
|
|
@ -74,8 +76,16 @@ namespace MatterHackers.MatterControl.CustomWidgets
|
|||
Checked = expanded,
|
||||
Padding = 0
|
||||
};
|
||||
|
||||
checkbox.CheckedStateChanged += (s, e) =>
|
||||
{
|
||||
var scrollable = this.Parents<ScrollableWidget>().First();
|
||||
var topPosition = Vector2.Zero;
|
||||
if (scrollable != null)
|
||||
{
|
||||
topPosition = scrollable.TopLeftOffset;
|
||||
}
|
||||
|
||||
if (expandingContent)
|
||||
{
|
||||
ContentPanel.Visible = checkbox.Checked;
|
||||
|
|
@ -84,6 +94,11 @@ namespace MatterHackers.MatterControl.CustomWidgets
|
|||
|
||||
// TODO: Remove this Height = 10 and figure out why the layout engine is not sizing these correctly without this.
|
||||
ContentPanel.Height = 10 * GuiWidget.DeviceScale;
|
||||
|
||||
if (scrollable != null)
|
||||
{
|
||||
scrollable.TopLeftOffset = topPosition;
|
||||
}
|
||||
};
|
||||
|
||||
if (serializationKey != null)
|
||||
|
|
|
|||
|
|
@ -329,8 +329,19 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
field.Content.Descendants<InternalNumberEdit>().First().MaxDecimalsPlaces = 3;
|
||||
field.ValueChanged += (s, e) =>
|
||||
{
|
||||
cell.Expression = field.Value;
|
||||
firtSheet.SheetData.Recalculate();
|
||||
var oldValue = cell.Expression;
|
||||
var newValue = field.Value;
|
||||
undoBuffer.AddAndDo(new UndoRedoActions(() =>
|
||||
{
|
||||
cell.Expression = oldValue;
|
||||
firtSheet.SheetData.Recalculate();
|
||||
},
|
||||
() =>
|
||||
{
|
||||
cell.Expression = newValue;
|
||||
firtSheet.SheetData.Recalculate();
|
||||
}));
|
||||
|
||||
};
|
||||
|
||||
var row = new SettingsRow(cell.Name == null ? cellId : cell.Name, null, field.Content, theme);
|
||||
|
|
|
|||
|
|
@ -43,7 +43,10 @@ namespace MatterHackers.MatterControl.DesignTools
|
|||
public SheetData SheetData { get; private set; }
|
||||
Point2D selectedCell = new Point2D(-1, -1);
|
||||
Dictionary<(int, int), GuiWidget> CellWidgetsByLocation = new Dictionary<(int, int), GuiWidget>();
|
||||
private ThemeConfig theme;
|
||||
|
||||
public UndoBuffer UndoBuffer { get; }
|
||||
|
||||
private ThemeConfig theme;
|
||||
private MHTextEditWidget editSelectedName;
|
||||
public MHTextEditWidget EditSelectedExpression { get; private set; }
|
||||
private GridWidget gridWidget;
|
||||
|
|
@ -51,11 +54,11 @@ namespace MatterHackers.MatterControl.DesignTools
|
|||
public SheetEditorWidget(SheetData sheetData, SheetObject3D sheetObject, UndoBuffer undoBuffer, ThemeConfig theme)
|
||||
: base(FlowDirection.TopToBottom)
|
||||
{
|
||||
this.UndoBuffer = undoBuffer;
|
||||
this.theme = theme;
|
||||
HAnchor = HAnchor.MaxFitOrStretch;
|
||||
|
||||
this.SheetData = sheetData;
|
||||
var countWidth = 10 * GuiWidget.DeviceScale;
|
||||
var cellEditNameWidth = 80 * GuiWidget.DeviceScale;
|
||||
|
||||
// put in the edit row
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ namespace MatterHackers.MatterControl.DesignTools
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// this must be called first to ensure we get the correct Handled state
|
||||
base.OnKeyDown(keyEvent);
|
||||
|
||||
|
|
@ -270,12 +270,29 @@ namespace MatterHackers.MatterControl.DesignTools
|
|||
{
|
||||
if (this.content.Text != undoContent)
|
||||
{
|
||||
// make sure the is a sheet update
|
||||
SheetData[x, y].Expression = this.content.Text;
|
||||
SheetData.Recalculate();
|
||||
var newValue = this.content.Text;
|
||||
var oldValue = SheetData[x, y].Expression;
|
||||
// this needs to support undo buffer
|
||||
sheetEditorWidget.UndoBuffer.AddAndDo(new UndoRedoActions(() =>
|
||||
{
|
||||
this.content.Text = oldValue;
|
||||
// make sure the is a sheet update
|
||||
SheetData[x, y].Expression = this.content.Text;
|
||||
SheetData.Recalculate();
|
||||
undoContent = this.content.Text;
|
||||
},
|
||||
() =>
|
||||
{
|
||||
this.content.Text = newValue;
|
||||
// make sure the is a sheet update
|
||||
SheetData[x, y].Expression = this.content.Text;
|
||||
SheetData.Recalculate();
|
||||
undoContent = this.content.Text;
|
||||
}));
|
||||
|
||||
}
|
||||
|
||||
EditMode = EditModes.Unknown;
|
||||
undoContent = this.content.Text;
|
||||
}
|
||||
|
||||
private void Navigate(int xOffset, int yOffset)
|
||||
|
|
|
|||
|
|
@ -36,6 +36,8 @@ using MatterHackers.Agg;
|
|||
using MatterHackers.Agg.Image;
|
||||
using MatterHackers.Agg.Platform;
|
||||
using MatterHackers.Agg.UI;
|
||||
using MatterHackers.Agg.VertexSource;
|
||||
using MatterHackers.ImageProcessing;
|
||||
using MatterHackers.MatterControl.SlicerConfiguration;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
|
|
@ -75,7 +77,7 @@ namespace MatterHackers.MatterControl.SettingsManagement
|
|||
|
||||
public List<ManufacturerNameMapping> ManufacturerNameMappings { get; set; }
|
||||
|
||||
public ImageBuffer GetIcon(string oemName)
|
||||
public ImageBuffer GetIcon(string oemName, ThemeConfig theme)
|
||||
{
|
||||
var size = (int)(16 * GuiWidget.DeviceScale);
|
||||
var imageBuffer = new ImageBuffer(size, size);
|
||||
|
|
@ -92,6 +94,15 @@ namespace MatterHackers.MatterControl.SettingsManagement
|
|||
graphics.Clear(AppContext.Theme.SlightShade);
|
||||
}
|
||||
|
||||
if (theme.IsDarkTheme)
|
||||
{
|
||||
// put the icon on a light background
|
||||
var background = new ImageBuffer(size, size);
|
||||
background.NewGraphics2D().Render(new RoundedRect(background.GetBoundingRect(), 1), theme.TextColor);
|
||||
background.NewGraphics2D().Render(imageBuffer, 0, 0);
|
||||
imageBuffer.CopyFrom(background);
|
||||
}
|
||||
|
||||
return imageBuffer;
|
||||
}
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 984 B After Width: | Height: | Size: 17 KiB |
|
|
@ -27,7 +27,8 @@
|
|||
"bed_temperature_glass": "100",
|
||||
"bed_temperature_kapton": "100",
|
||||
"bed_temperature_pei": "100",
|
||||
"bed_temperature_pp": "100"
|
||||
"bed_temperature_pp": "100",
|
||||
"material_url": "https://www.matterhackers.com/store/c/ABS"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@
|
|||
"bed_temperature_pei": "70",
|
||||
"bed_temperature_pp": "50",
|
||||
"layer_etag": "",
|
||||
"layer_source": ""
|
||||
"layer_source": "",
|
||||
"material_url": "https://www.matterhackers.com/store/c/3d-printer-filament/Nylon"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
|
|
|
|||
|
|
@ -23,7 +23,8 @@
|
|||
"bed_temperature_glass": "75",
|
||||
"bed_temperature_kapton": "75",
|
||||
"bed_temperature_pei": "75",
|
||||
"bed_temperature_pp": "55"
|
||||
"bed_temperature_pp": "55",
|
||||
"material_url": "https://www.matterhackers.com/store/c/3d-printer-filament/PET"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
|
|
|
|||
|
|
@ -24,7 +24,8 @@
|
|||
"bed_temperature_glass": "75",
|
||||
"bed_temperature_kapton": "50",
|
||||
"bed_temperature_pei": "75",
|
||||
"bed_temperature_pp": "75"
|
||||
"bed_temperature_pp": "75",
|
||||
"material_url": "https://www.matterhackers.com/store/c/PLA"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@
|
|||
"bed_temperature_pei": "70",
|
||||
"bed_temperature_pp": "55",
|
||||
"material_sku": "MY6C8H7E",
|
||||
"material_url": "https://www.matterhackers.com/store/c/pro-series-filament/pro-series-pla"
|
||||
"material_url": "https://www.matterhackers.com/store/c/3d-printer-filament/tough-pla-filament"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
|
|
|
|||
37
StaticData/Materials/MatterHackers/Quantum PLA.material
Normal file
37
StaticData/Materials/MatterHackers/Quantum PLA.material
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
{
|
||||
"DocumentVersion": 201606271,
|
||||
"ID": null,
|
||||
"Macros": [],
|
||||
"MaterialLayers": [
|
||||
{
|
||||
"layer_name": "Quantum PLA",
|
||||
"filament_density": "1.24",
|
||||
"layer_id": "b08a04f9-8d00-4753-b802-3745ffcf5c51",
|
||||
"bed_temperature": "55",
|
||||
"temperature": "225",
|
||||
"min_fan_speed": "70",
|
||||
"max_fan_speed": "100",
|
||||
"bridge_fan_speed": "100",
|
||||
"retract_restart_extra": "0",
|
||||
"retract_restart_extra_time_to_apply": "0",
|
||||
"min_fan_speed_layer_time": "180",
|
||||
"max_fan_speed_layer_time": "60",
|
||||
"filament_cost": "42",
|
||||
"disable_fan_first_layers": "5",
|
||||
"extrusion_multiplier": "0.97",
|
||||
"layer_etag": "",
|
||||
"layer_source": "",
|
||||
"bed_temperature_buildtak": "55",
|
||||
"bed_temperature_garolite": "75",
|
||||
"bed_temperature_glass": "75",
|
||||
"bed_temperature_kapton": "55",
|
||||
"bed_temperature_pei": "75",
|
||||
"bed_temperature_pp": "55",
|
||||
"material_url": "https://www.matterhackers.com/store/c/3d-printer-filament/matterhackers-quantum-pla?s=quantum&ref=search"
|
||||
}
|
||||
],
|
||||
"OemLayer": null,
|
||||
"QualityLayers": [],
|
||||
"StagedUserSettings": {},
|
||||
"UserLayer": {}
|
||||
}
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -3,13 +3,15 @@
|
|||
"3D Factory": "http://www.3dfactory.com/",
|
||||
"3D Stuffmaker": "http://www.3dstuffmakers.com/",
|
||||
"Airwolf 3D": "https://airwolf3d.com/",
|
||||
"BCN3D": "https://www.bcn3dtechnologies.com/",
|
||||
"Anet": "https://anet3d.com/",
|
||||
"Anycubic": "https://www.anycubic.com/",
|
||||
"BCN3D": "https://www.bcn3d.com/",
|
||||
"BeeVeryCreative": "https://beeverycreative.com/",
|
||||
"Blue Eagle Labs": "https://www.blueeaglelabs.com/",
|
||||
"CraftUnique": "https://craftbot.com/",
|
||||
"Creality": "https://www.creality3d.cn/",
|
||||
"Creality": "https://www.creality.com/",
|
||||
"Dremel": "http://www.dremel.com/",
|
||||
"FlashForge": "http://www.flashforge.com/",
|
||||
"FlashForge": "https://www.flashforge.com/",
|
||||
"gCreate": "http://www.gcreate.com/",
|
||||
"Genkei": "http://magnarecta.com/",
|
||||
"GorillaMaker": "https://gorillamaker.com/",
|
||||
|
|
@ -21,7 +23,8 @@
|
|||
"Maker's Tool Works": "http://makerstoolworks.com/",
|
||||
"MakerBot": "https://www.makerbot.com/",
|
||||
"MakerGear": "https://www.makergear.com/",
|
||||
"Me3D": "https://me3dstore.com/",
|
||||
"Me3D": "https://me3d.com.au/",
|
||||
"Monoprice": "https://www.monoprice.com/",
|
||||
"ORD Solutions": "https://www.ordsolutions.com/",
|
||||
"Peopoly": "https://peopoly.net/",
|
||||
"PrintSpace": "https://www.printspace3d.com/",
|
||||
|
|
@ -36,6 +39,7 @@
|
|||
"Tosingraf": "http://www.tosingraf.com/",
|
||||
"Type A Machines": "https://www.typeamachines.com/",
|
||||
"Ultimaker": "https://ultimaker.com/",
|
||||
"Velleman": "http://www.vellemanusa.com/",
|
||||
"ZYYX": "http://www.zyyx3dprinter.com/"
|
||||
"Wanhao": "https://www.usawanhao.com/",
|
||||
"Velleman": "https://www.velleman.eu/",
|
||||
"ZYYX": "https://www.zyyxlabs.com/"
|
||||
}
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"Airwolf 3D-Axiom": { "SID": "ML3DTSYL" },
|
||||
"Airwolf 3D-HD": { "SID": "MW46VP7T" },
|
||||
"BCN-Sigma": { "SID": "MCN1YNVE" },
|
||||
"BCN3D-Sigma": { "SID": "MCN1YNVE" },
|
||||
"BCN-Sigma": { "SID": "MCN1YNVE" },
|
||||
"Creality-CR-10 300": { "AltInfoUrl": "https://www.matterhackers.com/store/c/creality-3d-printers" },
|
||||
"Creality-CR-10 400": { "AltInfoUrl": "https://www.matterhackers.com/store/c/creality-3d-printers" },
|
||||
"Creality-CR-10 500": { "AltInfoUrl": "https://www.matterhackers.com/store/c/creality-3d-printers" },
|
||||
|
|
@ -79,20 +79,39 @@
|
|||
"Pulse-D-232": { "SID": "MUY6R1P5" },
|
||||
"Pulse-D-233": { "SID": "MUY6R1P5" },
|
||||
"Pulse-D-434": { "SID": "MUY6R1P5" },
|
||||
"Pulse-D-435": { "SID": "MUY6R1P5" },
|
||||
"Pulse-D-435 Advanced": { "SID": "MUY6R1P5" },
|
||||
"Pulse-D-435": { "SID": "MUY6R1P5" },
|
||||
"Pulse-E-111": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-111S": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-112": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-112M": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-113": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-114": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-114M": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-223": { "SID": "MEHA2GS7" },
|
||||
"Pulse-E-223DS": { "SID": "MTA2JNPM" },
|
||||
"Pulse-E-223S": { "SID": "MEHA2GS7" },
|
||||
"Pulse-E-224": { "SID": "MEHA2GS7" },
|
||||
"Pulse-E-224M": { "SID": "MTF2MW2W" },
|
||||
"Pulse-E-233": { "SID": "MTF2MW2W" },
|
||||
"Pulse-E-243S": { "SID": "MTF2MW2W" },
|
||||
"Pulse-E-253": { "SID": "MTF2MW2W" },
|
||||
"Pulse-E-421": { "SID": "MH4C92XW" },
|
||||
"Pulse-E-421M": { "SID": "MZFJ9XRG" },
|
||||
"Pulse-E-422": { "SID": "M21FDL8Q" },
|
||||
"Pulse-E-422M": { "SID": "M6SU0GQK" },
|
||||
"Pulse-E-423": { "SID": "ME9TU58K" },
|
||||
"Pulse-E-423S": { "SID": "ME9TU58K" },
|
||||
"Pulse-E-424": { "SID": "ME9TU58K" },
|
||||
"Pulse-E-424M": { "SID": "MFN2SP2N" },
|
||||
"Pulse-E-444": { "SID": "M0DQ8818" },
|
||||
"Pulse-E-442": { "SID": "ML2Q97EY" },
|
||||
"Pulse-E-442M": { "SID": "M2TWERCJ" },
|
||||
"Pulse-E-443": { "SID": "MSSWKLK5" },
|
||||
"Pulse-E-443S": { "SID": "MSSWKLK5" },
|
||||
"Pulse-E-444": { "SID": "M0DQ8818" },
|
||||
"Pulse-E-444M": { "SID": "MSSWKLK5" },
|
||||
"Pulse-E-452": { "SID": "MSSWKLK5" },
|
||||
"Pulse-E-512": { "SID": "MSSWKLK5" },
|
||||
"Pulse-S-111": { "SID": "MFG0HF92" },
|
||||
"Pulse-S-112": { "SID": "MFG0HF92" },
|
||||
"Pulse-S-212": { "SID": "MFG0HF92" },
|
||||
|
|
@ -106,10 +125,10 @@
|
|||
"SeeMeCNC-Rostock MAX v2": { "AltInfoUrl": "https://www.matterhackers.com/store/c/SeeMeCNC" },
|
||||
"SeeMeCNC-Rostock MAX v3": { "SID": "MGFTLKAA" },
|
||||
"SeeMeCNC-Rostock MAX": { "AltInfoUrl": "https://www.matterhackers.com/store/c/SeeMeCNC" },
|
||||
"Ultimaker-2 Extended+": { "SID": "M0T2WS4H" },
|
||||
"Ultimaker-2 Extended": { "SID": "M0T2WS4H" },
|
||||
"Ultimaker-2+": { "SID": "ME7R89S4" },
|
||||
"Ultimaker-2 Extended+": { "SID": "M0T2WS4H" },
|
||||
"Ultimaker-2": { "SID": "ME7R89S4" },
|
||||
"Ultimaker-2+": { "SID": "ME7R89S4" },
|
||||
"Ultimaker-Original+": { "SID": "MZZKP1YY" }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 7f6033fc815e18b58ef52a3eb84e1e588c27feed
|
||||
Subproject commit 0ea5548c2bdd91e3daa3769609ead4554e193ea2
|
||||
|
|
@ -148,6 +148,18 @@ M300 S3000 P30 ; Resume Tone";
|
|||
printerSettings.SetValue(SettingsKey.bed_temperature_kapton, "55");
|
||||
printerSettings.SetValue(SettingsKey.bed_temperature_pei, "75");
|
||||
printerSettings.SetValue(SettingsKey.bed_temperature_pp, "55");
|
||||
|
||||
var zHeight = 215;
|
||||
// check the build height based on the extruder type
|
||||
switch (printerModel[3])
|
||||
{
|
||||
case '3': // Volcano
|
||||
case '6': // LGX E3Dv6
|
||||
zHeight = 205;
|
||||
break;
|
||||
}
|
||||
|
||||
printerSettings.SetValue(SettingsKey.build_height, zHeight.ToString());
|
||||
}
|
||||
|
||||
// 32 bit settings
|
||||
|
|
@ -169,6 +181,26 @@ M300 S3000 P30 ; Resume Tone";
|
|||
int a = 0;
|
||||
}
|
||||
|
||||
[Test, RunInApplicationDomain]
|
||||
public void AllMaterialsHaveSkuOrUrlSet()
|
||||
{
|
||||
var materialSettingsDirectory = TestContext.CurrentContext.ResolveProjectPath(4, "StaticData", "Materials");
|
||||
var directoryInfo = new DirectoryInfo(materialSettingsDirectory);
|
||||
var files = directoryInfo.GetFiles("*.material", SearchOption.AllDirectories);
|
||||
var profiles = files.Select(f => PrinterSettings.LoadFile(f.FullName)).ToList();
|
||||
|
||||
foreach(var profile in profiles)
|
||||
{
|
||||
Assert.AreEqual(1, profile.MaterialLayers.Count, "Each material profile should have 1 material in it");
|
||||
var material = profile.MaterialLayers[0];
|
||||
profile.ActiveMaterialKey = material.LayerID;
|
||||
var hasSku = !string.IsNullOrEmpty(profile.GetValue(SettingsKey.material_sku));
|
||||
var hasUrl = !string.IsNullOrEmpty(profile.GetValue(SettingsKey.material_url));
|
||||
Assert.IsTrue(hasSku || hasUrl);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[Test, RunInApplicationDomain]
|
||||
public void LayerGCodeHasExpectedValue()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue