コード例 #1
0
        private void btn_jload_add_Click(object sender, EventArgs e)
        {
            double Area_Factor = MyStrings.StringToDouble(txt_area_factor.Text, 0.6);
            double Velocity    = MyStrings.StringToDouble(txt_velocity.Text, 0.6);
            double Pressure    = MyStrings.StringToDouble(txt_pressure.Text, 0.6);

            double Width  = 0.0;
            double Height = 0.0;



            string kStr = "SC ";


            Seismic_Calculations ss = new Seismic_Calculations(iACad);

            ss.Set_AS();



            List <int> ll = ss.Get_FX_Joints(false);



            if (rbtn_fx_negative.Checked)
            {
                //ll = ss.Get_FX_Joints(false);

                Width  = ss.list_z[0] - ss.list_z[ss.list_z.Count - 1];
                Height = ss.list_y[1] - ss.list_y[ss.list_y.Count - 1];
            }
            else if (rbtn_fx_positive.Checked)
            {
                ll = ss.Get_FX_Joints(true);


                Width  = ss.list_z[0] - ss.list_z[ss.list_z.Count - 1];
                Height = ss.list_y[1] - ss.list_y[ss.list_y.Count - 1];
            }
            else if (rbtn_fz_positive.Checked)
            {
                ll = ss.Get_FZ_Joints(false);

                Width  = ss.list_x[0] - ss.list_x[ss.list_x.Count - 1];
                Height = ss.list_y[1] - ss.list_y[ss.list_y.Count - 1];
            }
            else if (rbtn_fz_negative.Checked)
            {
                ll     = ss.Get_FZ_Joints(true);
                Width  = ss.list_x[0] - ss.list_x[ss.list_x.Count - 1];
                Height = ss.list_y[1] - ss.list_y[ss.list_y.Count - 1];
            }

            Width  = Math.Abs(Width);
            Height = Math.Abs(Height);


            //Wind Rectangle Width = 13.432 m
            //Wind Rectangle Height = 26.810 m
            //Effective Area Factor = 0.60 (User Input)
            //Wind Rectangle Effective Area = 13.432 x 26.810 x 0.60 =216.067 Sq.m
            //Total Wind Force = 216.067 x 540 N. = 116676 N = 116.676 kN
            //Total Wind Force is to be applied on 30 Nodes as shown
            //Wind Force per Node = 116.676 / 30 = 3.89 kN in FX or FZ directions.

            double Wind_Eff_Area = Width * Height * Area_Factor;

            double total_force         = Wind_Eff_Area * Pressure / 1000;
            double wind_force_per_node = total_force / ll.Count;



            //ll = ss.Get_FX_Joints(true);

            //ll = ss.Get_FZ_Joints(false);

            //ll = ss.Get_FZ_Joints(true);


            //for (int i = 1; i < ss.list_y.Count; i++)
            //{
            //var jntLst = ss.Get_Floor_Joints(ss.list_y[i]);

            foreach (var item in ll)
            {
                if (rbtn_fz_positive.Checked)
                {
                    kStr = item + " FZ " + (wind_force_per_node).ToString("f3");
                }
                else if (rbtn_fz_negative.Checked)
                {
                    kStr = item + " FZ -" + (wind_force_per_node).ToString("f3");
                }
                else if (rbtn_fx_positive.Checked)
                {
                    kStr = item + " FX " + (wind_force_per_node).ToString("f3");
                }
                else if (rbtn_fx_negative.Checked)
                {
                    kStr = item + " FX -" + (wind_force_per_node).ToString("f3");
                }
                ASTRA_Data.Add(kStr);
            }
            //}



            //if (rbtn_fz_positive.Checked)
            //{
            //    kStr = kStr + " FZ ";
            //}

            ASTRA_Data.Add(kStr);

            if (Node != null)
            {
                if (btn_add.Text == "Change")
                {
                    //Node = Node.Parent;

                    //Node.Parent.Nodes.Clear();

                    Node.Text = "JOINT LOAD";

                    //var nd = Node.Nodes.Add("JOINT LOAD");

                    foreach (var item in ASTRA_Data)
                    {
                        Node.Nodes.Add(item);
                    }
                    //nd.Nodes.Add(
                    this.Close();
                }
                else
                {
                    //Node.Text = "JOINT LOAD";

                    var nd = Node.Nodes.Add("JOINT LOAD");

                    foreach (var item in ASTRA_Data)
                    {
                        nd.Nodes.Add(item);
                    }


                    //Node.Nodes.Add(kStr);
                    //Node.Expand();
                    Node.ExpandAll();
                }
            }
            //else
            //{
            this.Close();
        }
コード例 #2
0
        public void RunThread()
        {
            Design_Summary = new List <string>();
            List <string> BOQ_Summary = new List <string>();

            List <string> list = new List <string>();

            #region TechSOFT Banner
            list.Add("");
            list.Add("");
            list.Add("\t\t**********************************************");
            list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            list.Add("\t\t*      TechSOFT Engineering Services         *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t*       DESIGN OF RCC FLANGED BEAM           *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t**********************************************");
            list.Add("\t\t----------------------------------------------");
            list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            list.Add("\t\t----------------------------------------------");
            list.Add("");
            list.Add("");

            #endregion


            list.Add(string.Format(""));
            list.Add(string.Format(""));
            list.Add(string.Format("(Design Standard : BS 8110 / IS 456)"));
            list.Add(string.Format(""));

            int c    = 0;
            int step = 1;

            MovingLoadAnalysis.frm_ProgressBar.ON("Member Analysis....");
            for (int i = 0; i < dgv_beams.RowCount; i++)
            {
                MovingLoadAnalysis.frm_ProgressBar.SetValue(i, dgv_beams.RowCount);
                try
                {
                    c = 1;
                    BeamData bd = new BeamData();
                    bd.IsSelect = (bool)dgv_beams[c++, i].Value;
                    if (bd.IsSelect)
                    {
                        Set_Grid_Color(i);
                        c++;
                        bd.BeamNos = dgv_beams[c++, i].Value.ToString();
                        bd.Continuous_BeamMembers = dgv_beams[c++, i].Value.ToString();
                        bd.Breadth = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.Depth   = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.d1      = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.d2      = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.d3      = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.d4      = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        //bd.d5 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        //bd.d6 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        beamDes.Shear_Bar_dia = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);


                        bd.AM1 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AM2 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AM3 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AM4 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AV1 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AV2 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);
                        bd.AV3 = MyStrings.StringToDouble(dgv_beams[c++, i].Value.ToString(), 0.0);

                        //All_Beam_Data.Add(bd);



                        beamDes.Beam_Title = bd.BeamNos;
                        beamDes.Beam_Nos   = bd.Continuous_BeamMembers;
                        beamDes.Bar_dia1   = bd.d1;
                        beamDes.Bar_dia2   = bd.d2;
                        beamDes.Bar_dia3   = bd.d3;
                        beamDes.Bar_dia4   = bd.d4;
                        //beamDes.Bar_dia5 = bd.d5;
                        //beamDes.Bar_dia6 = bd.d6;

                        beamDes.AM1 = bd.AM1;
                        beamDes.AM2 = bd.AM2;
                        beamDes.AM3 = bd.AM3;
                        beamDes.AM4 = bd.AM4;

                        beamDes.AV1 = bd.AV1;
                        beamDes.AV2 = bd.AV2;
                        beamDes.AV3 = bd.AV3;


                        beamDes.D  = bd.Depth * 1000;
                        beamDes.bw = bd.Breadth * 1000;


                        if (beamDes.BOQ == null)
                        {
                            beamDes.BOQ = new Beam_BOQ();
                        }

                        beamDes.BOQ.Section_B = bd.Breadth;
                        beamDes.BOQ.Section_D = bd.Depth;
                        beamDes.BOQ.Area      = bd.Depth * bd.Breadth;


                        //list.AddRange(beamDes.Design_Program_Loop(step++).ToArray());
                        list.AddRange(beamDes.Design_Program_Loop(i + 1).ToArray());


                        Design_Summary.Add(string.Format("-------------------------------------"));
                        Design_Summary.Add(string.Format("BEAM = {0}, FLOOR LEVEL = {1:f3} M", beamDes.Beam_Title, beamDes.BOQ.Floor_ELevation));
                        Design_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", beamDes.Beam_Nos));
                        Design_Summary.AddRange(beamDes.Design_Summary.ToArray());
                        Design_Summary.Add(string.Format("-------------------------------------"));



                        BOQ_Summary.Add(string.Format("-------------------------------------"));
                        BOQ_Summary.Add(string.Format("BEAM = {0}, FLOOR LEVEL = {1:f3} M", beamDes.Beam_Title, beamDes.BOQ.Floor_ELevation));
                        BOQ_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", beamDes.Beam_Nos));
                        BOQ_Summary.AddRange(beamDes.BOQ_Summary.ToArray());
                        BOQ_Summary.Add(string.Format("-------------------------------------"));



                        //beamDes.Calculate_Program_Loop();


                        dgv_beams[c++, i].Value = beamDes.IS_DESIGN_OK ? "OK" : "NOT OK";
                        Set_Grid_Color(i, true, beamDes.IS_DESIGN_OK);

                        Add_Beam_BOQ(beamDes.BOQ);
                    }
                    //else
                    //    Set_Grid_Color(i);
                }
                catch (Exception exx) { }
            }
            MovingLoadAnalysis.frm_ProgressBar.OFF();


            list.Add(string.Format(""));
            list.Add(string.Format("-------------------------------------"));
            list.Add(string.Format("TABLE 1 : PERMISSIBLE_SHEAR_STRESS"));
            list.Add(string.Format("-------------------------------------"));
            list.Add(string.Format(""));

            list.AddRange(Tables.Get_File_Permissible_Shear_Stress().ToArray());


            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report


            File.WriteAllLines(beamDes.Report_File, list.ToArray());

            string des_sum = Path.Combine(Path.GetDirectoryName(beamDes.Get_Report_File(1)), "BEAM_DESIGN_SUMMARY.TXT");
            File.WriteAllLines(des_sum, Design_Summary.ToArray());

            des_sum = Path.Combine(Path.GetDirectoryName(beamDes.Get_Report_File(1)), "BEAM_BOQ_SUMMARY.TXT");
            File.WriteAllLines(des_sum, BOQ_Summary.ToArray());
        }
