コード例 #1
0
        public void Add_Group(string text)
        {
            _MemberGroup mg = new _MemberGroup();

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

            mg.Name = mlist.StringList[0];
            mg.MemberNosText = mlist.GetString(1);
            mg.SetMemNos();

            Groups.Add(mg);
            Groups.Table.Add(mg.Name, mg);
        }
コード例 #2
0
        public static List <int> Get_Array_Intiger(string list_text)
        {
            //11 12 15 TO 21 43 89 98, 45 43

            List <int> list = new List <int>();
            string     kStr = RemoveAllSpaces(list_text.ToUpper().Trim());


            try
            {
                kStr = kStr.Replace("T0", "TO");
                kStr = kStr.Replace("-", "TO");
                kStr = kStr.Replace(",", " ");
                kStr = RemoveAllSpaces(kStr.ToUpper().Trim());

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


                int start = 0;
                int end   = 0;


                for (int i = 0; i < mlist.Count; i++)
                {
                    try
                    {
                        if (mlist.StringList[i] != "TO")
                        {
                            start = mlist.GetInt(i);
                        }
                    }
                    catch (Exception exx)
                    {
                        kStr = mlist.GetString(0, i - 1);
                        break;
                    }
                }
                mlist = new MyStrings(MyStrings.RemoveAllSpaces(kStr), ' ');


                for (int i = 0; i < mlist.Count; i++)
                {
                    try
                    {
                        start = mlist.GetInt(i);
                        if (i < mlist.Count - 1)
                        {
                            if (mlist.StringList[i + 1] == "TO")
                            {
                                //start = mlist.GetInt(i);
                                end = mlist.GetInt(i + 2);
                                for (int j = start; j <= end; j++)
                                {
                                    list.Add(j);
                                }
                                i += 2;
                            }
                            else
                            {
                                list.Add(start);
                            }
                        }
                        else
                        {
                            list.Add(start);
                        }
                    }
                    catch (Exception ex) { }
                }
                mlist = null;
            }
            catch (Exception ex) { }
            list.Sort();
            return(list);
        }
