public void Setup(UserParameterList parms) { try { m_parms = parms; lvParams.Items.Clear(); //parms.paramDict. foreach (KeyValuePair <string, CWParameter> parm in parms.paramDict) { CWParameter cwp = parm.Value; ListViewItem lvi = lvParams.Items.Add(parm.Key); if (cwp.ParamType == typeof(string)) { GuiParam <string> dat = (GuiParam <string>)cwp; lvi.SubItems.Add(dat.GetVal()); } //GuiParam prm } lvParams.Refresh(); } catch (Exception ex) { DebugLogger.Instance().LogError(ex); } }
public void CopyFrom(SliceBuildConfig source) { dpmmX = source.dpmmX; // dots per mm x dpmmY = source.dpmmY; // dots per mm y xres = source.xres; yres = source.yres; // the resolution of the output image ZThick = source.ZThick; // thickness of the z layer - slicing height layertime_ms = source.layertime_ms; // time to project image per layer in milliseconds firstlayertime_ms = source.firstlayertime_ms; blanktime_ms = source.blanktime_ms; plat_temp = source.plat_temp; // desired platform temperature in celsius // exportgcode = source.exportgcode; // export the gcode file when slicing exportsvg = source.exportsvg; // export the svg slices when building export = source.export; // export image slices when building exportpng = source.exportpng; m_headercode = source.m_headercode; // inserted at beginning of file m_footercode = source.m_footercode; // inserted at end of file m_preslicecode = source.m_preslicecode; // inserted before each slice m_liftcode = source.m_liftcode; // its the main lift code m_shutterclosecode = source.m_shutterclosecode; m_shutteropencode = source.m_shutteropencode; liftdistance = source.liftdistance; direction = source.direction; numfirstlayers = source.numfirstlayers; XOffset = source.XOffset; YOffset = source.YOffset; slidetiltval = source.slidetiltval; antialiasing = source.antialiasing; usemainliftgcode = source.usemainliftgcode; liftfeedrate = source.liftfeedrate; bottomliftfeedrate = source.bottomliftfeedrate; liftretractrate = source.liftretractrate; aaval = source.aaval;// //m_generateautosupports = source.m_generateautosupports; m_exportopt = source.m_exportopt; m_flipX = source.m_flipX; m_flipY = source.m_flipY; m_notes = source.m_notes; m_resinprice = source.m_resinprice; selectedInk = source.selectedInk; m_createoutlines = source.m_createoutlines; m_outlinewidth_inset = source.m_outlinewidth_inset; m_outlinewidth_outset = source.m_outlinewidth_outset; if (source.inks != null) { inks = new Dictionary <string, InkConfig>(); foreach (KeyValuePair <string, InkConfig> entry in source.inks) { inks[entry.Key] = entry.Value; } } minExposure = source.minExposure; exposureStep = source.exposureStep; exportpreview = source.exportpreview; userParams = source.userParams; }
public bool Load(string filename) { m_filename = filename; m_lstMonitorconfigs.Clear(); // clear any previously loaded monitors m_name = Path.GetFileNameWithoutExtension(filename); bool retval = false; XmlHelper xh = new XmlHelper(); bool fileExist = xh.Start(m_filename, "MachineConfig"); XmlNode mc = xh.m_toplevel; m_PlatXSize = xh.GetDouble(mc, "PlatformXSize", 102.0); m_PlatYSize = xh.GetDouble(mc, "PlatformYSize", 77.0); m_PlatZSize = xh.GetDouble(mc, "PlatformZSize", 100.0); m_XMaxFeedrate = xh.GetDouble(mc, "MaxXFeedRate", 100.0); m_YMaxFeedrate = xh.GetDouble(mc, "MaxYFeedRate", 100.0); m_ZMaxFeedrate = xh.GetDouble(mc, "MaxZFeedRate", 100.0); XRenderSize = xh.GetInt(mc, "XRenderSize", 1024); YRenderSize = xh.GetInt(mc, "YRenderSize", 768); MachineControls = xh.GetString(mc, "DisplayedControls", "XYZPG"); m_machinetype = (eMachineType)xh.GetEnum(mc, "MachineType", typeof(eMachineType), eMachineType.UV_DLP); m_multimontype = (eMultiMonType)xh.GetEnum(mc, "MultiMonType", typeof(eMultiMonType), eMultiMonType.eHorizontal); if (m_driverconfig.Load(xh, mc)) { retval = true; } //m_monitorconfig.Load(xh, mc); List <XmlNode> monitornodes = xh.FindAllChildElement(mc, "MonitorDriverConfig"); m_lstMonitorconfigs = new List <MonitorConfig>(); foreach (XmlNode node in monitornodes) { MonitorConfig monc = new MonitorConfig(); monc.Load(xh, node); m_lstMonitorconfigs.Add(monc); } if (m_lstMonitorconfigs.Count > 0) { // we need at least 1 monitor //m_monitorconfig = m_lstMonitorconfigs[0]; } else { DebugLogger.Instance().LogError("No monitor configurations found!"); } CalcPixPerMM(); if (!fileExist) { xh.Save(FILE_VERSION); } CorrectMonitorConfig(); userParams = new UserParameterList(); xh.LoadUserParamList(userParams); return(retval); }
public void CreateDefault() { numfirstlayers = 3; layertime_ms = 1000; // 1 second default firstlayertime_ms = 5000; blanktime_ms = 2000; // 2 seconds blank xres = 1024; yres = 768; ZThick = .05; plat_temp = 75; dpmmX = 102.4; dpmmY = 76.8; XOffset = 0; YOffset = 0; numfirstlayers = 3; //exportgcode = true; exportsvg = 0; export = false; exportpng = false; direction = eBuildDirection.Bottom_Up; liftdistance = 5.0; //raise_time_ms = 750; slidetiltval = 0.0; antialiasing = false; usemainliftgcode = false; aaval = 1.5; liftfeedrate = 50.0; // 50mm/s bottomliftfeedrate = 25.0; liftretractrate = 100.0; // 100mm/s m_exportopt = "SUBDIR"; // default to saving in subdirectory m_flipX = false; m_flipY = false; m_notes = ""; m_resinprice = 0.0;// //set the default gcode segments m_headercode = DefGCodeHeader(); m_footercode = DefGCodeFooter(); m_liftcode = DefGCodeLift(); m_preslicecode = DefGCodePreslice(); m_shutteropencode = DefGCodeOpenShutter(); m_shutterclosecode = DefGCodeCloseShutter(); inks = new Dictionary <string, InkConfig>(); selectedInk = "Default"; inks[selectedInk] = new InkConfig(selectedInk); minExposure = 500; m_createoutlines = false; m_outlinewidth_inset = 2.0; m_outlinewidth_outset = 0.0; exposureStep = 200; exportpreview = PreviewGenerator.ePreview.None; userParams = new UserParameterList(); }
public MachineConfig() { m_PlatXSize = 102.0; m_PlatYSize = 77.0; m_PlatZSize = 100; // 100 mm default, we have to load this m_XMaxFeedrate = 100; m_YMaxFeedrate = 100; m_ZMaxFeedrate = 100; XRenderSize = 1024; YRenderSize = 768; m_driverconfig = new DeviceDriverConfig(); //m_monitorconfig = new MonitorConfig(); m_lstMonitorconfigs = new List <MonitorConfig>(); // create a list of monitors attached to the system m_machinetype = eMachineType.UV_DLP; m_multimontype = eMultiMonType.eVertical; MachineControls = ""; userParams = new UserParameterList(); CalcPixPerMM(); }
bool Load(XmlHelper xh) { bool retval = false; XmlNode mc = xh.m_toplevel; m_PlatXSize = xh.GetDouble(mc, "PlatformXSize", 102.0); m_PlatYSize = xh.GetDouble(mc, "PlatformYSize", 77.0); m_PlatZSize = xh.GetDouble(mc, "PlatformZSize", 100.0); m_XMaxFeedrate = xh.GetDouble(mc, "MaxXFeedRate", 100.0); m_YMaxFeedrate = xh.GetDouble(mc, "MaxYFeedRate", 100.0); m_ZMaxFeedrate = xh.GetDouble(mc, "MaxZFeedRate", 100.0); XRenderSize = xh.GetInt(mc, "XRenderSize", 1024); YRenderSize = xh.GetInt(mc, "YRenderSize", 768); m_OverrideRenderSize = xh.GetBool(mc, "OverrideRenderSize", false); MachineControls = xh.GetString(mc, "DisplayedControls", "XYZPG"); m_machinetype = (eMachineType)xh.GetEnum(mc, "MachineType", typeof(eMachineType), eMachineType.UV_DLP); m_multimontype = (eMultiMonType)xh.GetEnum(mc, "MultiMonType", typeof(eMultiMonType), eMultiMonType.eHorizontal); m_ip = xh.GetString(mc, "ip", "192.168.1.6"); var ComPortnodes = xh.FindAllChildElement(mc, "ComPortSettings"); foreach (XmlNode node in ComPortnodes) { serialComPort = xh.GetString(node, "PortName", "COM1"); serialBaudRate = xh.GetString(node, "Speed", "9600"); serialDataBits = xh.GetString(node, "Databits", "8"); serialParity = xh.GetString(node, "Parity", "0"); serialStopBits = xh.GetString(node, "Stopbits", "1"); } if (m_driverconfig.Load(xh, mc)) { retval = true; } //m_monitorconfig.Load(xh, mc); List <XmlNode> monitornodes = xh.FindAllChildElement(mc, "MonitorDriverConfig"); m_lstMonitorconfigs = new List <MonitorConfig>(); foreach (XmlNode node in monitornodes) { MonitorConfig monc = new MonitorConfig(); monc.Load(xh, node); m_lstMonitorconfigs.Add(monc); } if (m_lstMonitorconfigs.Count > 0) { // we need at least 1 monitor //m_monitorconfig = m_lstMonitorconfigs[0]; } else { DebugLogger.Instance().LogError("No monitor configurations found!"); } CalcPixPerMM(); //if we have a special render size, don't wipe it out... if (m_OverrideRenderSize == false) { CorrectMonitorConfig(); } userParams = new UserParameterList(); xh.LoadUserParamList(userParams); return(retval); }