コード例 #3
0
        private void frmSupport_Load(object sender, EventArgs e)
        {
            if (ASTRA_Data != "")
            {
                chk_fx.Checked = false;
                chk_mx.Checked = false;

                chk_fy.Checked = false;
                chk_my.Checked = false;

                chk_fz.Checked = false;
                chk_mz.Checked = false;


                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(ASTRA_Data), ' ');

                string kStr = "";
                int    r    = -1;
                for (int i = 0; i < mlist.Count; i++)
                {
                    if (mlist.StringList[i].StartsWith("FIXED"))
                    {
                        r = i;

                        cmb_support_type.SelectedIndex = 0;
                    }
                    else if (mlist.StringList[i].StartsWith("PINNED"))
                    {
                        r = i;
                        cmb_support_type.SelectedIndex = 1;
                        //break;
                    }
                    else if (mlist.StringList[i].StartsWith("FX"))
                    {
                        chk_fx.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("FY"))
                    {
                        chk_fy.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("FZ"))
                    {
                        chk_fz.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("MX"))
                    {
                        chk_mx.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("MY"))
                    {
                        chk_my.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("MZ"))
                    {
                        chk_mz.Checked = true;
                    }
                    //Chiranjit [2014 10 13]
                    else if (mlist.StringList[i].StartsWith("KFX"))
                    {
                        rbtn_kFX.Checked = true;
                        txt_kVal.Text    = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i].StartsWith("KFY"))
                    {
                        rbtn_kFY.Checked = true;
                        txt_kVal.Text    = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i].StartsWith("KFZ"))
                    {
                        rbtn_kFZ.Checked = true;
                        txt_kVal.Text    = mlist.StringList[i + 1];
                    }
                }

                if (r != -1)
                {
                    txt_joint_nos.Text = mlist.GetString(0, r - 1).Trim();
                }
                btnAddData.Text = "Change";
            }
            else
            {
                cmb_support_type.SelectedIndex = 0;
                txt_joint_nos.Text             = iACad.GetSelectedJointsInText();
            }
        }
コード例 #4
0
        private void btn_fload_Click(object sender, EventArgs e)
        {
            string kStr = "";
            //XRANGE 4 18 FLOAD -0.15 YRANGE 0 10.43  ZRANGE -1 5.4  GY
            //YRANGE 4 18 FLOAD -0.15 XRANGE 0 10.43  ZRANGE -1 5.4  GY
            //ZRANGE 4 18 FLOAD -0.15 XRANGE 0 10.43  YRANGE -1 5.4  GY


            double dval = 0.0;

            dval = MyStrings.StringToDouble(txt_pressure.Text, 0.0);



            if (rbtn_XLimit.Checked)
            {
                if (chk_One.Checked)
                {
                    kStr = string.Format("XRANGE {0} {1} ONE {2} YRANGE {3} {4}  ZRANGE {5} {6}",
                                         txt_X_min.Text, txt_X_max.Text, txt_pressure.Text,
                                         txt_Y_min.Text, txt_Y_max.Text,
                                         txt_Z_min.Text, txt_Z_max.Text);
                }
                else
                {
                    kStr = string.Format("XRANGE {0} {1} FLOAD {2} YRANGE {3} {4}  ZRANGE {5} {6}",
                                         txt_X_min.Text, txt_X_max.Text, txt_pressure.Text,
                                         txt_Y_min.Text, txt_Y_max.Text,
                                         txt_Z_min.Text, txt_Z_max.Text);
                }
            }
            else if (rbtn_YLimit.Checked)
            {
                if (chk_One.Checked)
                {
                    kStr = string.Format("YRANGE {0} {1} ONE {2} XRANGE {3} {4}  ZRANGE {5} {6}",
                                         txt_Y_min.Text, txt_Y_max.Text, txt_pressure.Text,
                                         txt_X_min.Text, txt_X_max.Text,
                                         txt_Z_min.Text, txt_Z_max.Text);
                }
                else
                {
                    kStr = string.Format("YRANGE {0} {1} FLOAD {2} XRANGE {3} {4}  ZRANGE {5} {6}",
                                         txt_Y_min.Text, txt_Y_max.Text, txt_pressure.Text,
                                         txt_X_min.Text, txt_X_max.Text,
                                         txt_Z_min.Text, txt_Z_max.Text);
                }
            }
            else if (rbtn_ZLimit.Checked)
            {
                if (chk_One.Checked)
                {
                    kStr = string.Format("ZRANGE {0} {1} ONE {2} XRANGE {3} {4}  YRANGE {5} {6}",
                                         txt_Z_min.Text, txt_Z_max.Text, txt_pressure.Text,
                                         txt_X_min.Text, txt_X_max.Text,
                                         txt_Y_min.Text, txt_Y_max.Text);
                }
                else
                {
                    kStr = string.Format("ZRANGE {0} {1} FLOAD {2} XRANGE {3} {4}  YRANGE {5} {6}",
                                         txt_Z_min.Text, txt_Z_max.Text, txt_pressure.Text,
                                         txt_X_min.Text, txt_X_max.Text,
                                         txt_Y_min.Text, txt_Y_max.Text);
                }
            }



            if (rbtn_GX.Checked)
            {
                kStr = kStr + " GX";
            }
            else if (rbtn_GY.Checked)
            {
                kStr = kStr + " GY";
            }
            else if (rbtn_GZ.Checked)
            {
                kStr = kStr + " GZ";
            }

            ASTRA_Data.Add(kStr);

            if (Node != null)
            {
                if (btn_fload_add.Text == "Change")
                {
                    Node.Text = kStr;
                    this.Close();
                }
                else
                {
                    Node.Nodes.Add(kStr);
                    Node.ExpandAll();
                }
            }
            else
            {
                this.Close();
            }
        }
