예제 #1
0
        public void TcQuTongShanChu()
        {
            int    num;
            int    num6;
            object obj2;

            try
            {
IL_01:
                ProjectData.ClearProjectError();
                num = -2;
IL_09:
                int num2 = 2;
                long num3 = Conversions.ToLong(Interaction.InputBox("输入通筋面积", "田草CAD工具箱-板筋去通删除", "", -1, -1));
IL_27:
                num2 = 3;
                if (num3 != 0L)
                {
                    goto IL_3C;
                }
IL_37:
                goto IL_1EA;
IL_3C:
                num2 = 6;
IL_3E:
                num2 = 7;
                Document mdiActiveDocument = Application.DocumentManager.MdiActiveDocument;
IL_4B:
                num2 = 8;
                Database database = mdiActiveDocument.Database;
IL_55:
                num2 = 9;
                using (Transaction transaction = database.TransactionManager.StartTransaction())
                {
                    TypedValue[] array  = new TypedValue[1];
                    Array        array2 = array;
                    TypedValue   typedValue;
                    typedValue..ctor(0, "TEXT");
                    array2.SetValue(typedValue, 0);
                    SelectionFilter       selectionFilter = new SelectionFilter(array);
                    PromptSelectionResult selection       = mdiActiveDocument.Editor.GetSelection(selectionFilter);
                    if (selection.Status == 5100)
                    {
                        SelectionSet value      = selection.Value;
                        IEnumerator  enumerator = value.GetEnumerator();
                        while (enumerator.MoveNext())
                        {
                            object         obj            = enumerator.Current;
                            SelectedObject selectedObject = (SelectedObject)obj;
                            DBText         dbtext         = (DBText)transaction.GetObject(selectedObject.ObjectId, 1);
                            double         num4           = NF.CVal(dbtext.TextString);
                            if (num4 <= (double)num3)
                            {
                                dbtext.Erase();
                            }
                            else
                            {
                                dbtext.TextString = Conversions.ToString(num4 - (double)num3);
                            }
                        }
                        if (enumerator is IDisposable)
                        {
                            (enumerator as IDisposable).Dispose();
                        }
                    }
                    transaction.Commit();
                }
IL_15F:
                goto IL_1EA;
IL_164:
                int num5 = num6 + 1;
                num6     = 0;
                @switch(ICSharpCode.Decompiler.ILAst.ILLabel[], num5);
IL_1A4:
                goto IL_1DF;
IL_1A6:
                num6 = num2;
                if (num <= -2)
                {
                    goto IL_164;
                }
                @switch(ICSharpCode.Decompiler.ILAst.ILLabel[], num);
                IL_1BC :;
            }
            catch when(endfilter(obj2 is Exception & num != 0 & num6 == 0))
            {
                Exception ex = (Exception)obj3;

                goto IL_1A6;
            }
IL_1DF:
            throw ProjectData.CreateProjectError(-2146828237);
IL_1EA:
            if (num6 != 0)
            {
                ProjectData.ClearProjectError();
            }
        }
예제 #2
0
        public bool StrBiJiao(string S1, string S2)
        {
            short num = checked ((short)S1.Split(new char[]
            {
                '-'
            }).Length);
            bool result;

            if (S1.Split(new char[]
            {
                '-'
            }).Length != (int)num)
            {
                result = true;
            }
            else if (num == 1)
            {
                result = (NF.CVal(S1) <= NF.CVal(S2));
            }
            else if (num == 2)
            {
                double num2 = 0.0;
                if (NF.CVal(S1.Split(new char[]
                {
                    '-'
                })[0]) < NF.CVal(S2.Split(new char[]
                {
                    '-'
                })[0]))
                {
                    num2 += 1.0;
                }
                if (NF.CVal(S1.Split(new char[]
                {
                    '-'
                })[1]) < NF.CVal(S2.Split(new char[]
                {
                    '-'
                })[1]))
                {
                    num2 += 1.0;
                }
                result = (num2 >= 1.0);
            }
            else if (num == 3)
            {
                double num3 = 0.0;
                if (NF.CVal(S1.Split(new char[]
                {
                    '-'
                })[0]) < NF.CVal(S2.Split(new char[]
                {
                    '-'
                })[0]))
                {
                    num3 += 1.0;
                }
                if (NF.CVal(S1.Split(new char[]
                {
                    '-'
                })[1]) < NF.CVal(S2.Split(new char[]
                {
                    '-'
                })[1]))
                {
                    num3 += 1.0;
                }
                if (NF.CVal(S1.Split(new char[]
                {
                    '-'
                })[2]) < NF.CVal(S2.Split(new char[]
                {
                    '-'
                })[2]))
                {
                    num3 += 1.0;
                }
                result = (num3 >= 1.0);
            }
            return(result);
        }
