Esempio n. 1
0
        public void AddTXT(string data)
        {
            //1 2 4 5 104 TO 108 161 TO 165 538 TO 544 FIXED

            string orgStr = data.Trim().TrimEnd().TrimStart();


            string[]      values = orgStr.Split(new char[] { ';' });
            List <string> lstStr;

            Support spt;

            foreach (string st in values)
            {
                //1 2 4 5 104 TO 108 161 TO 165 538 TO 544 FIXED
                int indx = -1;
                try
                {
                    List <int> jnts  = MyStrings.Get_Array_Intiger(st);
                    MyStrings  mLIst = new MyStrings(st, ' ');

                    for (int i = 0; i < jnts.Count; i++)
                    {
                        spt             = new Support();
                        spt.Node.NodeNo = jnts[i];
                        spt.Option      = st.Contains("FIXED") ? Support.SupportOption.FIXED : Support.SupportOption.PINNED;
                        Add(spt);
                    }
                }
                catch (Exception exx)
                {
                }
            }
        }
Esempio n. 2
0
            public void SetMemNos()
            {
                string memText = MemberNosText;
                if (memText == "") return;
                MemberNos = MyStrings.Get_Array_Intiger(MemberNosText);

               

               
            }
Esempio n. 3
0
        public void AddMemberTruss(string trussData)
        {
            //EX:2 MEMB TRUSS
            //14 TO 23 ;

            //EX:3 MEMBER TRUSS
            //1 TO 47
            List<int> mems = new List<int>();

            if (Groups.Table.Count > 0)
            {
                _MemberGroup mg = (_MemberGroup)Groups.Table[trussData];
                if (mg != null)
                {
                    mems = mg.MemberNos;

                    for (int i = 0; i < list.Count; i++)
                    {
                        if (mems.Contains(list[i].MemberNo))
                            list[i].MemberType = MembType.TRUSS;

                    }
                    return;
                }
            }




            mems = MyStrings.Get_Array_Intiger(trussData);

            for (int i = 0; i < list.Count; i++)
            {
                if (mems.Contains(list[i].MemberNo))
                    list[i].MemberType = MembType.TRUSS;

            }

        }
Esempio n. 4
0
        public void AddTxt_2014_04_07(string s)
        {
            //1 2 PRISMATIC YD 12 ZD 12 IZ 509 IY 509 IX 1018
            //3 TO 10 PR YD 12 ZD 12 IZ 864 IY 864 IX 1279
            //11 TO 21 PR YD 21 ZD 16 IZ 5788 IY 2953 IX 6497


            //1 TO 993 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480

            //1 3 4 A 28.11 IX 1509.4 IY 188.6 ; 2 A 21.67 IX 839.1 IY 94.8
            //5 6 7 A 43.24 IX 3920.5 IY 448.6 ; 8 TO 13 A 36.71 IX 2624.5 IY 328.8
            //14 TO 23 A 3.07 IX 4.5

            //1 2 3 13 14 15 16 18 94 95 100 TO 105 116 TO 129 165 167 172 173 174 184 TO 186 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480



            string temp = s.ToUpper().Trim().TrimEnd().TrimStart().Replace("PRISMATIC", "PR");

            List <string> lstStr = new List <string>(temp.Split(new char[] { ' ' }));
            MyStrings     mList  = new MyStrings(lstStr);

            double area, yd, zd, ix, iy, iz;
            int    indx = -1;

            List <int> mems = MyStrings.Get_Array_Intiger(temp);

            area = yd = zd = ix = iy = iz = 0.0d;
            int toIndex = lstStr.IndexOf("TO");

            if (lstStr.Contains("YD"))
            {
                indx = lstStr.IndexOf("YD");
                yd   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("ZD"))
            {
                indx = lstStr.IndexOf("ZD");
                zd   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("IX"))
            {
                indx = lstStr.IndexOf("IX");
                ix   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("IY"))
            {
                indx = lstStr.IndexOf("IY");
                iy   = mList.GetDouble(indx + 1);
            }

            if (lstStr.Contains("IZ"))
            {
                indx = lstStr.IndexOf("IZ");
                iz   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("AX"))
            {
                indx = lstStr.IndexOf("AX");
                area = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("A"))
            {
                indx = lstStr.IndexOf("A");
                area = mList.GetDouble(indx + 1);
            }

            try
            {
                //1 2 3 13 14 15 16 18 94 95 100 TO 105 116 TO 129 165 167 172 173 174 184 TO 186 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480
                if (lstStr.Contains("TO"))
                {
                    MyStrings tempLst = new MyStrings(temp, ' ');
                    toIndex = tempLst.StringList.IndexOf("TO", 0);
                    while (tempLst.StringList.Contains("TO"))
                    {
                        toIndex = tempLst.StringList.IndexOf("TO", 0);
                        if (toIndex > 1)
                        {
                            for (int i = 0; i < (toIndex - 1); i++)
                            {
                                MemberProperty mp = new MemberProperty();
                                mp.Member.MemberNo = tempLst.GetInt(i);
                                mp.YD   = yd;
                                mp.ZD   = zd;
                                mp.IX   = ix;
                                mp.IY   = iy;
                                mp.IZ   = iz;
                                mp.Area = area;
                                Add(mp);
                            }
                            tempLst.StringList.RemoveRange(0, toIndex - 1);
                        }
                        toIndex = tempLst.StringList.IndexOf("TO", 0);
                        for (int i = tempLst.GetInt(toIndex - 1); i <= tempLst.GetInt(toIndex + 1); i++)
                        {
                            MemberProperty mp = new MemberProperty();
                            mp.Member.MemberNo = i;
                            mp.YD   = yd;
                            mp.ZD   = zd;
                            mp.IX   = ix;
                            mp.IY   = iy;
                            mp.IZ   = iz;
                            mp.Area = area;
                            Add(mp);
                        }
                        tempLst.StringList.RemoveRange(0, toIndex + 2);
                    }
                    return;
                }
            }
            catch (Exception exx)
            {
            }



            //if (lstStr.Contains("TO"))
            //{
            //    toIndex = lstStr.IndexOf("TO");
            //    for (int i = mList.GetInt(toIndex - 1); i <= mList.GetInt(toIndex + 1); i++)
            //    {
            //        MemberProperty mp = new MemberProperty();
            //        mp.Member.MemberNo = i;
            //        mp.YD = yd;
            //        mp.ZD = zd;
            //        mp.IX = ix;
            //        mp.IY = iy;
            //        mp.IZ = iz;
            //        mp.Area = area;
            //        Add(mp);
            //    }
            //}
            //else
            //{
            //indx = lstStr.IndexOf("PR");
            if (indx == -1)
            {
                indx = lstStr.IndexOf("A");
                if (indx == -1)
                {
                    indx = lstStr.IndexOf("AX");
                }
            }
            for (int i = 0; i < indx; i++)
            {
                MemberProperty mp = new MemberProperty();
                mp.Member.MemberNo = mList.GetInt(i);
                mp.YD   = yd;
                mp.ZD   = zd;
                mp.IX   = ix;
                mp.IY   = iy;
                mp.IZ   = iz;
                mp.Area = area;
                Add(mp);
            }
            //}
        }