コード例 #5
0
        public void Read_User_Input()
        {
            #region USER DATA INPUT DATA

            List <string> lst_content = new List <string>(File.ReadAllLines(user_input_file));
            string        kStr        = "";
            MyStrings     mList       = null;
            string        VarName     = "";

            int indx = -1;

            bool chk = false;
            try
            {
                for (int i = 0; i < lst_content.Count; i++)
                {
                    kStr    = MyStrings.RemoveAllSpaces(lst_content[i]);
                    mList   = new MyStrings(kStr, '=');
                    VarName = MyStrings.RemoveAllSpaces(mList.StringList[0]);

                    if (VarName.ToUpper() == "DISTANCE REDUCE_LEVEL")
                    {
                        VarName = "DISTANCE REDUCE_LEVEL";
                        dgvRiver.Rows.Clear();
                        chk = true;
                        continue;
                    }

                    if (chk)
                    {
                        VarName = "DISTANCE REDUCE_LEVEL";
                        mList   = new MyStrings(kStr, ' ');
                    }
                    #region SWITCH
                    switch (VarName)
                    {
                    case "HFL":
                        txt_HFL.Text = mList.StringList[1].Trim();
                        break;

                    case "LWL":
                        txt_LWL.Text = mList.StringList[1].Trim();
                        break;

                    case "LBL":
                        txt_LBL.Text = mList.StringList[1].Trim();
                        break;

                    case "SDO":
                        txt_SDO.Text = mList.StringList[1].Trim();
                        break;

                    case "V1":
                        txt_V1.Text = mList.StringList[1].Trim();
                        break;

                    case "S":
                        txt_S.Text = mList.StringList[1].Trim();
                        break;

                    case "n":
                        txt_n.Text = mList.StringList[1].Trim();
                        break;

                    case "F1":
                        txt_F1.Text = mList.StringList[1].Trim();
                        break;

                    case "L":
                        txt_L.Text = mList.StringList[1].Trim();
                        break;

                    case "Ksb":
                        txt_Ksb.Text = mList.StringList[1].Trim();
                        break;

                    case "F2":
                        txt_F2.Text = mList.StringList[1].Trim();
                        break;

                    case "DISTANCE REDUCE_LEVEL":
                        dgvRiver.Rows.Add(dgvRiver.Rows.Count + 1, mList.GetDouble(0), mList.GetDouble(1));
                        break;
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
            }
            chk = false;
            Check_Grid();
            lst_content.Clear();
            #endregion
        }
コード例 #6
0
ファイル: frmSteelBeamBoQ.cs プロジェクト: VB6Hobbyst7/appDev
        public void RunThread()
        {
            Design_Summary = new List <string>();
            List <string> BOQ_Summary = new List <string>();

            List <string> list = new List <string>();

            #region TechSOFT Banner
            list.Add("");
            list.Add("");
            list.Add("\t\t**********************************************");
            list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            list.Add("\t\t*      TechSOFT Engineering Services         *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t*       DESIGN OF RCC FLANGED BEAM           *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t**********************************************");
            list.Add("\t\t----------------------------------------------");
            list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            list.Add("\t\t----------------------------------------------");
            list.Add("");
            list.Add("");

            #endregion


            list.Add(string.Format(""));
            list.Add(string.Format(""));
            list.Add(string.Format("(Design Standard : BS 8110 / IS 456)"));
            list.Add(string.Format(""));

            int c    = 0;
            int step = 1;

            MovingLoadAnalysis.frm_ProgressBar.ON("Member Analysis....");
            for (int i = 0; i < dgv_beams.RowCount; i++)
            {
                MovingLoadAnalysis.frm_ProgressBar.SetValue(i, dgv_beams.RowCount);
                try
                {
                    c = 1;
                    bool IsSelect = (bool)dgv_beams[c++, i].Value;
                    if (IsSelect)
                    {
                        Set_Grid_Color(i);

                        //beamDes.Floor_Level = MyStrings.StringToDouble(dgv_beams[2, i].Value.ToString(), 0.0);
                        beamDes.Floor_Level = MyStrings.StringToDouble(dgv_beams[2, i].Value.ToString(), 0.0);

                        beamDes.Beam_Nos    = dgv_beams[3, i].Value.ToString();
                        beamDes.sectionName = dgv_beams[5, i].Value.ToString();

                        var dta = uC_SteelSections1.Get_BeamSection(beamDes.sectionName);

                        var lst = dta.Data;

                        beamDes.a = (dta.Area * 100);

                        //beamDes.h = dta.Depth.ToString("f3");
                        beamDes.h = dta.Depth;
                        //beamDes.h1 = dta.h.ToString("f3");

                        beamDes.Ixx = (dta.Ixx * 10000);
                        //beamDes.Iyy = (dta.Iyy * 10000).ToString();
                        //beamDes.rxx = (dta.Rxx * 10).ToString();
                        //beamDes.ryy = (dta.Ryy * 10).ToString();

                        beamDes.Z  = (dta.Zxx * 1000);
                        beamDes.tw = dta.WebThickness;
                        //beamDes.tw = dta..ToString("f3");

                        beamDes.w = (dta.Weight / 9.81);
                        //beamDes.Bf = (dta.FlangeWidth).ToString();

                        if (lst.Count > 20)
                        {
                            beamDes.h1 = lst.GetDouble(17);
                            beamDes.h2 = lst.GetDouble(18);
                        }


                        beamDes.M = MyStrings.StringToDouble(dgv_beams[7, i].Value.ToString(), 0.0);
                        beamDes.V = MyStrings.StringToDouble(dgv_beams[8, i].Value.ToString(), 0.0);


                        //All_Beam_Data.Add(bd);

                        //beamDes.Beam_Title = bd.BeamNos;
                        //beamDes.Beam_Nos = bd.Continuous_BeamMembers;
                        //beamDes.Bar_dia1 = bd.d1;
                        //beamDes.Bar_dia2 = bd.d2;
                        //beamDes.Bar_dia3 = bd.d3;
                        //beamDes.Bar_dia4 = bd.d4;
                        //beamDes.Bar_dia5 = bd.d5;
                        //beamDes.Bar_dia6 = bd.d6;

                        //beamDes.AM1 = bd.AM1;
                        //beamDes.AM2 = bd.AM2;
                        //beamDes.AM3 = bd.AM3;
                        //beamDes.AM4 = bd.AM4;

                        //beamDes.AV1 = bd.AV1;
                        //beamDes.AV2 = bd.AV2;
                        //beamDes.AV3 = bd.AV3;


                        //beamDes.D = bd.Depth * 1000;
                        //beamDes.bw = bd.Breadth * 1000;


                        //if (beamDes.BOQ == null)
                        //    beamDes.BOQ = new Beam_BOQ();

                        //beamDes.BOQ.Section_B = bd.Breadth;
                        //beamDes.BOQ.Section_D = bd.Depth;
                        //beamDes.BOQ.Area = bd.Depth * bd.Breadth;


                        //list.AddRange(beamDes.Design_Program_Loop(step++).ToArray());
                        //list.AddRange(beamDes.Design_Program_Loop(i + 1).ToArray());


                        //Design_Summary.Add(string.Format("-------------------------------------"));
                        //Design_Summary.Add(string.Format("BEAM = {0}, FLOOR LEVEL = {1:f3} M", beamDes.Beam_Title, beamDes.BOQ.Floor_ELevation));
                        //Design_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", beamDes.Beam_Nos));
                        //Design_Summary.AddRange(beamDes.Design_Summary.ToArray());
                        //Design_Summary.Add(string.Format("-------------------------------------"));



                        //BOQ_Summary.Add(string.Format("-------------------------------------"));
                        //BOQ_Summary.Add(string.Format("BEAM = {0}, FLOOR LEVEL = {1:f3} M", beamDes.Beam_Title, beamDes.BOQ.Floor_ELevation));
                        //BOQ_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", beamDes.Beam_Nos));
                        //BOQ_Summary.AddRange(beamDes.BOQ_Summary.ToArray());
                        //BOQ_Summary.Add(string.Format("-------------------------------------"));



                        //beamDes.Calculate_Program_Loop();


                        beamDes.Calculate_Program();


                        dgv_beams[9, i].Value = beamDes.IS_DESIGN_OK ? "OK" : "NOT OK";
                        Set_Grid_Color(i, true, beamDes.IS_DESIGN_OK);

                        //Add_Beam_BOQ(beamDes.BOQ);
                    }
                    //else
                    //    Set_Grid_Color(i);
                }
                catch (Exception exx) { }
            }
            MovingLoadAnalysis.frm_ProgressBar.OFF();


            list.Add(string.Format(""));
            list.Add(string.Format("-------------------------------------"));
            list.Add(string.Format("TABLE 1 : PERMISSIBLE_SHEAR_STRESS"));
            list.Add(string.Format("-------------------------------------"));
            list.Add(string.Format(""));

            list.AddRange(Tables.Get_File_Permissible_Shear_Stress().ToArray());


            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report


            //File.WriteAllLines(beamDes.Report_File, list.ToArray());

            //string des_sum = Path.Combine(Path.GetDirectoryName(beamDes.Get_Report_File(1)), "BEAM_DESIGN_SUMMARY.TXT");
            //File.WriteAllLines(des_sum, Design_Summary.ToArray());

            //des_sum = Path.Combine(Path.GetDirectoryName(beamDes.Get_Report_File(1)), "BEAM_BOQ_SUMMARY.TXT");
            //File.WriteAllLines(des_sum, BOQ_Summary.ToArray());
        }
コード例 #7
0
        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,
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "",
                                           "");
                }
            }
        }
コード例 #8
0
        private void frmElementProp_Load(object sender, EventArgs e)
        {
            txt_DEN_val.Text = "";
            txt_EXX_val.Text = "";
            txt_EXY_val.Text = "";
            txt_EXG_val.Text = "";
            txt_EYY_val.Text = "";
            txt_EYG_val.Text = "";
            txt_GXY_val.Text = "";

            if (ASTRA_Data.Count > 0)
            {
                string kStr = ASTRA_Data[0].ToUpper();

                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');

                int r = -1;
                for (int i = 0; i < mlist.Count; i++)
                {
                    if (r == -1)
                    {
                        if (mlist.StringList[i].StartsWith("TH"))
                        {
                            r                = i;
                            txt_mnos.Text    = mlist.GetString(0, r - 1);
                            txt_thk_val.Text = mlist.StringList[i + 1];
                        }
                    }
                    else
                    {
                        if (mlist.StringList[i].StartsWith("DEN"))
                        {
                            //1 TO 234 TH 0.07 DEN 0.0 EXX 3.00934E6  EXY 531061  EXG 0.0  EYY 3.00934E6  EYG 0.0  GXY 1.23913E6
                            //r = i;
                            //txt_mnos.Text = mlist.GetString(0, r - 1);
                            txt_DEN_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("EXX"))
                        {
                            txt_EXX_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("EXY"))
                        {
                            txt_EXY_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("EXG"))
                        {
                            txt_EXG_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("EYY"))
                        {
                            txt_EYY_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("EYG"))
                        {
                            txt_EYG_val.Text = mlist.StringList[i + 1];
                        }
                        if (mlist.StringList[i].StartsWith("GXY"))
                        {
                            txt_GXY_val.Text = mlist.StringList[i + 1];
                        }
                    }
                }


                btn_aload_add.Text = "Change";
                //ASTRA_Data.Clear();
            }
            else
            {
                //txt_mnos.Text = iACad.GetSelectedE();
            }
        }
コード例 #9
0
 public override string ToString() => $"Фракция «{Faction.Name}» построила {MyStrings.GetShipNameOnce(Ship).ToLowerInvariant()}";
コード例 #10
0
 public void AddString()
 {
     MyStrings.Add("string " + (MyStrings.Count));
 }
コード例 #11
0
        private void btn_aload_Click(object sender, EventArgs e)
        {
            string kStr = "";

            kStr = txt_mnos.Text.Replace(',', ' ');


            kStr = kStr + " TH ";

            double dval = 0.0;

            dval = MyStrings.StringToDouble(txt_thk_val.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " " + dval.ToString("f3");
            }
            //else
            //    return;
            //1 TO 234 TH 0.07 DEN 0.0 EXX 3.00934E6  EXY 531061  EXG 0.0  EYY 3.00934E6  EYG 0.0  GXY 1.23913E6

            //dval = MyList.StringToDouble(txt_DEN_val.Text, 0.0);
            if (txt_DEN_val.Text != "")
            {
                kStr = kStr + " DEN " + txt_DEN_val.Text;
            }
            if (txt_EXX_val.Text != "")
            {
                kStr = kStr + " EXX " + txt_EXX_val.Text;
            }
            if (txt_EXY_val.Text != "")
            {
                kStr = kStr + " EXY " + txt_EXY_val.Text;
            }
            if (txt_EXG_val.Text != "")
            {
                kStr = kStr + " EXG " + txt_EXG_val.Text;
            }
            if (txt_EYY_val.Text != "")
            {
                kStr = kStr + " EYY " + txt_EYY_val.Text;
            }
            dval = MyStrings.StringToDouble(txt_EYG_val.Text, 0.0);
            if (txt_EYG_val.Text != "")
            {
                kStr = kStr + " EYG " + txt_EYG_val.Text;
            }
            if (txt_GXY_val.Text != "")
            {
                kStr = kStr + " GXY " + txt_GXY_val.Text;
            }



            if (TRV != null)
            {
                if (ASTRA_Data.Count > 0)
                {
                    TRV.SelectedNode.Text = kStr;
                    this.Close();
                }
                else
                {
                    ASTRA_Data.Add(kStr);
                    TRV.Nodes.Add(kStr);
                }
            }
            else
            {
                this.Close();
            }
        }