コード例 #3
0
            public void Read_File_File(string file_name)
            {
                if (!File.Exists(file_name)) return;

                Table = new Hashtable();
                #region SAMPLE
                //START GROUP DEFINITION
                //_L0L1         1          6          7         12
                //_L1L2         2          5          8         11
                //_L2L3         3          4          9         10
                //_U1U2        35         38         39         42
                //_U2U3        36         37         40         41
                //_L1U1        13         17         18         22
                //_L2U2        14         16         19         21
                //_L3U3        15         20
                //_ER         23         28         29         34
                //_L2U1        24         27         30         33
                //_L3U2        25         26         31         32
                //_TCS_ST            102         TO        106 
                //_TCS_DIA           107         TO        114 
                //_BCB               115         TO        126 
                //_STRINGER           43         TO         66 
                //_XGIRDER            67         TO        101 
                //END
                //MEMBER PROPERTY
                //_L0L1      	PRI	AX	0.024	IX	0.00001	IY	0.000741	IZ	0.001
                //_L1L2      	PRI	AX	0.024	IX	0.00001	IY	0.000741	IZ	0.001
                //_L2L3      	PRI	AX	0.030	IX	0.00001	IY	0.000946	IZ	0.001
                //_U1U2      	PRI	AX	0.027	IX	0.00001	IY	0.000807	IZ	0.000693
                //_U2U3      	PRI	AX	0.033	IX	0.00001	IY	0.000864	IZ	0.000922
                //_L1U1      	PRI	AX	0.006	IX	0.00001	IY	0.000182	IZ	0.000036
                //_L2U2      	PRI	AX	0.013	IX	0.00001	IY	0.000399	IZ	0.000302
                //_L3U3      	PRI	AX	0.009	IX	0.00001	IY	0.000290	IZ	0.000127
                //_ER           	PRI	AX	0.022	IX	0.00001	IY	0.000666	IZ	0.000579
                //_L2U1      	PRI	AX	0.019	IX	0.00001	IY	0.000621	IZ	0.000356
                //_L3U2      	PRI	AX	0.014	IX	0.00001	IY	0.000474	IZ	0.000149
                //_TCS_ST	        PRI	AX	0.006	IX	0.00001	IY	0.000027	IZ	0.000225
                //_TCS_DIA	PRI	AX	0.006	IX	0.00001	IY	0.000027	IZ	0.000225
                //_BCB	        PRI	AX	0.002	IX	0.00001	IY	0.000001	IZ	0.000001
                //_STRINGER	PRI	AX	0.048	IX	0.00001	IY	0.008	        IZ	0.002
                //_XGIRDER	PRI	AX	0.059	IX	0.00001	IY	0.009	        IZ	0.005
                //MEMBER TRUSS
                //_L0L1
                //MEMBER TRUSS
                //_L1L2
                //MEMBER TRUSS
                //_L2L3
                //MEMBER TRUSS
                //_U1U2
                //MEMBER TRUSS
                //_U2U3
                //MEMBER TRUSS
                //_L1U1
                //MEMBER TRUSS
                //_L2U2
                //MEMBER TRUSS
                //_L3U3
                //MEMBER TRUSS
                //_ER
                //MEMBER TRUSS
                //_L2U1
                //MEMBER TRUSS
                //_L3U2
                //MEMBER TRUSS
                //_TCS_ST
                //MEMBER TRUSS
                //_TCS_DIA
                //MEMBER TRUSS
                //_BCB
                #endregion
                List<string> list = new List<string>(File.ReadAllLines(file_name));

                bool flag1 = false;
                bool flag2 = false;
                MyStrings mlist = null;
                string kStr = "";
                _MemberGroup mgr = new _MemberGroup();
                for (int i = 0; i < list.Count; i++)
                {
                    kStr = list[i].Trim().TrimEnd().TrimStart().ToUpper();
                    kStr = MyStrings.RemoveAllSpaces(kStr);

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

                    if (kStr.StartsWith("START GROUP"))
                    {
                        flag1 = true;
                        continue;
                    }
                    if (kStr.StartsWith("MEMBER PROPERTY"))
                    {
                        flag2 = true;
                        flag1 = false;
                        continue;
                    }
                    if (kStr.StartsWith("END") && !kStr.StartsWith("END_RA"))
                    {
                        flag1 = false;
                        continue;
                    }
                    else if (kStr.StartsWith("FINISH"))
                    {
                        break;
                    }

                    if (flag1)
                    {
                        try
                        {
                            mgr = Table[mlist.StringList[0]] as _MemberGroup;
                            if (mgr == null)
                            {
                                mgr = new _MemberGroup();
                                mgr.Name = mlist.StringList[0];
                                mgr.MemberNosText = mlist.GetString(1);
                                mgr.SetMemNos();
                                Table.Add(mgr.Name, mgr);
                                Add(mgr);
                            }
                        }
                        catch (Exception ex)
                        {
                        }
                    }

                    if (flag2)
                    {

                        try
                        {

                            mgr = Table[mlist.StringList[0]] as _MemberGroup;

                            if (mgr != null)
                            {
                                if (mlist.Count == 1)
                                {
                                    kStr = list[i - 1];
                                    kStr = MyStrings.RemoveAllSpaces(kStr);
                                    mlist = new MyStrings(kStr, ' ');

                                    if (mlist.Count > 1)
                                    {
                                        if (mlist.StringList[1].StartsWith("TRUSS"))
                                        {
                                            mgr.GroupType = MembType.TRUSS;
                                        }
                                        else if (mlist.StringList[1].StartsWith("BEAM"))
                                        {
                                            mgr.GroupType = MembType.BEAM;
                                        }
                                        else if (mlist.StringList[1].StartsWith("CABLE"))
                                        {
                                            mgr.GroupType = MembType.CABLE;
                                        }
                                    }
                                    continue;
                                }
                                else
                                {
                                    for (int j = 1; j < mlist.Count; j++)
                                    {
                                        if (mlist.StringList[j].StartsWith("PR"))
                                            mgr.Properties.PR = mlist.StringList[j];
                                        else if (mlist.StringList[j].StartsWith("IX"))
                                            mgr.Properties.IX = mlist.GetDouble(j + 1);
                                        else if (mlist.StringList[j].StartsWith("IY"))
                                            mgr.Properties.IY = mlist.GetDouble(j + 1);
                                        else if (mlist.StringList[j].StartsWith("IZ"))
                                            mgr.Properties.IZ = mlist.GetDouble(j + 1);
                                        else if (mlist.StringList[j].StartsWith("AX"))
                                            mgr.Properties.Area = mlist.GetDouble(j + 1);

                                    }
                                }
                            }
                        }
                        catch (Exception ex) { }
                    }

                }
                //this
            }