Esempio n. 5
0
        public void AddTxt(string s)
        {
            //1 2 PRISMATIC YD 12 ZD 12 IZ 509 IY 509 IX 1018
            //3 TO 10 PR YD 12 ZD 12 IZ 864 IY 864 IX 1279
            //11 TO 21 PR YD 21 ZD 16 IZ 5788 IY 2953 IX 6497


            //1 TO 993 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480

            //1 3 4 A 28.11 IX 1509.4 IY 188.6 ; 2 A 21.67 IX 839.1 IY 94.8
            //5 6 7 A 43.24 IX 3920.5 IY 448.6 ; 8 TO 13 A 36.71 IX 2624.5 IY 328.8
            //14 TO 23 A 3.07 IX 4.5

            //1 2 3 13 14 15 16 18 94 95 100 TO 105 116 TO 129 165 167 172 173 174 184 TO 186 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480



            string temp = s.ToUpper().Trim().TrimEnd().TrimStart().Replace("PRISMATIC", "PR");

            List <string> lstStr = new List <string>(temp.Split(new char[] { ' ' }));
            MyStrings     mList  = new MyStrings(lstStr);

            double area, yd, zd, ix, iy, iz;
            int    indx = -1;

            List <int> mems = MyStrings.Get_Array_Intiger(temp);

            if (AnalysisData != null)
            {
                if (mems.Count == 0)
                {
                    foreach (var item in AnalysisData.MemberGroups.GroupCollection)
                    {
                        if (item.GroupName == mList.StringList[0])
                        {
                            mems = MyStrings.Get_Array_Intiger(item.MemberNosText); break;
                        }
                    }
                }
            }


            area = yd = zd = ix = iy = iz = 0.0d;
            int toIndex = lstStr.IndexOf("TO");

            if (lstStr.Contains("YD"))
            {
                indx = lstStr.IndexOf("YD");
                yd   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("ZD"))
            {
                indx = lstStr.IndexOf("ZD");
                zd   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("IX"))
            {
                indx = lstStr.IndexOf("IX");
                ix   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("IY"))
            {
                indx = lstStr.IndexOf("IY");
                iy   = mList.GetDouble(indx + 1);
            }

            if (lstStr.Contains("IZ"))
            {
                indx = lstStr.IndexOf("IZ");
                iz   = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("AX"))
            {
                indx = lstStr.IndexOf("AX");
                area = mList.GetDouble(indx + 1);
            }
            if (lstStr.Contains("A"))
            {
                indx = lstStr.IndexOf("A");
                area = mList.GetDouble(indx + 1);
            }

            try
            {
                //1 2 3 13 14 15 16 18 94 95 100 TO 105 116 TO 129 165 167 172 173 174 184 TO 186 AX 0.54 IX 0.07390   IY 0.00911   IZ 0.06480

                MemberProperty mp = null;
                for (int i = 0; i < mems.Count; i++)
                {
                    mp = new MemberProperty();
                    mp.Member.MemberNo = mems[i];
                    mp.YD   = yd;
                    mp.ZD   = zd;
                    mp.IX   = ix;
                    mp.IY   = iy;
                    mp.IZ   = iz;
                    mp.Area = area;
                    Add(mp);
                }
            }
            catch (Exception exww) { }
        }