コード例 #12
0
        public void RunThread()
        {
            List <string> list = new List <string>();

            #region TechSOFT Banner
            list.Add("");
            list.Add("");
            list.Add("\t\t**********************************************");
            list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            list.Add("\t\t*      TechSOFT Engineering Services         *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t*      DESIGN OF ISOLATED FOUNDATION         *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t**********************************************");
            list.Add("\t\t----------------------------------------------");
            list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            list.Add("\t\t----------------------------------------------");
            list.Add("");

            #endregion



            int c    = 0;
            int step = 1;


            string ColumnNos = "";

            Design_Summary = new List <string>();
            //int c = 0;
            for (int i = 0; i < dgv_columns.RowCount; i++)
            {
                try
                {
                    c = 1;
                    ColumnData cd = new ColumnData();
                    cd.IsSelect = (bool)dgv_columns[c++, i].Value;
                    if (cd.IsSelect)
                    {
                        Set_Grid_Color(i, false, Foot_Des.IS_DESIGN_OK);

                        Foot_Des.ColumnNo = dgv_columns[c++, i].Value.ToString(); c++;
                        //Foot_Des.Continuous_ColumnMembers = dgv_columns[c++, i].Value.ToString();
                        Foot_Des.C1 = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.C2 = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);

                        Foot_Des.l = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.b = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);

                        Foot_Des.P1 = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.P2 = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.ph = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);

                        Foot_Des.bar_dia = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.P       = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Foot_Des.Mx      = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);

                        //Foot_Des.Mx = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0);

                        list.AddRange(Foot_Des.Design_Program_Loop(i + 1).ToArray());
                        Design_Summary.Add(string.Format("------------------------------------------------"));
                        //Design_Summary.Add(string.Format("FOUNDATION = {0}, ELEVATION = {1} M", Foot_Des.F));
                        Design_Summary.Add(string.Format("FOUNDATION = {0}", Foot_Des.ColumnNo));
                        //Design_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", cd.Continuous_ColumnMembers));
                        Design_Summary.AddRange(Foot_Des.Design_Summary.ToArray());
                        Design_Summary.Add(string.Format("------------------------------------------------"));


                        #region End of Report
                        list.Add("");
                        #endregion End of Report

                        dgv_columns[c, i].Value = Foot_Des.IS_DESIGN_OK ? " OK" : "NOT OK";
                        Set_Grid_Color(i, true, Foot_Des.IS_DESIGN_OK);

                        Add_Foundation_BOQ(Foot_Des.BOQ);
                    }
                }
                catch (Exception exx) { }
            }



            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report



            File.WriteAllLines(Foot_Des.Report_File, list.ToArray());

            string des_sum = Path.Combine(Path.GetDirectoryName(Foot_Des.Get_Report_File(1)), "FOUNDATION_DESIGN_SUMMARY.TXT");
            File.WriteAllLines(des_sum, Design_Summary.ToArray());
        }
コード例 #13
0
        private void Select_Members()
        {
            dgv_columns.Rows.Clear();

            chk_sele_all.Checked = true;

            List <MemberIncidence> list_mem   = new List <MemberIncidence>();
            List <int>             list_mem1  = new List <int>();
            List <List <int> >     list_conts = new List <List <int> >();

            for (int i = 0; i < AST_DOC.Members.Count; i++)
            {
                var item = AST_DOC.Members[i];

                if (item.EndNode.X == item.StartNode.X &&
                    item.EndNode.Y != item.StartNode.Y &&
                    item.EndNode.Z == item.StartNode.Z)
                {
                    list_mem.Add(item);
                }
            }

            bool flag = false;


            List <int>         lst_jnt = new List <int>();
            List <List <int> > all_jnt = new List <List <int> >();

            MovingLoadAnalysis.frm_ProgressBar.ON("Reading Members......");
            for (int i = 0; i < list_mem.Count; i++)
            {
                MovingLoadAnalysis.frm_ProgressBar.SetValue(i, list_mem.Count);
                flag = false;
                foreach (var item in list_conts)
                {
                    if (item.Contains(list_mem[i].MemberNo))
                    {
                        flag = true;
                        break;
                    }
                }
                if (!flag)
                {
                    JointCoordinateCollection cont_jcc = new JointCoordinateCollection();


                    list_mem1 = Get_Continuous_Members(list_mem[i], ref cont_jcc);
                    list_conts.Add(list_mem1);

                    lst_jnt = new List <int>();
                    foreach (var item in cont_jcc)
                    {
                        lst_jnt.Add(item.NodeNo);
                    }
                    all_jnt.Add(lst_jnt);
                }
            }
            MovingLoadAnalysis.frm_ProgressBar.OFF();


            MemberIncidence mi = null;


            double Pu  = 0.0;
            double Mux = 0.0;
            double Muy = 0.0;

            for (int i = 0; i < list_conts.Count; i++)
            {
                var item = list_conts[i];
                mi = AST_DOC.Members.Get_Member(item[0]);

                Pu  = StructureAnalysis.GetJoint_R1_Axial(all_jnt[i]);
                Mux = StructureAnalysis.GetJoint_M2_Bending(all_jnt[i]);
                Muy = StructureAnalysis.GetJoint_M3_Bending(all_jnt[i]);

                dgv_columns.Rows.Add(true, "C" + (i + 1), MyStrings.Get_Array_Text(item), mi.Property.YD, mi.Property.ZD, Main_Bar_Dia, col_design.bar_nos, Tie_Bar_Dia, Pu, Mux, Muy, "");
            }
        }
