public static SurveyData Parse(string line) { string kStr = MyStrings.RemoveAllSpaces(line.Replace(",", " ")); MyStrings mlist = new MyStrings(kStr, ' '); SurveyData sdata = new SurveyData(); if (mlist.Count == 5) { sdata.SerialNo = mlist.GetInt(0); sdata.X = mlist.GetDouble(1); sdata.Y = mlist.GetDouble(2); sdata.Z = mlist.GetDouble(3); sdata.FeatureCode = mlist.StringList[4]; } else if (mlist.Count == 4) { sdata.SerialNo = mlist.GetInt(0); sdata.X = mlist.GetDouble(1); sdata.Y = mlist.GetDouble(2); sdata.Z = mlist.GetDouble(3); sdata.FeatureCode = "OGL"; } else if (mlist.Count == 3) { //sdata.SerialNo = mlist.GetInt(0); sdata.X = mlist.GetDouble(0); sdata.Y = mlist.GetDouble(1); sdata.Z = mlist.GetDouble(2); sdata.FeatureCode = "P0"; } return(sdata); }
public void SetPostProcessForMovingLoad() { string memberForceFile = Path.GetDirectoryName(astDoc.FileName); memberForceFile = Path.Combine(memberForceFile, "Memberforce.FIL"); if (!File.Exists(memberForceFile)) { return; } List <string> lstStr = new List <string>(File.ReadAllLines(memberForceFile)); // MemberForce.FIL // 0 1 2 3 4 5 6 7 8 //MNO LDCS Node R1 R2 R3 M1 M2 M3 // 1 1 1 0.000 0.000 1.016 -0.157 -0.025 0.000 // 2 0.000 0.000 -1.016 0.157 -1.029 0.000 MyStrings mList = null; BeamForceMoment bfm = null; for (int i = 0; i < lstStr.Count; i++) { mList = new MyStrings(MyStrings.RemoveAllSpaces(lstStr[i]), ' '); if (mList.Count == 9) { bfm = new BeamForceMoment(); bfm.Member.MemberNo = mList.GetInt(0); bfm.LoadCase = mList.GetInt(1); bfm.StartForceMoment.R1 = mList.GetDouble(3); bfm.StartForceMoment.R2 = mList.GetDouble(4); bfm.StartForceMoment.R3 = mList.GetDouble(5); bfm.StartForceMoment.M1 = mList.GetDouble(6); bfm.StartForceMoment.M2 = mList.GetDouble(7); bfm.StartForceMoment.M3 = mList.GetDouble(8); } else if (mList.Count == 7) { //bfm = new BeamForceMoment(); //bfm.Member.MemberNo = mList.GetInt(0); //bfm.LoadCase = mList.GetInt(1); bfm.EndForceMoment.R1 = mList.GetDouble(1); bfm.EndForceMoment.R2 = mList.GetDouble(2); bfm.EndForceMoment.R3 = mList.GetDouble(3); bfm.EndForceMoment.M1 = mList.GetDouble(4); bfm.EndForceMoment.M2 = mList.GetDouble(5); bfm.EndForceMoment.M3 = mList.GetDouble(6); beamMomentCol.Add(bfm); } } }
public void SetProcessNode(string op, string text) { //16 1 -0.64289E-02 -0.88362E-02 0.64941E-02 0.10075E-03 -0.16080E-03 0.75179E-02 string temp = text.ToUpper().Trim().TrimEnd().TrimStart().Replace('\t', ' '); int indx = -1; while (temp.IndexOf(" ") != -1) { temp = temp.Replace(" ", " "); } MyStrings mList = new MyStrings(temp, ' '); double dx = 0.0d, dy = 0.0d, dz = 0.0d; try { // 0 1 2 3 4 5 6 7 //16 1 -0.64289E-02 -0.88362E-02 0.64941E-02 0.10075E-03 -0.16080E-03 0.75179E-02 ndisp = new NodeDisplacement(); int index = 0; if (mList.StringList.Count == 8) { nodeNo = mList.GetInt(index); index++; ndisp.Node.NodeNo = nodeNo; ndisp.LoadCase = mList.GetInt(index); index++; ndisp.Tx = mList.GetDouble(index); index++; ndisp.Ty = mList.GetDouble(index); index++; ndisp.Tz = mList.GetDouble(index); index++; ndisp.Rx = mList.GetDouble(index); index++; ndisp.Ry = mList.GetDouble(index); index++; ndisp.Rz = mList.GetDouble(index); index++; nDispCol.Add(ndisp); } else if (mList.StringList.Count == 7) { ndisp.Node.NodeNo = nodeNo; ndisp.LoadCase = mList.GetInt(index); index++; ndisp.Tx = mList.GetDouble(index); index++; ndisp.Ty = mList.GetDouble(index); index++; ndisp.Tz = mList.GetDouble(index); index++; ndisp.Rx = mList.GetDouble(index); index++; ndisp.Ry = mList.GetDouble(index); index++; ndisp.Rz = mList.GetDouble(index); index++; nDispCol.Add(ndisp); } } catch (Exception exx) { } }
void SetGrid() { kStr = iACad.GetSelectedJointsInText(); if (kStr == "") { kStr = "ALL"; } MyStrings mList = null; if (kStr == "ALL") { for (int i = 0; i < iACad.AstraDocument.Joints.Count; i++) { dgvNodeGrid.Rows.Add(iACad.AstraDocument.Joints[i].NodeNo, iACad.AstraDocument.Joints[i].Point.x, iACad.AstraDocument.Joints[i].Point.y, iACad.AstraDocument.Joints[i].Point.z, ""); } } else if (kStr.Contains("TO")) { mList = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' '); int indx = -1; for (int i = mList.GetInt(0); i <= mList.GetInt(2); i++) { indx = iACad.AstraDocument.Joints.IndexOf(i); dgvNodeGrid.Rows.Add(iACad.AstraDocument.Joints[indx].NodeNo, iACad.AstraDocument.Joints[indx].Point.x, iACad.AstraDocument.Joints[indx].Point.y, iACad.AstraDocument.Joints[indx].Point.z, ""); } } else { //kStr = mList = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ','); int indx = -1; for (int i = 0; i < mList.Count; i++) { indx = iACad.AstraDocument.Joints.IndexOf(mList.GetInt(i)); dgvNodeGrid.Rows.Add(iACad.AstraDocument.Joints[indx].NodeNo, iACad.AstraDocument.Joints[indx].Point.x, iACad.AstraDocument.Joints[indx].Point.y, iACad.AstraDocument.Joints[indx].Point.z, ""); } } }
public void SetProcessBeam(string op, string text) { // ANALYSIS_REP.TXT // 1 1 1.598E+02 1.178E+01 -6.206E-01 -4.740E-02 -4.551E+00 1.693E+01 // -1.598E+02 -1.178E+01 6.206E-01 4.740E-02 7.033E+00 3.017E+01 string temp = text.ToUpper().Trim().TrimEnd().TrimStart().Replace('\t', ' '); while (temp.IndexOf(" ") != -1) { temp = temp.Replace(" ", " "); } MyStrings mList = new MyStrings(temp, ' '); try { if (mList.StringList.Count == 8) { // 1 1 1.598E+02 1.178E+01 -6.206E-01 -4.740E-02 -4.551E+00 1.693E+01 beamMoment = new BeamForceMoment(); beamMoment.Member.MemberNo = mList.GetInt(0); beamMoment.LoadCase = mList.GetInt(1); beamMoment.StartForceMoment.R1 = mList.GetDouble(2); beamMoment.StartForceMoment.R2 = mList.GetDouble(3); beamMoment.StartForceMoment.R3 = mList.GetDouble(4); beamMoment.StartForceMoment.M1 = mList.GetDouble(5); beamMoment.StartForceMoment.M2 = mList.GetDouble(6); beamMoment.StartForceMoment.M3 = mList.GetDouble(7); } if (mList.StringList.Count == 6) { // -1.598E+02 -1.178E+01 6.206E-01 4.740E-02 7.033E+00 3.017E+01 beamMoment.EndForceMoment.R1 = mList.GetDouble(0); beamMoment.EndForceMoment.R2 = mList.GetDouble(1); beamMoment.EndForceMoment.R3 = mList.GetDouble(2); beamMoment.EndForceMoment.M1 = mList.GetDouble(3); beamMoment.EndForceMoment.M2 = mList.GetDouble(4); beamMoment.EndForceMoment.M3 = mList.GetDouble(5); beamMomentCol.Add(beamMoment); } } catch (Exception exx) { } }
public static LoadData Parse(string txt) { //TYPE 2 -48.750 0 0.500 XINC 0.2 txt = txt.ToUpper().Replace("TYPE", ""); txt = txt.Replace(",", " "); txt = MyStrings.RemoveAllSpaces(txt); MyStrings mlist = new MyStrings(txt, ' '); LoadData ld = new LoadData(); ld.TypeNo = "TYPE " + mlist.GetInt(0); ld.X = mlist.GetDouble(1); ld.Y = mlist.GetDouble(2); ld.Z = mlist.GetDouble(3); if (mlist.StringList[4] == "XINC") { ld.XINC = mlist.GetDouble(5); } if (mlist.StringList[4] == "YINC") { ld.YINC = mlist.GetDouble(5); } if (mlist.StringList[4] == "ZINC") { ld.ZINC = mlist.GetDouble(5); } return(ld); }
public void Select_TreeView() { int last_step = 0; TreeNode tn = null; for (int i = 0; i < lsv_steps.Items.Count; i++) { var item = lsv_steps.Items[i]; if ( //item.Text.Contains("STEP") || item.Text.StartsWith("FOUNDATION") || item.Text.StartsWith("BEAM_DESIGN") || item.Text.StartsWith("COLUMN") || item.Text.StartsWith("PILE") || item.Text.StartsWith("STAIRCASE") || item.Text.StartsWith("SLAB")) { MyStrings ms = new MyStrings(item.Text, ':'); ms = new MyStrings(ms.StringList[0], ' '); //if( item.Text.Contains("DESIGN")) // ms = new MyStrings(ms.StringList[2], '.'); //else ms = new MyStrings(ms.StringList[1], '.'); int s = ms.GetInt(0); if (last_step != s) { trv_steps.Nodes.Add(item.Text); tn = trv_steps.Nodes[trv_steps.Nodes.Count - 1]; last_step = s; } else { tn.Nodes.Add(item.Text); } } //if (item.Text.StartsWith("TABLE")) //{ // trv_steps.Nodes.Add(item.Text); //} } splitContainer1.Panel1Collapsed = true; if (trv_steps.Nodes.Count <= 1) { splitContainer1.Panel2Collapsed = true; } }
void HighLight_Member(int BeamNo) { MyStrings ml = null; string kStr = ""; foreach (vdFigure fig in VDoc.ActiveLayOut.Entities) { try { ml = new MyStrings(fig.ToolTip.ToUpper(), ' '); if (ml.StringList[0].StartsWith("MEMBER")) { if (BeamNo == ml.GetInt(3)) { fig.LineWeight = VectorDraw.Professional.Constants.VdConstLineWeight.LW_158; fig.Update(); } } } catch (Exception exx) { } } }
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { string kStr = ""; TreeNode tn = tv_loads.SelectedNode; bool IsJointLoad = false; if (tn.Nodes.Count == 0) { IsJointLoad = (tn.Parent.Text.StartsWith("JOINT")); kStr = tn.Text; } astDoc.JointLoads.Delete_ASTRAArrowLine(Maindoc); astDoc.MemberLoads.Delete_ASTRAMemberLoad(Maindoc); if (tn.Parent != null) { tn = tn.Parent; if (tv_loads.SelectedNode.Text.StartsWith("JOINT")) { astDoc.JointLoads.DrawJointLoads(Maindoc, tn.Index + 1); goto _100; cmbLoadCase.SelectedIndex = tn.Index; } else if (tv_loads.SelectedNode.Text.StartsWith("MEMBER")) { astDoc.MemberLoads.DrawMemberLoad(Maindoc, tn.Index + 1); goto _100; cmbLoadCase.SelectedIndex = tn.Index; } if (tn.Text.StartsWith("COMB")) { MyStrings mlist = new MyStrings(kStr, ' '); astDoc.MemberLoads.DrawMemberLoad(Maindoc, mlist.GetInt(3)); astDoc.JointLoads.DrawJointLoads(Maindoc, mlist.GetInt(3)); goto _100; //astDoc.MemberLoads.DrawC(Maindoc, tn.Index + 1); goto _100; cmbLoadCase.SelectedIndex = tn.Index; } } else { astDoc.JointLoads.DrawJointLoads(Maindoc, tn.Index + 1); astDoc.MemberLoads.DrawMemberLoad(Maindoc, tn.Index + 1); goto _100; } if (tn.Parent != null) { tn = tn.Parent; } if (tn.Parent != null) { tn = tn.Parent; } if (tn.Parent != null) { tn = tn.Parent; } if (tn.Parent != null) { tn = tn.Parent; } int MemNo = MemberNo; int mIndx = astDoc.Members.IndexOf(MemNo); astDoc.Supports.DrawSupport(Maindoc); if (IsJointLoad) { astDoc.JointLoads.DrawJointLoads(Maindoc, tn.Index + 1, kStr); } else { astDoc.MemberLoads.DrawMemberLoad(Maindoc, tn.Index + 1, kStr); } _100: if (tn.Index < cmbLoadCase.Items.Count) { cmbLoadCase.SelectedIndex = tn.Index; } Maindoc.Redraw(true); }
private void btn_insert_Click(object sender, EventArgs e) { Button btn = sender as Button; MyStrings mlist = null; List <int> indices = new List <int>(); List <int> loadNo = new List <int>(); if (btn.Name == btn_insert.Name) { #region Chiranjit [2015 05 14] //Due to Load combination more than 3 is not acceptable if (dgv_combinations.RowCount > 0) { MessageBox.Show(this, "More than one Load Definition is not acceptable.", "ASTRA"); return; } #endregion Chiranjit [2015 05 14] for (int i = 0; i < lst_loadcases.SelectedIndices.Count; i++) { indices.Add(lst_loadcases.SelectedIndices[i]); mlist = new MyStrings(lst_loadcases.Items[lst_loadcases.SelectedIndices[i]].ToString(), ':'); loadNo.Add(mlist.GetInt(0)); } indices.Sort(); indices.Reverse(); for (int i = 0; i < indices.Count; i++) { lst_loadcases.Items.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { dgv_combinations.Rows.Add("Load Case " + ALL_Loads[i].LoadNo, "1.0"); } } } else if (btn.Name == btn_insert_all.Name) { #region Chiranjit [2015 05 14] //Due to Load combination more than 3 is not acceptable if (dgv_combinations.RowCount > 0) { MessageBox.Show(this, "More than one Load Definition is not acceptable.", "ASTRA"); return; } #endregion Chiranjit [2015 05 14] for (int i = 0; i < lst_loadcases.Items.Count; i++) { indices.Add(i); mlist = new MyStrings(lst_loadcases.Items[i].ToString(), ':'); loadNo.Add(mlist.GetInt(0)); } indices.Sort(); indices.Reverse(); for (int i = 0; i < indices.Count; i++) { lst_loadcases.Items.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { dgv_combinations.Rows.Add("Load Case " + ALL_Loads[i].LoadNo, "1.0"); } } } else if (btn.Name == btn_remove.Name) { int r = -1; for (int i = 0; i < dgv_combinations.SelectedCells.Count; i++) { r = dgv_combinations.SelectedCells[i].RowIndex; indices.Add(r); mlist = new MyStrings(dgv_combinations[0, r].Value.ToString().ToUpper().Replace("LOAD CASE ", ""), ' '); loadNo.Add(mlist.GetInt(0)); } for (int i = 0; i < indices.Count; i++) { dgv_combinations.Rows.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { lst_loadcases.Items.Add(ALL_Loads[i].ToString()); } } } else if (btn.Name == btn_remove_all.Name) { int r = -1; for (int i = 0; i < dgv_combinations.RowCount; i++) { r = i; indices.Add(r); mlist = new MyStrings(dgv_combinations[0, r].Value.ToString().ToUpper().Replace("LOAD CASE ", ""), ' '); loadNo.Add(mlist.GetInt(0)); } dgv_combinations.Rows.Clear(); for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { lst_loadcases.Items.Add(ALL_Loads[i].ToString()); } } } }
private void btn_insert_Click(object sender, EventArgs e) { Button btn = sender as Button; MyStrings mlist = null; List <int> indices = new List <int>(); List <int> loadNo = new List <int>(); if (btn.Name == btn_insert.Name) { for (int i = 0; i < lst_loadcases.SelectedIndices.Count; i++) { indices.Add(lst_loadcases.SelectedIndices[i]); mlist = new MyStrings(lst_loadcases.Items[lst_loadcases.SelectedIndices[i]].ToString(), ':'); loadNo.Add(mlist.GetInt(0)); } indices.Sort(); indices.Reverse(); for (int i = 0; i < indices.Count; i++) { lst_loadcases.Items.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { dgv_combinations.Rows.Add("Load Case " + ALL_Loads[i].LoadNo, "1.0"); } } } else if (btn.Name == btn_insert_all.Name) { for (int i = 0; i < lst_loadcases.Items.Count; i++) { indices.Add(i); mlist = new MyStrings(lst_loadcases.Items[i].ToString(), ':'); loadNo.Add(mlist.GetInt(0)); } indices.Sort(); indices.Reverse(); for (int i = 0; i < indices.Count; i++) { lst_loadcases.Items.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { dgv_combinations.Rows.Add("Load Case " + ALL_Loads[i].LoadNo, "1.0"); } } } else if (btn.Name == btn_remove.Name) { int r = -1; for (int i = 0; i < dgv_combinations.SelectedCells.Count; i++) { r = dgv_combinations.SelectedCells[i].RowIndex; indices.Add(r); mlist = new MyStrings(dgv_combinations[0, r].Value.ToString().ToUpper().Replace("LOAD CASE ", ""), ' '); loadNo.Add(mlist.GetInt(0)); } for (int i = 0; i < indices.Count; i++) { dgv_combinations.Rows.RemoveAt(indices[i]); } for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { lst_loadcases.Items.Add(ALL_Loads[i].ToString()); } } } else if (btn.Name == btn_remove_all.Name) { int r = -1; for (int i = 0; i < dgv_combinations.RowCount; i++) { r = i; indices.Add(r); mlist = new MyStrings(dgv_combinations[0, r].Value.ToString().ToUpper().Replace("LOAD CASE ", ""), ' '); loadNo.Add(mlist.GetInt(0)); } dgv_combinations.Rows.Clear(); for (int i = 0; i < ALL_Loads.Count; i++) { if (loadNo.Contains(ALL_Loads[i].LoadNo)) { lst_loadcases.Items.Add(ALL_Loads[i].ToString()); } } } }
void SetGrid() { kStr = iACad.GetSelectedMembersInText(); if (kStr == "") { kStr = "ALL"; } MyStrings mList = null; if (kStr == "ALL") { for (int i = 0; i < iACad.AstraDocument.Members.Count; i++) { dgvMemberGrid.Rows.Add(iACad.AstraDocument.Members[i].MemberNo, "BEAM", iACad.AstraDocument.Members[i].StartNode.NodeNo, iACad.AstraDocument.Members[i].EndNode.NodeNo, "", "", "", "", "", "", "", "", "", "", ""); } } else if (kStr.Contains("TO")) { mList = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' '); int indx = -1; for (int i = mList.GetInt(0); i <= mList.GetInt(2); i++) { indx = iACad.AstraDocument.Members.IndexOf(i); dgvMemberGrid.Rows.Add(iACad.AstraDocument.Members[indx].MemberNo, "BEAM", iACad.AstraDocument.Members[indx].StartNode.NodeNo, iACad.AstraDocument.Members[indx].EndNode.NodeNo, "", "", "", "", "", "", "", "", "", "", ""); } } else { kStr = kStr.Replace(',', ' '); mList = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' '); int indx = -1; for (int i = 0; i < mList.Count; i++) { indx = iACad.AstraDocument.Members.IndexOf(mList.GetInt(i)); dgvMemberGrid.Rows.Add(iACad.AstraDocument.Members[indx].MemberNo, "BEAM", iACad.AstraDocument.Members[indx].StartNode.NodeNo, iACad.AstraDocument.Members[indx].EndNode.NodeNo, "", "", "", "", "", "", "", "", "", "", ""); } } }
private void btn_OK_Click(object sender, EventArgs e) { MyStrings ml = new MyStrings(txt_beam_nos.Text.Trim(), ','); if (ml.Count > 0) { Slab_des.Beam_Nos = ml.StringList[0].Trim(); } else { MessageBox.Show("Slab Members is not defined.", "ASTRA", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } //Slab_des.Beam_Nos = txt_beam_nos.Text; Slab_des.case_index = cmb_slab_type.SelectedIndex; Slab_des.D = MyStrings.StringToDouble(txt_slab_D.Text, 0.0); Slab_des.fck = MyStrings.StringToDouble(cmb_slab_fck.Text.Replace("M", ""), 0.0); Slab_des.gamma = MyStrings.StringToDouble(txt_slab_gamma.Text, 0.0); Slab_des.fy = MyStrings.StringToDouble(cmb_slab_fy.Text.Replace("Fe", ""), 0.0); Slab_des.wll = MyStrings.StringToDouble(txt_slab_wll.Text, 0.0); Slab_des.d1 = MyStrings.StringToDouble(txt_slab_d1.Text, 0.0); Slab_des.s1 = MyStrings.StringToDouble(txt_slab_s1.Text, 0.0); Slab_des.d2 = MyStrings.StringToDouble(txt_slab_d2.Text, 0.0); Slab_des.s2 = MyStrings.StringToDouble(txt_slab_s2.Text, 0.0); Slab_des.d3 = MyStrings.StringToDouble(txt_slab_d3.Text, 0.0); Slab_des.s3 = MyStrings.StringToDouble(txt_slab_s3.Text, 0.0); Slab_des.d4 = MyStrings.StringToDouble(txt_slab_d4.Text, 0.0); Slab_des.s4 = MyStrings.StringToDouble(txt_slab_s4.Text, 0.0); Slab_des.cover = MyStrings.StringToDouble(txt_slab_c.Text, 0.0); Slab_des.dlf = MyStrings.StringToDouble(txt_slab_DLF.Text, 0.0); Slab_des.llf = MyStrings.StringToDouble(txt_slab_LLF.Text, 0.0); Slab_des.dgv_dls = dgv_dls; #region Check Beam Members MyStrings mlist = new MyStrings(txt_beam_nos.Text.Trim(), ' '); MemberIncidenceCollection mic = new MemberIncidenceCollection(); for (int i = 0; i < mlist.Count; i++) { mic.Add(AST_DOC.Members.Get_Member(mlist.GetInt(i))); } JointCoordinateCollection jntc = new JointCoordinateCollection(); for (int i = 1; i < mic.Count; i++) { if (mic[i - 1].StartNode == mic[i].StartNode) { if (!jntc.Contains(mic[i].StartNode)) { jntc.Add(mic[i].StartNode); } } else if (mic[i - 1].EndNode == mic[i].StartNode) { if (!jntc.Contains(mic[i].StartNode)) { jntc.Add(mic[i].StartNode); } } else if (mic[i - 1].StartNode == mic[i].EndNode) { if (!jntc.Contains(mic[i].EndNode)) { jntc.Add(mic[i].EndNode); } } else if (mic[i - 1].EndNode == mic[i].EndNode) { if (!jntc.Contains(mic[i].EndNode)) { jntc.Add(mic[i].EndNode); } } else { //string ss = Slab_Data[beam_nos] as string; //if (ss != null) // Slab_Data.Remove(beam_nos); //Save_Data(); MessageBox.Show("Beam " + mic[i].MemberNo + " and Beam " + mic[i - 1].MemberNo + " Joints are mismatch..", "ASTRA", MessageBoxButtons.OK); return; } } #endregion Check Beam Members //Chiranjit [2015 04 26] //Slab_des.Calculate_Program(); Slab_des.Design_Program(); List <string> Design_Summary = new List <string>(); Design_Summary.Add(string.Format("-------------------------------------")); Design_Summary.Add(string.Format("SLAB MEMBERS = {0}", Slab_des.Beam_Nos)); Design_Summary.Add(string.Format("SLAB FLOOR LEVEL = {0} M", cmb_flr_lvl.Text)); Design_Summary.AddRange(Slab_des.Design_Summary.ToArray()); Design_Summary.Add(string.Format("-------------------------------------")); string fnm = Slab_des.Get_Design_Summary_File(Slab_des.Beam_Nos, cmb_flr_lvl.Text); //fnm = Path.Combine(Path.GetDirectoryName(fnm), "SLAB_DESIGN_SUMMARY.TXT"); //if (File.Exists(fnm)) // Design_Summary.AddRange(File.ReadAllLines(fnm)); File.WriteAllLines(fnm, Design_Summary.ToArray()); Save_Data(); //Fill_Slab(txt_beam_nos.Text, Slab_des.IS_DESIGN_OK); Fill_All_Slab(); Add_Slab_Boq(Slab_des.BOQ); GetGripSelection(false).RemoveAll(); if (File.Exists(Slab_des.Report_File)) { MessageBox.Show(this, "Report file created in file " + Slab_des.Report_File, "ASTRA", MessageBoxButtons.OK); frmASTRAReport.OpenReport(Slab_des.Report_File, this, false); } VDoc.Redraw(true); //this.DialogResult = DialogResult.OK; //this.Close(); }
public void Get_Selected_Beams() { foreach (vdFigure fig in VDoc.ActiveLayOut.Entities) { fig.LineWeight = VectorDraw.Professional.Constants.VdConstLineWeight.LW_BYLAYER; fig.Update(); } vdSelection gripset = GetGripSelection(false); if (gripset == null) { return; } vdDocument VD = VDoc; List <int> members = new List <int>(); string kStr = ""; foreach (vdFigure fig in gripset) { if (fig is vdPolyline) { //if (gripset.Count > 1) // gripset.RemoveAt(0); fig.LineWeight = VectorDraw.Professional.Constants.VdConstLineWeight.LW_158; MyStrings ml = new MyStrings(fig.ToolTip.ToUpper(), ' '); if (ml.StringList[0].StartsWith("MEMBER")) { if (kStr == "") { kStr = ml.GetString(3); } else { kStr += " , " + ml.GetString(3); } Fill_Slab(ml.GetString(3)); //gripset.RemoveItem(fig); } fig.Update(); } else { fig.LineWeight = VectorDraw.Professional.Constants.VdConstLineWeight.LW_158; MyStrings ml = new MyStrings(fig.ToolTip.ToUpper(), ' '); if (ml.StringList[0].StartsWith("MEMBER")) { kStr += ml.GetInt(3) + " "; //if (!members.Contains(ml.GetInt(3))) // members.Add(ml.GetInt(3)); } fig.Update(); } } txt_beam_nos.Text = kStr; Show_Data(); VDoc.Redraw(true); }
private void Fill_Slab(string beam_nos, bool isOk) { MyStrings mlist = new MyStrings(beam_nos.Trim(), ' '); MemberIncidenceCollection mic = new MemberIncidenceCollection(); for (int i = 0; i < mlist.Count; i++) { mic.Add(AST_DOC.Members.Get_Member(mlist.GetInt(i))); } JointCoordinateCollection jntc = new JointCoordinateCollection(); vdPolyline vdpl = new vdPolyline(); vdpl.SetUnRegisterDocument(VDoc); vdpl.setDocumentDefaults(); for (int i = 1; i < mic.Count; i++) { if (mic[i - 1].StartNode == mic[i].StartNode) { if (!jntc.Contains(mic[i].StartNode)) { jntc.Add(mic[i].StartNode); } } else if (mic[i - 1].EndNode == mic[i].StartNode) { if (!jntc.Contains(mic[i].StartNode)) { jntc.Add(mic[i].StartNode); } } else if (mic[i - 1].StartNode == mic[i].EndNode) { if (!jntc.Contains(mic[i].EndNode)) { jntc.Add(mic[i].EndNode); } } else if (mic[i - 1].EndNode == mic[i].EndNode) { if (!jntc.Contains(mic[i].EndNode)) { jntc.Add(mic[i].EndNode); } } else { //string ss = Slab_Data[beam_nos] as string; //if (ss != null) // Slab_Data.Remove(beam_nos); //Save_Data(); MessageBox.Show("Beam " + mic[i].MemberNo + " and Beam " + mic[i - 1].MemberNo + " Joints are mismatch..", "ASTRA", MessageBoxButtons.OK); return; } } if (!jntc.Contains(mic[0].StartNode)) { jntc.Add(mic[0].StartNode); } if (!jntc.Contains(mic[0].EndNode)) { jntc.Add(mic[0].EndNode); } jntc.Add(jntc[0]); double max_z = AST_DOC.Joints.Max_Z_Positive; foreach (var item in jntc) { //vdpl.VertexList.Add(item.Point); vdpl.VertexList.Add(new gPoint(item.X, max_z - item.Z)); } //if (File.Exists(Slab_des.Get_Report_File(beam_nos, cmb_flr_lvl.Text))) //{ // vdpl.ToolTip = File.ReadAllText(Slab_des.Get_Report_File(beam_nos, cmb_flr_lvl.Text)); // vdpl.ToolTip = " //} vdpl.ToolTip = "Member surrounded : " + beam_nos; vdLayer vlay = VDoc.Layers.FindName("slab"); if (vlay == null) { vlay = new vdLayer(VDoc, "slab"); vlay.SetUnRegisterDocument(VDoc); vlay.setDocumentDefaults(); VDoc.Layers.Add(vlay); } //vlay.Frozen = false; //vlay.Lock = true; vdpl.Layer = vlay; //vdpl.PenColor = new vdColor(Color.DarkGray); if (isOk) { vdpl.PenColor = new vdColor(Color.Green); } else { vdpl.PenColor = new vdColor(Color.Red); } vdpl.HatchProperties = new vdHatchProperties(VectorDraw.Professional.Constants.VdConstFill.VdFillModeHatchFDiagonal); //vdpl.ExtrusionVector = new Vector(0.0, 1.0, 0.0); VDoc.ActiveLayOut.Entities.Add(vdpl); VDoc.ActiveLayOut.Entities.ChangeOrder(vdpl, true); VDoc.Redraw(true); }