コード例 #1
0
ファイル: ShowPathForm.cs プロジェクト: lexzh/Myproject
        private void backRunWork(object sender, DoWorkEventArgs e)
        {
            MethodInvoker method = null;
            MethodInvoker invoker3 = null;
            try
            {
                if (this.pathType == 1)
                {
                    if (method == null)
                    {
                        method = new MethodInvoker(this.execClearAllPath);
                    }
                    base.Invoke(method);
                }
                else if (this.pathType == 2)
                {
                    if (invoker3 == null)
                    {
                        invoker3 = new MethodInvoker(this.execClearAllPolygon);
                    }
                    base.Invoke(invoker3);
                }
                int count = this.dict.Count;
                int num2 = 0;
                if (count > 0)
                {
                    if (this.pathType == 1)
                    {
                        using (Dictionary<string, string>.KeyCollection.Enumerator enumerator = this.dict.Keys.GetEnumerator())
                        {
                            PathInfo pathInfo = new PathInfo();
                            while (enumerator.MoveNext())
                            {
                                pathInfo.PathName = enumerator.Current;
                                PathEntity pathEntity = new PathEntity
                                {
                                    locals8 = pathInfo,
                                    this_4 = this,
                                    Lons = "",
                                    Lats = ""
                                };

                                string[] strArray = this.dict[pathInfo.PathName].Split(new char[] { '/' });
                                for (int i = 0; i < strArray.Length; i++)
                                {
                                    string[] strArray2 = strArray[i].Split(new char[] { '*' });
                                    if (strArray2.Length == 2)
                                    {
                                        pathEntity.Lons = pathEntity.Lons + strArray2[0] + ",";
                                        pathEntity.Lats = pathEntity.Lats + strArray2[1] + ",";
                                    }
                                }
                                pathEntity.Lons.Trim(new char[] { ',' });
                                pathEntity.Lats.Trim(new char[] { ',' });
                                base.Invoke(new MethodInvoker(pathEntity.worker_DoWork__2));
                                num2++;
                                this.backgroundWorker.ReportProgress((int)((((double)num2) / ((double)count)) * 100.0));
                            }
                            return;
                        }
                    }
                    using (Dictionary<string, string>.KeyCollection.Enumerator enumerator2 = this.dict.Keys.GetEnumerator())
                    {
                        OOll00ll0l0O11101l olllllol = new OOll00ll0l0O11101l();

                        while (enumerator2.MoveNext())
                        {
                            olllllol.PathName = enumerator2.Current;
                            MethodInvoker invoker = null;
                            O01l0ll1O0OOl1OO1O olooo = new O01l0ll1O0OOl1OO1O
                            {
                                localsc = olllllol,
                                this_4 = this,
                                Lons = "",
                                Lats = ""
                            };
                            string str2 = this.dict[olllllol.PathName];
                            if (Check.isRoundness(str2))
                            {
                                OO1l0001O1OO1O1Ol01 ol2 = new OO1l0001O1OO1O1Ol01
                                {
                                    localsf = olooo,
                                    localsc = olllllol
                                };
                                string[] strArray4 = str2.Trim(new char[] { '*' }).Split(new char[] { '*' })[0].Split(new char[] { '\\' });
                                ol2.sCenterPointX = double.Parse(strArray4[0]);
                                ol2.sCenterPointY = double.Parse(strArray4[1]);
                                ol2.sRadius = int.Parse(strArray4[2]);
                                base.Invoke(new MethodInvoker(ol2.worker_DoWork__3));
                            }
                            else
                            {
                                string[] strArray5 = str2.Split(new char[] { '*' });
                                for (int j = 0; j < strArray5.Length; j++)
                                {
                                    string[] strArray6 = strArray5[j].Split(new char[] { '\\' });
                                    if (strArray6.Length == 2)
                                    {
                                        olooo.Lons = olooo.Lons + strArray6[0] + ",";
                                        olooo.Lats = olooo.Lats + strArray6[1] + ",";
                                    }
                                }
                                olooo.Lons.Trim(new char[] { ',' });
                                olooo.Lats.Trim(new char[] { ',' });
                                if (invoker == null)
                                {
                                    invoker = new MethodInvoker(olooo.worker_DoWork__4);
                                }
                                base.Invoke(invoker);
                            }
                            num2++;
                            this.backgroundWorker.ReportProgress((int)((((double)num2) / ((double)count)) * 100.0));
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Record.execFileRecord("Type:" + this.pathType + ",设置偏移路线区域显示控制-->", exception.Message);
            }
        }
コード例 #2
0
ファイル: ShowPathForm.cs プロジェクト: lexzh/Myproject
        private void backRunWork(object sender, DoWorkEventArgs e)
        {
            MethodInvoker method   = null;
            MethodInvoker invoker3 = null;

            try
            {
                if (this.pathType == 1)
                {
                    if (method == null)
                    {
                        method = new MethodInvoker(this.execClearAllPath);
                    }
                    base.Invoke(method);
                }
                else if (this.pathType == 2)
                {
                    if (invoker3 == null)
                    {
                        invoker3 = new MethodInvoker(this.execClearAllPolygon);
                    }
                    base.Invoke(invoker3);
                }
                int count = this.dict.Count;
                int num2  = 0;
                if (count > 0)
                {
                    if (this.pathType == 1)
                    {
                        using (Dictionary <string, string> .KeyCollection.Enumerator enumerator = this.dict.Keys.GetEnumerator())
                        {
                            PathInfo pathInfo = new PathInfo();
                            while (enumerator.MoveNext())
                            {
                                pathInfo.PathName = enumerator.Current;
                                PathEntity pathEntity = new PathEntity
                                {
                                    locals8 = pathInfo,
                                    this_4  = this,
                                    Lons    = "",
                                    Lats    = ""
                                };

                                string[] strArray = this.dict[pathInfo.PathName].Split(new char[] { '/' });
                                for (int i = 0; i < strArray.Length; i++)
                                {
                                    string[] strArray2 = strArray[i].Split(new char[] { '*' });
                                    if (strArray2.Length == 2)
                                    {
                                        pathEntity.Lons = pathEntity.Lons + strArray2[0] + ",";
                                        pathEntity.Lats = pathEntity.Lats + strArray2[1] + ",";
                                    }
                                }
                                pathEntity.Lons.Trim(new char[] { ',' });
                                pathEntity.Lats.Trim(new char[] { ',' });
                                base.Invoke(new MethodInvoker(pathEntity.worker_DoWork__2));
                                num2++;
                                this.backgroundWorker.ReportProgress((int)((((double)num2) / ((double)count)) * 100.0));
                            }
                            return;
                        }
                    }
                    using (Dictionary <string, string> .KeyCollection.Enumerator enumerator2 = this.dict.Keys.GetEnumerator())
                    {
                        OOll00ll0l0O11101l olllllol = new OOll00ll0l0O11101l();

                        while (enumerator2.MoveNext())
                        {
                            olllllol.PathName = enumerator2.Current;
                            MethodInvoker      invoker = null;
                            O01l0ll1O0OOl1OO1O olooo   = new O01l0ll1O0OOl1OO1O
                            {
                                localsc = olllllol,
                                this_4  = this,
                                Lons    = "",
                                Lats    = ""
                            };
                            string str2 = this.dict[olllllol.PathName];
                            if (Check.isRoundness(str2))
                            {
                                OO1l0001O1OO1O1Ol01 ol2 = new OO1l0001O1OO1O1Ol01
                                {
                                    localsf = olooo,
                                    localsc = olllllol
                                };
                                string[] strArray4 = str2.Trim(new char[] { '*' }).Split(new char[] { '*' })[0].Split(new char[] { '\\' });
                                ol2.sCenterPointX = double.Parse(strArray4[0]);
                                ol2.sCenterPointY = double.Parse(strArray4[1]);
                                ol2.sRadius       = int.Parse(strArray4[2]);
                                base.Invoke(new MethodInvoker(ol2.worker_DoWork__3));
                            }
                            else
                            {
                                string[] strArray5 = str2.Split(new char[] { '*' });
                                for (int j = 0; j < strArray5.Length; j++)
                                {
                                    string[] strArray6 = strArray5[j].Split(new char[] { '\\' });
                                    if (strArray6.Length == 2)
                                    {
                                        olooo.Lons = olooo.Lons + strArray6[0] + ",";
                                        olooo.Lats = olooo.Lats + strArray6[1] + ",";
                                    }
                                }
                                olooo.Lons.Trim(new char[] { ',' });
                                olooo.Lats.Trim(new char[] { ',' });
                                if (invoker == null)
                                {
                                    invoker = new MethodInvoker(olooo.worker_DoWork__4);
                                }
                                base.Invoke(invoker);
                            }
                            num2++;
                            this.backgroundWorker.ReportProgress((int)((((double)num2) / ((double)count)) * 100.0));
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Record.execFileRecord("Type:" + this.pathType + ",设置偏移路线区域显示控制-->", exception.Message);
            }
        }