コード例 #14
0
        public void RunThread()
        {
            List <string> list = new List <string>();

            #region TechSOFT Banner
            list.Add("");
            list.Add("");
            list.Add("\t\t**********************************************");
            list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            list.Add("\t\t*      TechSOFT Engineering Services         *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t*           DESIGN OF RCC COLUMN             *");
            list.Add("\t\t*                                            *");
            list.Add("\t\t**********************************************");
            list.Add("\t\t----------------------------------------------");
            list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            list.Add("\t\t----------------------------------------------");
            list.Add("");

            #endregion



            int c    = 0;
            int step = 1;


            string ColumnNos = "";

            Design_Summary = new List <string>();
            //int c = 0;
            for (int i = 0; i < dgv_columns.RowCount; i++)
            {
                try
                {
                    c = 0;
                    ColumnData cd = new ColumnData();
                    cd.IsSelect = (bool)dgv_columns[c++, i].Value;
                    if (cd.IsSelect)
                    {
                        Set_Grid_Color(i);

                        cd.ColumnNos = dgv_columns[c++, i].Value.ToString();
                        if (MessageBox.Show("Process Design Column " + cd.ColumnNos + " \n\nDo you want to continue ?", "ASTRA", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                        {
                            break;
                        }
                        cd.Continuous_ColumnMembers = dgv_columns[c, i].Value.ToString(); c++;
                        cd.Breadth      = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Depth        = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Main_Bar_dia = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Bar_Nos      = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Tie_Bar_Dia  = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Pu           = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Mux          = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;
                        cd.Muy          = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0); c++;



                        //col_design.ColumnNos = All_Column_Data[i].Continuous_ColumnMembers;

                        col_design.Beam_Nos = cd.Continuous_ColumnMembers;
                        col_design.D        = cd.Depth * 1000;
                        col_design.b        = cd.Breadth * 1000;
                        col_design.bar_dia  = cd.Main_Bar_dia;
                        col_design.bar_nos  = cd.Bar_Nos;
                        col_design.tie_dia  = cd.Tie_Bar_Dia;
                        col_design.Pu       = cd.Pu;
                        col_design.Mux      = cd.Mux;
                        col_design.Muy      = cd.Muy;

                        //col_design.All_Column_Data.Clear();
                        col_design.Col_Data = cd;

                        if (Design_Summary == null)
                        {
                            Design_Summary = new List <string>();
                        }

                        Design_Summary.Add(string.Format(""));
                        list.AddRange(col_design.Design_Program_Loop(i + 1).ToArray());

                        Design_Summary.Add(string.Format("------------------------------------------------"));
                        Design_Summary.Add(string.Format("COLUMN = {0}", cd.ColumnNos));
                        Design_Summary.Add(string.Format("CONTINUOUS MEMBERS = {0}", cd.Continuous_ColumnMembers));
                        Design_Summary.AddRange(col_design.Design_Summary.ToArray());
                        Design_Summary.Add(string.Format("------------------------------------------------"));



                        Set_Grid_Color(i, true, col_design.IS_DESIGN_OK);

                        dgv_columns[c, i].Value = col_design.IS_DESIGN_OK ? " OK " : "NOT OK";

                        Add_Column_BOQ(col_design.BOQ);
                    }
                }
                catch (Exception exx) { }
            }



            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report

            Save_Data();

            File.WriteAllLines(col_design.Report_File, list.ToArray());


            string des_sum = Path.Combine(Path.GetDirectoryName(col_design.Get_Report_File(1)), "COLUMN_DESIGN_SUMMARY.TXT");
            File.WriteAllLines(des_sum, Design_Summary.ToArray());



            MessageBox.Show(this, "Report file created in file " + col_design.Report_File);

            frmASTRAReport fap = new frmASTRAReport(col_design.Report_File);
            fap.Owner = this;
            fap.ShowDialog();
        }
コード例 #15
0
        public bool ReadFromFile(string file_name)
        {
            if (!File.Exists(file_name))
            {
                return(false);
            }
            List <string> lstStr = new List <string>(File.ReadAllLines(file_name));
            string        kStr   = "";
            MyStrings     mList  = null;

            for (int i = 0; i < lstStr.Count; i++)
            {
                kStr  = lstStr[i].Trim().TrimStart().TrimEnd();
                mList = new MyStrings(kStr, '=');

                #region SWITCH
                switch (mList.StringList[0])
                {
                case "size1":
                    size1 = mList.StringList[1];
                    break;

                case "bgd":
                    bgd = mList.StringList[1];
                    break;

                case "d1":
                    d1 = mList.GetDouble(1);
                    break;

                case "d2":
                    d2 = mList.GetDouble(1);
                    break;

                case "dist1":
                    dist1 = mList.GetDouble(1); break;

                case "dist2":
                    dist2 = mList.GetDouble(1); break;

                case "dist3":
                    dist3 = mList.GetDouble(1); break;

                case "dist4":
                    dist4 = mList.GetDouble(1); break;

                case "bno1":
                    bno1 = mList.GetDouble(1); break;

                case "bno2":
                    bno2 = mList.GetDouble(1); break;

                case "bno3":
                    bno3 = mList.GetDouble(1); break;

                case "bno4":
                    bno4 = mList.GetDouble(1); break;

                case "bno5":
                    bno5 = mList.GetDouble(1); break;

                case "bwt1":
                    bwt1 = mList.GetDouble(1); break;
                    break;

                case "bwt2":
                    bwt2 = mList.GetDouble(1); break;

                case "bwt3":
                    bwt3 = mList.GetDouble(1); break;
                    break;

                case "bwt4":
                    bwt4 = mList.GetDouble(1); break;

                case "bwt5":
                    bwt5 = mList.GetDouble(1); break;

                case "depth":
                    depth = mList.GetDouble(1); break;

                case "shape1":
                    shape1 = mList.GetDouble(1); break;

                case "shape2":
                    shape2 = mList.GetDouble(1); break;

                case "shape3":
                    shape3 = mList.GetDouble(1); break;

                case "shape4":
                    shape4 = mList.GetDouble(1); break;
                }
                #endregion
            }

            lstStr.Clear();
            return(true);
        }
コード例 #16
0
        private void btn_jload_add_Click(object sender, EventArgs e)
        {
            string kStr = "";

            kStr = txt_joint_number.Text.Replace(',', ' ');

            double dval = 0.0;

            dval = MyStrings.StringToDouble(txt_fx.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " FX " + dval.ToString("f3");
            }
            dval = MyStrings.StringToDouble(txt_fy.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " FY " + dval.ToString("f3");
            }
            dval = MyStrings.StringToDouble(txt_fz.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " FZ " + dval.ToString("f3");
            }
            dval = MyStrings.StringToDouble(txt_mx.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " MX " + dval.ToString("f3");
            }
            dval = MyStrings.StringToDouble(txt_my.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " MY " + dval.ToString("f3");
            }
            dval = MyStrings.StringToDouble(txt_mz.Text, 0.0);
            if (dval != 0.0)
            {
                kStr = kStr + " MZ " + dval.ToString("f3");
            }

            if (textBox1.Text != "")
            {
                kStr = kStr + " *" + textBox1.Text;
            }

            ASTRA_Data.Add(kStr);

            if (Node != null)
            {
                if (btn_jload_add.Text == "Change")
                {
                    Node.Text = kStr;
                    this.Close();
                }
                else
                {
                    Node.Nodes.Add(kStr);
                    //Node.Expand();
                    Node.ExpandAll();
                }
            }
            else
            {
                this.Close();
            }
        }
コード例 #17
0
        public void RunThread()
        {
            List <string> list = new List <string>();

            #region TechSOFT Banner
            list.Add("");

            //list.Add("");
            //list.Add("\t\t**********************************************");
            //list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            //list.Add("\t\t*      TechSOFT Engineering Services         *");
            //list.Add("\t\t*                                            *");
            //list.Add("\t\t*           DESIGN OF RCC COLUMN             *");
            //list.Add("\t\t*                                            *");
            //list.Add("\t\t**********************************************");
            //list.Add("\t\t----------------------------------------------");
            //list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            //list.Add("\t\t----------------------------------------------");
            //list.Add("");

            #endregion



            int c    = 0;
            int step = 1;


            string ColumnNos = "";

            bool flag = false;
            //int c = 0;
            for (int i = 0; i < dgv_columns.RowCount; i++)
            {
                try
                {
                    c    = 0;
                    flag = (bool)dgv_columns[c++, i].Value;

                    if (flag)
                    {
                        Set_Grid_Color(i);

                        ////cd.ColumnNos = dgv_columns[c++, i].Value.ToString();
                        //if (MessageBox.Show("Process Design Column " + cd.ColumnNos + " \n\nDou you want to continue ?",
                        //    "ASTRA", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                        //{
                        //    break;
                        //}
                        //col_design.hf = (Floors[i + 1] - Floors[i]) * 1000;
                        col_design.floor_level = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        col_design.FlightNos   = MyStrings.StringToInt(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.hf          = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.wf          = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.wl          = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.tw          = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.bar_dia1    = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);
                        col_design.bar_dia2    = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0);


                        list.AddRange(col_design.Design_Program_Loop(i + 1).ToArray());
                        Set_Grid_Color(i, true, col_design.IS_DESIGN_OK);

                        dgv_columns[9, i].Value = col_design.IS_DESIGN_OK ? " OK " : "NOT OK";

                        Add_Staircase_BOQ(col_design.BOQ);
                    }
                }
                catch (Exception exx) { }
            }



            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report

            Save_Data();

            File.WriteAllLines(col_design.Report_File, list.ToArray());

            MessageBox.Show(this, "Report file created in file " + col_design.Report_File);

            frmASTRAReport fap = new frmASTRAReport(col_design.Report_File);
            fap.Owner = this;
            fap.ShowDialog();
        }
コード例 #18
0
        private void frmJointLoad_Load(object sender, EventArgs e)
        {
            if (ASTRA_Data.Count > 0)
            {
                string kStr = ASTRA_Data[0];



                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(ASTRA_Data[0]), '*');

                if (mlist.Count > 1)
                {
                    kStr = mlist.StringList[0];

                    textBox1.Text = mlist.StringList[1];
                }

                mlist = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');



                int r = -1;
                for (int i = 0; i < mlist.Count; i++)
                {
                    if (r == -1)
                    {
                        if (mlist.StringList[i] == "FX" || mlist.StringList[i] == "FY" || mlist.StringList[i] == "FZ" ||
                            mlist.StringList[i] == "MX" || mlist.StringList[i] == "MY" || mlist.StringList[i] == "MZ")
                        {
                            r = i;
                        }
                    }

                    if (mlist.StringList[i] == "FX")
                    {
                        txt_fx.Text = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i] == "FY")
                    {
                        txt_fy.Text = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i] == "FZ")
                    {
                        txt_fz.Text = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i] == "MX")
                    {
                        txt_mx.Text = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i] == "MY")
                    {
                        txt_my.Text = mlist.StringList[i + 1];
                    }
                    else if (mlist.StringList[i] == "MZ")
                    {
                        txt_mz.Text = mlist.StringList[i + 1];
                    }
                }

                if (r != -1)
                {
                    txt_joint_number.Text = mlist.GetString(0, r - 1);
                }
                btn_jload_add.Text = "Change";
                ASTRA_Data.Clear();
            }
            else
            {
                txt_joint_number.Text = iACad.GetSelectedJointsInText();
            }
        }
