private void btnSave_Click(object sender, EventArgs e) { Shaft s = new Shaft(); s.Name = txtName.Text; s.Diameter = Convert.ToDouble(numDiameter.Value); s.KeyCutWidth = Convert.ToDouble(numKeyCutWidth.Value); s.KeyCutHeigth = Convert.ToDouble(numKeyCutHeight.Value); s.KeyCutLength = Convert.ToDouble(numKeyCutLength.Value); s.Material = material; if (s.Name != "" && s.Material != null) { Database1DataSet1TableAdapters.Shaft1TableAdapter sta = new Database1DataSet1TableAdapters.Shaft1TableAdapter(); sta.Insert(s.Name, s.Diameter, s.Material.ID, s.KeyCutWidth, s.KeyCutHeigth, s.KeyCutLength); s.ID = (int)sta.getID(s.Name, s.Diameter, s.Material.ID, s.KeyCutWidth, s.KeyCutHeigth, s.KeyCutLength); Program.shaftList.Add(s); DialogResult = DialogResult.OK; } else { if (s.Name == "") MessageBox.Show("You have to add a Name to your shaft", "Impossible to save the gear", MessageBoxButtons.OK, MessageBoxIcon.Warning); else MessageBox.Show("You have to add a Material to your shaft", "Impossible to save the gear", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void btnRemove_Click(object sender, EventArgs e) { if (DialogResult.OK == MessageBox.Show("You may delete Gears and Gear Boxes associated. Do you want to continue ?", "Caution", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning)) { if (listShaft.SelectedItems.Count > 0) { Shaft shaftToDelete = new Shaft(); shaftToDelete = (Shaft)listShaft.SelectedItems[0]; Program.shaftList.Remove(shaftToDelete); Database1DataSet1TableAdapters.Shaft1TableAdapter sta = new Database1DataSet1TableAdapters.Shaft1TableAdapter(); Database1DataSet1TableAdapters.GearsTableAdapter gta = new Database1DataSet1TableAdapters.GearsTableAdapter(); Database1DataSet1TableAdapters.GearBoxTableAdapter gbta = new Database1DataSet1TableAdapters.GearBoxTableAdapter(); List<int> gearIds = Util.listOfGearIds(shaftToDelete.ID, gta); try { foreach (int g in gearIds) { gbta.DeleteInputGearQuery(g); gbta.DeleteOutputGearQuery(g); Gear gear = Util.getGearById(g); Program.gearList.Remove(gear); } gta.DeleteShaftQuery(shaftToDelete.ID); sta.Delete(shaftToDelete.ID, shaftToDelete.Name, shaftToDelete.Diameter, shaftToDelete.Material.ID, shaftToDelete.KeyCutWidth, shaftToDelete.KeyCutHeigth, shaftToDelete.KeyCutLength); Util.refreshGearBoxList(); } catch (Exception ex) { } } refreshList(); treeViewShaft.Nodes.Clear(); propertyGridShaft.SelectedObject = null; btnRemove.Enabled = false; btnEdit.Enabled = false; btnSelect.Enabled = false; } }
private void GearBoxGenerator_Load(object sender, EventArgs e) { // Get the Materials Database1DataSet1TableAdapters.MaterialsTableAdapter mta = new Database1DataSet1TableAdapters.MaterialsTableAdapter(); Database1DataSet1.MaterialsDataTable MaterialsFromDB = new Database1DataSet1.MaterialsDataTable(); mta.Fill(MaterialsFromDB); foreach(Database1DataSet1.MaterialsRow row in MaterialsFromDB.Rows){ Material mat = new Material(); mat.ID = row.ID; mat.Name = row.MaterialName; mat.Density = row.Density; mat.yieldStress = row.YieldStress; mat.youngsModulus = row.YoungsModulus; Program.materialList.Add(mat); } // Get the Shafts Database1DataSet1TableAdapters.Shaft1TableAdapter sta = new Database1DataSet1TableAdapters.Shaft1TableAdapter(); Database1DataSet1.Shaft1DataTable ShaftsFromDB = new Database1DataSet1.Shaft1DataTable(); sta.Fill(ShaftsFromDB); foreach (Database1DataSet1.Shaft1Row row in ShaftsFromDB.Rows) { Shaft shaft = new Shaft(); shaft.ID = row.ID; shaft.Name = row.ShaftName; shaft.Diameter = row.Diameter; shaft.KeyCutHeigth = row.KeyCutHeight; shaft.KeyCutLength = row.KeyCutLenght; shaft.KeyCutWidth = row.KeyCutWidth; shaft.Material = Util.getMaterialById(row.MaterialID); Program.shaftList.Add(shaft); } Database1DataSet1TableAdapters.GearsTableAdapter gta = new Database1DataSet1TableAdapters.GearsTableAdapter(); Database1DataSet1.GearsDataTable GearsFromDB = new Database1DataSet1.GearsDataTable(); gta.Fill(GearsFromDB); foreach (Database1DataSet1.GearsRow row in GearsFromDB.Rows) { Gear gear = new Gear(); gear.ID = row.ID; gear.Alpha = row.Alpha; gear.GearModule = row.GearModule; gear.Torque = row.Torque; gear.WantedRadius = row.WantedRadius; gear.Name = row.GearName; gear.Z = row.Z; gear.Phi = row.Phi; gear.R_base = row.RBase; gear.R_foot = row.RFoot; gear.R_pitch = row.RPitch; gear.R_top = row.RTop; gear.Material = Util.getMaterialById(row.MaterialID); gear.Shaft = Util.getShaftById(row.ShaftID); Program.gearList.Add(gear); } Util.refreshGearBoxList(); }
private Shaft createShaft(Material material, Double torque, bool isInput) { if (isInput) tsStatusLabel.Text = "Calculation of the input Shaft..."; else tsStatusLabel.Text = "Calculation of the output Shaft..."; Shaft shaft = new Shaft(); if (isInput) shaft.Name = txtName.Text + " Input Shaft"; else shaft.Name = txtName.Text + " Output Shaft"; shaft.Material = material; // MathCAD Mathcad.Application mathCadApp =null; try { mathCadApp = System.Runtime.InteropServices.Marshal.GetActiveObject("MathCAD.Application") as Mathcad.Application; } catch (Exception ex) { mathCadApp = System.Activator.CreateInstance(Type.GetTypeFromProgID("MathCAD.Application")) as Mathcad.Application; } finally { mathCadApp.Worksheets.Open(path+"/Shaft dimensioning.xmcd"); } mathCadApp.Visible = true; Mathcad.Worksheet ws = mathCadApp.ActiveWorksheet; ws.SetValue("yield_stress", material.yieldStress); ws.SetValue("M", torque*1000); String value; value = ws.GetValue("diameter").asString; shaft.Diameter = Convert.ToInt32(value); // Microsoft Excel Microsoft.Office.Interop.Excel.Application excelApp = null; try { excelApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application") as Microsoft.Office.Interop.Excel.Application; if (!excelApp.ActiveWorkbook.Path.Equals(path) || !excelApp.ActiveWorkbook.Path.Equals(path)) excelApp.Workbooks.Open(path + "/Key design.xlsx"); } catch (Exception ex) { excelApp = System.Activator.CreateInstance(Type.GetTypeFromProgID("Excel.Application")) as Microsoft.Office.Interop.Excel.Application; excelApp.Workbooks.Open(path + "/Key design.xlsx"); } // excelApp.Visible=true; Microsoft.Office.Interop.Excel.Worksheet excelWs = excelApp.ActiveWorkbook.ActiveSheet; excelWs.Cells[5,1] = torque; excelWs.Cells[5, 3] = shaft.Diameter; shaft.KeyCutLength = Convert.ToDouble(excelWs.Cells[5,8].Value); shaft.KeyCutHeigth = Convert.ToDouble(excelWs.Cells[5, 5].Value); shaft.KeyCutWidth = Convert.ToDouble(excelWs.Cells[5,4].Value); if (isInput) { inputC1 = Convert.ToDouble(excelWs.Cells[5, 6].Value); inputC2 = Convert.ToDouble(excelWs.Cells[5, 7].Value); } else { outputC1 = Convert.ToDouble(excelWs.Cells[5, 6].Value); outputC2 = Convert.ToDouble(excelWs.Cells[5, 7].Value); } return shaft; }
private void btnShaft_Click(object sender, EventArgs e) { ShaftEditorForm shaftEditor = new ShaftEditorForm(); shaftEditor.menuStripVisible(false); if (shaftEditor.ShowDialog() == DialogResult.OK) { // Ajouter le nom du Shaft shaft = sTemp; //Changer le bouton Choose correspondant txtShaft.Text = shaft.Name; txtShaft.Visible = true; btnShaft.Text = "..."; btnShaft.Size = btnSize; btnShaft.Location = new Point(186, 129); } }