예제 #3
0
        public void TcQuJianShanChu()
        {
            int    num;
            int    num4;
            object obj2;

            try
            {
IL_01:
                ProjectData.ClearProjectError();
                num = -2;
IL_09:
                int num2 = 2;
                string text = Interaction.InputBox("输入数值区间:\r\nA,B  删除A~B之间的数值\r\nA,   删除小于等于A的数值\r\n,B   删除大于等于B的数值", "田草CAD工具箱-数值区间删除", "", -1, -1);
IL_22:
                num2 = 3;
                if (Operators.CompareString(text, "", false) != 0)
                {
                    goto IL_3A;
                }
IL_35:
                goto IL_341;
IL_3A:
                num2 = 6;
IL_3C:
                num2 = 7;
                string[] array = text.Split(new char[]
                {
                    ','
                });
IL_53:
                num2 = 8;
                Document mdiActiveDocument = Application.DocumentManager.MdiActiveDocument;
IL_61:
                num2 = 9;
                Database database = mdiActiveDocument.Database;
IL_6D:
                num2 = 10;
                using (Transaction transaction = database.TransactionManager.StartTransaction())
                {
                    TypedValue[] array2 = new TypedValue[1];
                    Array        array3 = array2;
                    TypedValue   typedValue;
                    typedValue..ctor(0, "TEXT");
                    array3.SetValue(typedValue, 0);
                    SelectionFilter       selectionFilter = new SelectionFilter(array2);
                    PromptSelectionResult selection       = mdiActiveDocument.Editor.GetSelection(selectionFilter);
                    if (selection.Status == 5100)
                    {
                        SelectionSet value      = selection.Value;
                        IEnumerator  enumerator = value.GetEnumerator();
                        while (enumerator.MoveNext())
                        {
                            object         obj            = enumerator.Current;
                            SelectedObject selectedObject = (SelectedObject)obj;
                            DBText         dbtext         = (DBText)transaction.GetObject(selectedObject.ObjectId, 1);
                            NF.CVal(dbtext.TextString);
                            if (array.Length >= 2)
                            {
                                if ((Operators.CompareString(array[0], "", false) != 0 & Operators.CompareString(array[1], "", false) != 0) && (NF.CVal(dbtext.TextString) >= Conversion.Val(array[0]) & NF.CVal(dbtext.TextString) <= Conversion.Val(array[1])))
                                {
                                    Class36.smethod_64(dbtext.ObjectId);
                                }
                                if ((Operators.CompareString(array[0], "", false) != 0 & Operators.CompareString(array[1], "", false) == 0) && NF.CVal(dbtext.TextString) <= Conversion.Val(array[0]))
                                {
                                    Class36.smethod_64(dbtext.ObjectId);
                                }
                                if ((Operators.CompareString(array[0], "", false) == 0 & Operators.CompareString(array[1], "", false) != 0) && NF.CVal(dbtext.TextString) >= Conversion.Val(array[1]))
                                {
                                    Class36.smethod_64(dbtext.ObjectId);
                                }
                            }
                            else if (array.Length == 1 && NF.CVal(dbtext.TextString) <= Conversion.Val(array[0]))
                            {
                                Class36.smethod_64(dbtext.ObjectId);
                            }
                        }
                        if (enumerator is IDisposable)
                        {
                            (enumerator as IDisposable).Dispose();
                        }
                    }
                    transaction.Commit();
                }
IL_2B2:
                goto IL_341;
IL_2B7:
                int num3 = num4 + 1;
                num4     = 0;
                @switch(ICSharpCode.Decompiler.ILAst.ILLabel[], num3);
IL_2FB:
                goto IL_336;
IL_2FD:
                num4 = num2;
                if (num <= -2)
                {
                    goto IL_2B7;
                }
                @switch(ICSharpCode.Decompiler.ILAst.ILLabel[], num);
                IL_313 :;
            }
            catch when(endfilter(obj2 is Exception & num != 0 & num4 == 0))
            {
                Exception ex = (Exception)obj3;

                goto IL_2FD;
            }
IL_336:
            throw ProjectData.CreateProjectError(-2146828237);
IL_341:
            if (num4 != 0)
            {
                ProjectData.ClearProjectError();
            }
        }
예제 #4
0
        public void LDel()
        {
            string text = Interaction.InputBox("输入编号调整的起始号(比如KL*或者LL*等):", "田草结构工具箱.Net版", "KL2", -1, -1);

            checked
            {
                short  num   = (short)Math.Round(NF.CVal(text));
                string text2 = this.LiangMing(text);
                short  num2;
                if (Strings.InStr(text, "/", CompareMethod.Binary) > 0)
                {
                    num2 = (short)Math.Round(NF.CVal(text.Substring(Strings.InStr(text, "/", CompareMethod.Binary))));
                }
                Document     mdiActiveDocument = Application.DocumentManager.MdiActiveDocument;
                Database     database          = mdiActiveDocument.Database;
                TypedValue[] array             = new TypedValue[1];
                Array        array2            = array;
                TypedValue   typedValue;
                typedValue..ctor(0, "TEXT");
                array2.SetValue(typedValue, 0);
                SelectionFilter       selectionFilter = new SelectionFilter(array);
                PromptSelectionResult selection       = mdiActiveDocument.Editor.GetSelection(selectionFilter);
                if (selection.Status == 5100)
                {
                    SelectionSet value = selection.Value;
                    short        num3  = (short)(value.Count - 1);
                    short        num4  = 0;
                    short        num5  = num3;
                    short        num6  = num4;
                    for (;;)
                    {
                        short num7 = num6;
                        short num8 = num5;
                        if (num7 > num8)
                        {
                            break;
                        }
                        using (Transaction transaction = database.TransactionManager.StartTransaction())
                        {
                            DBText dbtext = (DBText)transaction.GetObject(value[(int)num6].ObjectId, 1);
                            string text3  = dbtext.TextString;
                            if (Operators.CompareString(text3.Substring(0, text2.Length), text2, false) == 0)
                            {
                                short num9 = (short)Math.Round(NF.CVal(text3));
                                if (num2 == 0)
                                {
                                    if (num9 >= num)
                                    {
                                        text3             = text3.Replace(text2 + num9.ToString(), text2 + ((int)(num9 - 1)).ToString());
                                        dbtext.TextString = text3;
                                    }
                                }
                                else if (num9 >= num & num9 <= num2)
                                {
                                    text3             = text3.Replace(text2 + num9.ToString(), text2 + ((int)(num9 - 1)).ToString());
                                    dbtext.TextString = text3;
                                }
                            }
                            transaction.Commit();
                        }
                        unchecked
                        {
                            num6 += 1;
                        }
                    }
                }
                database.Regenmode = true;
            }
        }