コード例 #19
0
        public void RunThread()
        {
            List <string> list = new List <string>();

            #region TechSOFT Banner


            //list.Add("");
            //list.Add("");
            //list.Add("\t\t**********************************************");
            //list.Add("\t\t*          ASTRA Pro Release 18.0            *");
            //list.Add("\t\t*      TechSOFT Engineering Services         *");
            //list.Add("\t\t*                                            *");
            //list.Add("\t\t*      DESIGN OF RCC PILE FOUNDATION         *");
            //list.Add("\t\t*                                            *");
            //list.Add("\t\t**********************************************");
            //list.Add("\t\t----------------------------------------------");
            //list.Add("\t\tTHIS RESULT CREATED ON " + System.DateTime.Now.ToString("dd.MM.yyyy  AT HH:mm:ss") + " ");
            //list.Add("\t\t----------------------------------------------");
            //list.Add("");

            #endregion



            int c    = 0;
            int step = 1;


            string ColumnNos = "";

            //int c = 0;
            for (int i = 0; i < dgv_columns.RowCount; i++)
            {
                try
                {
                    c = 1;
                    ColumnData cd = new ColumnData();
                    cd.IsSelect = (bool)dgv_columns[c++, i].Value;
                    if (cd.IsSelect)
                    {
                        Set_Grid_Color(i, false, false);
                        Pile_Design.ColumnNo = dgv_columns[c++, i].Value.ToString(); c++;

                        if (MessageBox.Show("Process Design Pile Foundation " + Pile_Design.ColumnNo + " \n\nDou you want to continue ?", "ASTRA", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                        {
                            break;
                        }
                        //Pile_Design.Continuous_ColumnMembers = dgv_columns[c++, i].Value.ToString();
                        Pile_Design.D = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        //Pile_Design.PL = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.LPC = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.BPC = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.DPC = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.d1  = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.d2  = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.d3  = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.P   = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);
                        Pile_Design.AM  = MyStrings.StringToDouble(dgv_columns[c++, i].Value.ToString(), 0.0);

                        //Pile_Design.Mx = MyStrings.StringToDouble(dgv_columns[c, i].Value.ToString(), 0.0);


                        list.AddRange(Pile_Design.Design_Program_Loop(i + 1).ToArray());

                        dgv_columns[c, i].Value = Pile_Design.IS_DESIGN_OK ? " OK" : "NOT OK";
                        Set_Grid_Color(i, true, Pile_Design.IS_DESIGN_OK);
                        Add_Foundation_BOQ(Pile_Design.BOQ);
                    }
                }
                catch (Exception exx) { }
            }



            #region End of Report
            list.Add("");
            list.Add("---------------------------------------------------------------------------");
            list.Add("---------------------       END OF REPORT        --------------------------");
            list.Add("---------------------------------------------------------------------------");
            #endregion End of Report



            File.WriteAllLines(Pile_Design.Report_File, list.ToArray());
            //MessageBox.Show(this, "Report file created in file " + Pile_Design.Report_File);
            ////frmASTRAReport fap = new frmASTRAReport(Pile_Design.Report_File);
            ////fap.Owner = this;
            ////fap.Show();

            //frmASTRAReport.OpenReport(Pile_Design.Report_File, this);

            Save_Data();
        }
コード例 #20
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            ASTRA_Data.Clear();

            kStr = "PERFORM TIME HISTORY ANALYSIS";
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("FREQUENCIES {0}", txtTotalFrequencies.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("TIME STEPS {0}", txtTimeSteps.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("PRINT INTERVAL {0}", txtPrintInterval.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("STEP INTERVAL {0}", txtStepInterval.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("DUMPING FACTOR {0}", txtDampingFactor.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("GROUND MOTION {0}", cmbGroundMotion.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("X DIVISION {0}", txtXDivision.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("SCALE FACTOR {0}", txtScaleFactor.Text);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);

            kStr = txtTimeValues.Text.Replace(',', ' ').Trim();
            kStr = string.Format("TIME VALUES {0}", kStr);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);

            kStr = txtTimeFunction.Text.Replace(',', ' ').Trim();
            kStr = string.Format("TIME FUNCTION {0}", kStr);
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);

            if (chkNodalConstraint.Checked)
            {
                kStr = string.Format("NODAL CONSTRAINT DOF", txtTimeFunction.Text);
                ASTRA_Data.Add(kStr);
                //iACad.WriteFile(kStr, true);
                kStr = txtNodeNumbers.Text.Replace(',', ' ');

                MyStrings mList = new MyStrings(kStr, ' ');

                string movement = "";

                #region MOVEMENT
                if (chkTx.Checked)
                {
                    movement = "TX ";
                }
                if (chkTy.Checked)
                {
                    movement += "TY ";
                }
                if (chkTz.Checked)
                {
                    movement += "TZ ";
                }
                if (chkRx.Checked)
                {
                    movement += "RX ";
                }
                if (chkRy.Checked)
                {
                    movement += "RY ";
                }
                if (chkRz.Checked)
                {
                    movement += "RZ ";
                }
                #endregion
                foreach (var item in MyStrings.Get_Array_Intiger(kStr))
                {
                    kStr = string.Format("{0} {1}", item, movement);
                    ASTRA_Data.Add(kStr);
                }
            }
            else
            {
            }
            kStr = "MEMBER STRESS COMPONENT";
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            kStr = string.Format("{0} {1}", txtMemberNumbers.Text, ((rbtnStart.Checked == true) ? "START" : "END"));
            ASTRA_Data.Add(kStr);
            //iACad.WriteFile(kStr, true);
            this.Close();
        }
コード例 #21
0
        private void frmMemberLoad_Load(object sender, EventArgs e)
        {
            if (ASTRA_Data.Count > 0)
            {
                string kStr = ASTRA_Data[0];

                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');

                int r = -1;

                bool Is_LINEAR = kStr.Contains("LIN");



                for (int i = 0; i < mlist.Count; i++)
                {
                    if (Is_LINEAR)
                    {
                        #region LINEAR Load
                        if (r == -1)
                        {
                            if (mlist.StringList[i] == "LIN")
                            {
                                r = i;
                            }
                        }
                        if (mlist.StringList[i] == "X")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "Y")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "Z")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GX")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GY")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GX")
                        {
                            cmb_lload_dir.SelectedItem = mlist.StringList[i];
                            txt_lload_start.Text       = mlist.StringList[i + 1];
                        }


                        if (mlist.StringList[i] == "X" ||
                            mlist.StringList[i] == "Y" ||
                            mlist.StringList[i] == "Z" ||
                            mlist.StringList[i] == "GX" ||
                            mlist.StringList[i] == "GY" ||
                            mlist.StringList[i] == "GZ")
                        {
                            if (mlist.Count > (i + 2))
                            {
                                txt_lload_end.Text = mlist.StringList[i + 2];
                            }
                        }
                        #endregion LINEAR Load
                    }
                    else
                    {
                        #region Member Load
                        if (r == -1)
                        {
                            if (mlist.StringList[i] == "UNI" || mlist.StringList[i].StartsWith("CON") ||
                                mlist.StringList[i].StartsWith("UMOM") || mlist.StringList[i].StartsWith("CMOM"))
                            {
                                r = i;

                                cmb_mload_type.SelectedItem = mlist.StringList[i];
                                continue;
                            }
                        }
                        if (mlist.StringList[i] == "X")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "Y")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "Z")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GX")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GY")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "GX")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "PX")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "PY")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }
                        else if (mlist.StringList[i] == "PZ")
                        {
                            cmb_mload_dir.SelectedItem = mlist.StringList[i];
                            txt_mload_val.Text         = mlist.StringList[i + 1];
                        }

                        if (mlist.StringList[i] == "X" ||
                            mlist.StringList[i] == "Y" ||
                            mlist.StringList[i] == "Z" ||
                            mlist.StringList[i] == "PX" ||
                            mlist.StringList[i] == "PY" ||
                            mlist.StringList[i] == "PZ" ||
                            mlist.StringList[i] == "GX" ||
                            mlist.StringList[i] == "GY" ||
                            mlist.StringList[i] == "GZ")
                        {
                            if (mlist.Count > (i + 2))
                            {
                                txt_mload_d1.Text = mlist.StringList[i + 2];
                            }
                            if (mlist.Count > (i + 3))
                            {
                                txt_mload_d2.Text = mlist.StringList[i + 3];
                            }
                        }
                        #endregion Member Load
                    }
                }

                if (r != -1)
                {
                    if (Is_LINEAR)
                    {
                        txt_mnos_lin.Text       = mlist.GetString(0, r - 1);
                        btn_lload_add.Text      = "Change";
                        tabControl1.SelectedTab = tab_LIN;
                    }
                    else
                    {
                        txt_mnos_uni.Text  = mlist.GetString(0, r - 1);
                        btn_mload_add.Text = "Change";
                    }
                }
                ASTRA_Data.Clear();
            }
            else
            {
                txt_mnos_uni.Text = iACad.GetSelectedMembersInText();
                txt_mnos_lin.Text = iACad.GetSelectedMembersInText();

                cmb_lload_dir.SelectedIndex  = 1;
                cmb_mload_type.SelectedIndex = 0;
                cmb_mload_dir.SelectedIndex  = 4;
            }
        }
コード例 #22
0
        private void frmSectionProperties_Load(object sender, EventArgs e)
        {
            //cmb_mass_unit.SelectedIndex = 0;
            //cmb_length_unit.SelectedIndex = 1;
            if (DGV_Joints == null ||
                DGV_Members == null)
            {
                gb1.Visible = false;
            }
            if (MGC != null)
            {
                foreach (var item in MGC)
                {
                    cmb_range.Items.Add(item.GroupName);
                }
            }
            if (ASTRA_Data.Count > 0)
            {
                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(ASTRA_Data[0]), ' ');

                //kStr
                int r = -1;
                for (int i = 0; i < mlist.Count; i++)
                {
                    if (mlist.StringList[i].StartsWith("PR"))
                    {
                        r = i;
                        //break;
                    }
                    else if (mlist.StringList[i].StartsWith("YD"))
                    {
                        txt_YD.Text            = mlist.StringList[i + 1];
                        rbtn_dimension.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("ZD"))
                    {
                        txt_ZD.Text            = mlist.StringList[i + 1];
                        rbtn_dimension.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("YB"))
                    {
                        txt_YB.Text            = mlist.StringList[i + 1];
                        rbtn_dimension.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("ZB"))
                    {
                        txt_ZB.Text            = mlist.StringList[i + 1];
                        rbtn_dimension.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("AX"))
                    {
                        if (r == -1)
                        {
                            r = i;
                        }
                        txt_AX.Text = mlist.StringList[i + 1];
                        rbtn_calculated_values.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("A"))
                    {
                        if (r == -1)
                        {
                            r = i;
                        }
                        txt_AX.Text = mlist.StringList[i + 1];
                        rbtn_calculated_values.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("IX"))
                    {
                        txt_IX.Text = mlist.StringList[i + 1];
                        rbtn_calculated_values.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("IY"))
                    {
                        txt_IY.Text = mlist.StringList[i + 1];
                        rbtn_calculated_values.Checked = true;
                    }
                    else if (mlist.StringList[i].StartsWith("IZ"))
                    {
                        txt_IZ.Text = mlist.StringList[i + 1];
                        rbtn_calculated_values.Checked = true;
                    }
                }

                if (r != -1)
                {
                    kStr = mlist.GetString(0, r - 1).Trim();
                    if (cmb_range.Items.Contains(kStr))
                    {
                        cmb_range.SelectedItem = kStr;
                    }
                    else
                    {
                        cmb_range.SelectedIndex = 1;
                        txt_member_nos.Text     = kStr;
                    }
                }

                btn_add_data.Text = "Change";
            }
            else
            {
                //cmb_mass_unit.SelectedIndex = (int)iACad.MassUnit;
                //cmb_length_unit.SelectedIndex = (int)iACad.LengthUnit; ;
                rbtn_dimension.Checked = true;

                kStr = iACad.GetSelectedMembersInText();

                rbtn_member_select.Checked = true;

                if (kStr == "ALL")
                {
                    cmb_range.SelectedIndex = 0;
                }
                else
                {
                    cmb_range.SelectedIndex = 1;
                }


                txt_member_nos.Text = kStr;
            }
            Load_Floor_Levels();
        }
コード例 #23
0
        private void frmFloorLoad_Load(object sender, EventArgs e)
        {
            if (ASTRA_Data.Count > 0)
            {
                string kStr = ASTRA_Data[0];

                MyStrings mlist = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');

                int r = -1;
                for (int i = 0; i < mlist.Count; i++)
                {
                    if (i == 0)
                    {
                        if (mlist.StringList[i].StartsWith("XR") ||
                            mlist.StringList[i].StartsWith("XL"))
                        {
                            rbtn_XLimit.Checked = true;
                        }
                        if (mlist.StringList[i].StartsWith("YR") ||
                            mlist.StringList[i].StartsWith("YL"))
                        {
                            rbtn_YLimit.Checked = true;
                        }
                        if (mlist.StringList[i].StartsWith("ZR") ||
                            mlist.StringList[i].StartsWith("ZL"))
                        {
                            rbtn_ZLimit.Checked = true;
                        }
                    }
                    if (mlist.StringList[i].StartsWith("FL"))
                    {
                        txt_pressure.Text = mlist.StringList[++i];
                        chk_One.Checked   = false;
                    }

                    if (mlist.StringList[i].StartsWith("ON"))
                    {
                        txt_pressure.Text = mlist.StringList[++i];
                        chk_One.Checked   = true;
                    }
                    if (mlist.StringList[i].StartsWith("GX"))
                    {
                        rbtn_GX.Checked = true;
                    }
                    if (mlist.StringList[i].StartsWith("GY"))
                    {
                        rbtn_GY.Checked = true;
                    }
                    if (mlist.StringList[i].StartsWith("GZ"))
                    {
                        rbtn_GZ.Checked = true;
                    }

                    if (mlist.StringList[i].StartsWith("XR") ||
                        mlist.StringList[i].StartsWith("XL"))
                    {
                        //rbtn_XLimit.Checked = true;
                        txt_X_min.Text = mlist.StringList[++i];
                        txt_X_max.Text = mlist.StringList[++i];
                    }
                    else if (mlist.StringList[i].StartsWith("YR") ||
                             mlist.StringList[i].StartsWith("YL"))
                    {
                        //rbtn_YLimit.Checked = true;
                        txt_Y_min.Text = mlist.StringList[++i];
                        txt_Y_max.Text = mlist.StringList[++i];
                    }
                    else if (mlist.StringList[i].StartsWith("ZR") ||
                             mlist.StringList[i].StartsWith("ZL"))
                    {
                        //rbtn_ZLimit.Checked = true;
                        txt_Z_min.Text = mlist.StringList[++i];
                        txt_Z_max.Text = mlist.StringList[++i];
                    }
                }


                btn_fload_add.Text = "Change";
                ASTRA_Data.Clear();
            }
            else
            {
                //txt_mnos.Text = iACad.GetSelectedMembersInText();
            }
        }
コード例 #24
0
        public void Load_Floor_Levels()
        {
            if (DGV_Joints == null)
            {
                return;
            }

            BeamTable        = new Hashtable();
            AllColumn        = new List <int>();
            selected_beams   = new List <int>();
            selected_columns = new List <int>();


            List <double> flvls = new List <double>();

            double d = 0.0;
            //JointCoordinateCollection
            //MemberIncidenceCollection
            MemberIncidence mi = new MemberIncidence();
            //MemberIncidenceCollection mic = new MemberIncidenceCollection();
            JointCoordinate jc = new JointCoordinate();
            //JointCoordinateCollection jcc = new JointCoordinateCollection();


            List <int> selected_mems = MyStrings.Get_Array_Intiger(kStr);

            for (int i = 0; i < DGV_Joints.RowCount; i++)
            {
                jc = new JointCoordinate();

                jc.NodeNo = MyStrings.StringToInt(DGV_Joints[0, i].Value.ToString(), 0);
                jc.X      = MyStrings.StringToDouble(DGV_Joints[1, i].Value.ToString(), 0.0);
                jc.Y      = MyStrings.StringToDouble(DGV_Joints[2, i].Value.ToString(), 0.0);
                jc.Z      = MyStrings.StringToDouble(DGV_Joints[3, i].Value.ToString(), 0.0);
                jcc.Add(jc);
            }

            for (int i = 0; i < DGV_Members.RowCount; i++)
            {
                mi = new MemberIncidence();

                mi.MemberNo = MyStrings.StringToInt(DGV_Members[0, i].Value.ToString(), 0);
                //jc.X = MyStrings.StringToDouble(DGV_Members[1, i].Value.ToString(), 0.0);
                mi.StartNode.NodeNo = MyStrings.StringToInt(DGV_Members[2, i].Value.ToString(), 0);
                mi.EndNode.NodeNo   = MyStrings.StringToInt(DGV_Members[3, i].Value.ToString(), 0);
                mic.Add(mi);
            }

            mic.CopyJointCoordinates(jcc);
            foreach (var item in mic)
            {
                if (item.StartNode.Y == item.EndNode.Y)
                {
                    if (selected_mems.Contains(item.MemberNo))
                    {
                        selected_beams.Add(item.MemberNo);
                    }

                    d = item.StartNode.Y;
                    if (!flvls.Contains(d))
                    {
                        flvls.Add(d);
                        //cmb_floor_levels.Items.Add(d.ToString("f3"));
                    }
                }
                else if (item.StartNode.X == item.EndNode.X &&
                         item.StartNode.Z == item.EndNode.Z)
                {
                    if (selected_mems.Contains(item.MemberNo))
                    {
                        selected_columns.Add(item.MemberNo);
                    }

                    AllColumn.Add(item.MemberNo);
                }
            }


            flvls.Sort();
            List <int> mems      = new List <int>();
            List <int> all_beams = new List <int>();

            foreach (var lvl in flvls)
            {
                cmb_floor_levels.Items.Add(lvl.ToString("f3"));
                mems = new List <int>();
                foreach (var item in mic)
                {
                    if (item.StartNode.Y == item.EndNode.Y)
                    {
                        d = item.StartNode.Y;
                        if (lvl == d)
                        {
                            mems.Add(item.MemberNo);
                        }
                    }
                }
                BeamTable.Add(lvl.ToString("f3"), mems);

                all_beams.AddRange(mems.ToArray());
            }
            BeamTable.Add("all", all_beams);
        }
コード例 #25
0
        private void Select_Members()
        {
            double d = MyStrings.StringToDouble(cmb_flr_lvl.Text, 0.0);

            dgv_beams.Rows.Clear();
            cmb_sele_all.Checked = true;

            //for (int i = 0; i < AST_DOC.Members.Count; i++)
            //{
            //    var item = AST_DOC.Members[i];

            //    if (item.EndNode.Y == d && item.StartNode.Y == d)
            //    {
            //        dgv_beams.Rows.Add(true, item.MemberNo, "", item.Property.YD, item.Property.ZD);
            //    }
            //}

            List <MemberIncidence> list_mem   = new List <MemberIncidence>();
            List <int>             list_mem1  = new List <int>();
            List <List <int> >     list_conts = new List <List <int> >();

            for (int c = 0; c < cmb_flr_lvl.Items.Count; c++)
            {
                d = MyStrings.StringToDouble(cmb_flr_lvl.Items[c].ToString(), 0.0);

                for (int i = 0; i < AST_DOC.Members.Count; i++)
                {
                    var item = AST_DOC.Members[i];

                    if (item.EndNode.Y == d && item.StartNode.Y == d)
                    //if (item.EndNode.Y == item.StartNode.Y)
                    {
                        list_mem.Add(item);
                    }
                }
            }
            bool flag = false;

            MovingLoadAnalysis.frm_ProgressBar.On = false;
            MovingLoadAnalysis.frm_ProgressBar.ON("Reading continuous Beam Nos........");


            MemberIncidence mi     = null;
            int             count  = 1;
            double          last_Y = 0.0;

            double am1, am2, am3, am4, av1, av2, av3;

            am1 = am2 = am3 = am4 = av1 = av2 = av3 = 0.0;

            JointCoordinateCollection cont_jcc = new JointCoordinateCollection();
            int cnt = 1;

            for (int i = 0; i < list_mem.Count; i++)
            {
                MovingLoadAnalysis.frm_ProgressBar.SetValue(i, list_mem.Count);
                flag = false;
                foreach (var item in list_conts)
                {
                    if (item.Contains(list_mem[i].MemberNo))
                    {
                        flag = true;
                        break;
                    }
                }
                if (!flag)
                {
                    cont_jcc  = new JointCoordinateCollection();
                    list_mem1 = Get_Continuous_Beams(list_mem[i], ref cont_jcc);
                    list_conts.Add(list_mem1);


                    #region

                    var item = list_mem1;

                    mi = AST_DOC.Members.Get_Member(item[0]);
                    if (last_Y != mi.EndNode.Y)
                    {
                        count = 1;
                    }

                    beamDes.Get_All_Forces(cont_jcc, ref am1, ref am2, ref am3, ref am4, ref av1, ref av2, ref av3);

                    dgv_beams.Rows.Add(cnt++, true, mi.EndNode.Y.ToString("f4"), "B" + (count++),
                                       MyStrings.Get_Array_Text(item),
                                       mi.Property.YD, mi.Property.ZD,
                                       d1, d2, d3, d4,
                                       //d5, d6,
                                       beamDes.Shear_Bar_dia,
                                       am1.ToString("f3"),
                                       am2.ToString("f3"),
                                       am3.ToString("f3"),
                                       am4.ToString("f3"),
                                       av1.ToString("f3"),
                                       av2.ToString("f3"),
                                       av3.ToString("f3"),
                                       "");
                    last_Y = mi.EndNode.Y;
                    #endregion
                }
            }
            MovingLoadAnalysis.frm_ProgressBar.OFF();


            //MemberIncidence mi = null;
            //int count = 1;
            //double last_Y = 0.0;

            //double am1, am2, am3, am4, av1, av2, av3;

            //am1 = am2 = am3 = am4 = av1 = av2 = av3 = 0.0;


            //for (int i = 0; i < list_conts.Count; i++)
            //{
            //    var item = list_conts[i];

            //    mi = AST_DOC.Members.Get_Member(item[0]);
            //    if (last_Y != mi.EndNode.Y)
            //    {
            //        count = 1;
            //    }


            //    dgv_beams.Rows.Add(i+1, true, mi.EndNode.Y.ToString("f3"), "B" + (count++),
            //        MyStrings.Get_Array_Text(item),
            //        mi.Property.YD, mi.Property.ZD,
            //        d1, d2, d3, d4, d5, d6,
            //        beamDes.Shear_Bar_dia,
            //        am1.ToString("f3"),
            //        am2.ToString("f3"),
            //        am3.ToString("f3"),
            //        am4.ToString("f3"),
            //        av1.ToString("f3"),
            //        av2.ToString("f3"),
            //        av3.ToString("f3"),
            //         "");
            //    last_Y = mi.EndNode.Y;
            //}
        }
コード例 #26
0
        public void Update_Data(string UpdText)
        {
            if (TRV == null)
            {
                return;
            }
            List <List <int> > list1 = new List <List <int> >();

            List <int> mems    = new List <int>();
            List <int> Updmems = new List <int>();

            //string UpdText = "1 TO 10 PR YD 0.410 ZD 0.32";



            MyStrings mmls = new MyStrings(UpdText, ' ');

            int    intx = 0;
            string kStr = "";
            string PR   = "";

            for (intx = 0; intx < mmls.Count; intx++)
            {
                if (mmls.StringList[intx].StartsWith("PR"))
                {
                    kStr = mmls.GetString(0, intx - 1);
                    PR   = mmls.GetString(intx);
                    break;
                }
            }
            Updmems = MyStrings.Get_Array_Intiger(kStr);
            string PR_Upd = PR;


            //MyStrings memGrp = new MyStrings(UpdText, ' ');

            string mat_str = kStr.Trim();

            for (int i = 0; i < TRV.Nodes.Count; i++)
            {
                //mems = MyStrings.Get_Array_Intiger(TRV.Nodes[i].Text);

                mmls = new MyStrings(TRV.Nodes[i].Text, ' ');
                if (Updmems.Count > 0)
                {
                    intx = 0;
                    kStr = "";
                    PR   = "";
                    for (intx = 0; intx < mmls.Count; intx++)
                    {
                        if (mmls.StringList[intx].StartsWith("PR"))
                        {
                            kStr = mmls.GetString(0, intx - 1);
                            PR   = mmls.GetString(intx);
                            break;
                        }
                    }
                    mems = MyStrings.Get_Array_Intiger(kStr);

                    if (mems.Count > 0)
                    {
                        foreach (var item in Updmems)
                        {
                            if (mems.Contains(item))
                            {
                                mems.Remove(item);
                            }
                        }
                        if (mems.Count > 0)
                        {
                            TRV.Nodes[i].Text = MyStrings.Get_Array_Text(mems) + " " + PR;
                        }
                        else
                        {
                            TRV.Nodes.RemoveAt(i);
                            i--;
                        }
                        list1.Add(mems);
                    }
                }
                else
                {
                    if (mmls.StringList[0] == mat_str)
                    {
                        TRV.Nodes[i].Text = UpdText;
                        //TRV.Nodes.RemoveAt(i);
                        goto _ss;
                    }
                }
            }
            TRV.Nodes.Add(UpdText);

_ss:

            iACad.AstraDocument.MemberProperties.AddTxt(UpdText);
            iACad.AstraDocument.MemberProperties.CopyMemberIncidence(iACad.AstraDocument.Members);
        }
コード例 #27
0
        public void Update_Data(string UpdText)
        {
            if (TRV == null)
            {
                return;
            }
            List <List <int> > list1 = new List <List <int> >();

            List <int> mems    = new List <int>();
            List <int> Updmems = new List <int>();

            //string UpdText = "1 TO 10 PR YD 0.410 ZD 0.32";



            MyStrings mmls = new MyStrings(UpdText, ' ');

            int    intx = 0;
            string kStr = "";
            string PR   = "";

            for (intx = 0; intx < mmls.Count; intx++)
            {
                if (mmls.StringList[intx].StartsWith("PR"))
                {
                    kStr = mmls.GetString(0, intx - 1);
                    PR   = mmls.GetString(intx);
                    break;
                }
            }
            Updmems = MyStrings.Get_Array_Intiger(kStr);
            string PR_Upd = PR;


            for (int i = 0; i < TRV.Nodes.Count; i++)
            {
                //mems = MyStrings.Get_Array_Intiger(TRV.Nodes[i].Text);

                mmls = new MyStrings(TRV.Nodes[i].Text, ' ');

                intx = 0;
                kStr = "";
                PR   = "";
                for (intx = 0; intx < mmls.Count; intx++)
                {
                    if (mmls.StringList[intx].StartsWith("PR"))
                    {
                        kStr = mmls.GetString(0, intx - 1);
                        PR   = mmls.GetString(intx);
                        break;
                    }
                }
                mems = MyStrings.Get_Array_Intiger(kStr);


                foreach (var item in Updmems)
                {
                    if (mems.Contains(item))
                    {
                        mems.Remove(item);
                    }
                }
                if (mems.Count > 0)
                {
                    TRV.Nodes[i].Text = MyStrings.Get_Array_Text(mems) + " " + PR;
                }
                else
                {
                    TRV.Nodes.RemoveAt(i);
                    i--;
                }
                list1.Add(mems);
            }
            TRV.Nodes.Add(UpdText);

            //string kStr = "";
        }
コード例 #28
0
        public static bool ReadLineCoordinates(string fileName, vdDocument doc)
        {
            //vdArray<vdLine> line_arr = new vdArray<vdLine>();
            List <string> lstStr = new List <string>(File.ReadAllLines(fileName));
            string        kStr = "";
            string        option = "";
            string        SP, EP, TEXT, IP, Height;

            SP = EP = IP = TEXT = Height = "";

            MyStrings mList = null;

            for (int i = 0; i < lstStr.Count; i++)
            {
                kStr = lstStr[i].Trim().TrimEnd().TrimStart();
                if (kStr == "VD_LINE")
                {
                    option = "VD_LINE"; i++;
                    SP     = lstStr[i].Replace("SP=", ""); i++;
                    EP     = lstStr[i].Replace("EP=", "");
                }
                else if (kStr == "VD_TEXT")
                {
                    option = "VD_TEXT"; i++;
                    IP     = lstStr[i].Replace("IP=", ""); i++;
                    TEXT   = lstStr[i].Replace("TEXT=", ""); i++;
                    Height = lstStr[i].Replace("HEIGHT=", "");
                }
                switch (option)
                {
                case "VD_LINE":
                    mList = new MyStrings(MyStrings.RemoveAllSpaces(SP), ',');
                    vdLine ln = new vdLine();
                    ln.SetUnRegisterDocument(doc);
                    ln.setDocumentDefaults();
                    ln.StartPoint.x = mList.GetDouble(0);
                    ln.StartPoint.y = mList.GetDouble(1);
                    ln.StartPoint.z = mList.GetDouble(2);
                    mList           = new MyStrings(MyStrings.RemoveAllSpaces(EP), ',');
                    ln.EndPoint.x   = mList.GetDouble(0);
                    ln.EndPoint.y   = mList.GetDouble(1);
                    ln.EndPoint.z   = mList.GetDouble(2);
                    doc.ActiveLayOut.Entities.AddItem(ln);

                    break;

                case "VD_TEXT":

                    mList = new MyStrings(MyStrings.RemoveAllSpaces(IP), ',');
                    vdText txt = new vdText();
                    txt.SetUnRegisterDocument(doc);
                    txt.setDocumentDefaults();
                    txt.InsertionPoint.x = mList.GetDouble(0);
                    txt.InsertionPoint.y = mList.GetDouble(1);
                    txt.InsertionPoint.z = mList.GetDouble(2);
                    txt.TextString       = TEXT;
                    txt.Height           = MyStrings.StringToDouble(Height, 0.01);
                    doc.ActiveLayOut.Entities.AddItem(txt);
                    break;
                }
            }
            lstStr.Clear();
            //doc.ShowUCSAxis = false;
            //VectorDraw.Professional.ActionUtilities.vdCommandAction.View3D_VTop(doc);
            //doc.Redraw(true);
            return(true);
        }
コード例 #29
0
 public override string ToString() => Improvement != SectorImprovementType.None ? $"Фракция «{MySave.Factions.Find(x => x.Tag == Sector.Tag).Name}» построила в секторе «{Sector.Name}» улучшение \"{MyStrings.GetSectorImprovementType(Improvement)}\"" : $"В секторе «{Sector.Name}» теперь нет улучшения сектора";
コード例 #30
0
        public void ReadFromFilFile(string flName)
        {
            //SLAB DESIGN
            //L = 3000.00 mm; B = 1000 m; D = 110.00 mm
            //h1 = 15.00 mm; h2 = 15.00 mm
            //ENFORCEMENT BAR
            //B1 = 250.00 mm; SPACING = 200.00 mm
            //END

            bool          IsSlabFind = false;
            List <string> lstStr     = new List <string>(File.ReadAllLines(flName));
            string        kStr       = "";

            MyStrings mList = null;

            for (int i = 0; i < lstStr.Count; i++)
            {
                kStr = MyStrings.RemoveAllSpaces(lstStr[i].Trim().TrimEnd().TrimStart().ToUpper());
                if (kStr == "SLAB DESIGN")
                {
                    IsSlabFind = true;
                    continue;
                }
                else if (kStr == "END")
                {
                    IsSlabFind = false;
                }

                if (IsSlabFind)
                {
                    mList = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');
                    for (int j = 0; j < mList.Count; j++)
                    {
                        switch (mList.StringList[j].Trim())
                        {
                        case "L":
                            totalLength = mList.GetDouble(j + 2);
                            break;

                        case "B":
                            d_B = mList.GetDouble(j + 2);
                            break;

                        case "D":
                            D = mList.GetDouble(j + 2);
                            break;

                        case "H1":
                            h1 = mList.GetDouble(j + 2);
                            break;

                        case "H2":
                            h2 = mList.GetDouble(j + 2);
                            break;

                        case "B1":
                            B1 = mList.GetDouble(j + 2);
                            break;

                        case "MAIN SPACING":
                            s1 = mList.GetDouble(j + 1);
                            break;

                        case "DIST SPACING":
                            s2 = mList.GetDouble(j + 1);
                            break;
                        }
                    }
                }
            }
        }