Example #1
0
 private void method_0(Class145.Class146 scanBeam, Class145.Class147 edge)
 {
     if (edge.point2D_0.Y == edge.point2D_1.Y)
     {
         scanBeam.list_2.Add(edge);
         return;
     }
     edge.method_0();
     edge.double_1 = edge.point2D_0.X;
     scanBeam.method_4(edge);
 }
Example #2
0
        public static IList <Polygon2D> smethod_0(IList <Polygon2D> clip, IList <Polygon2D> subject, Class145.Enum7 fillMode)
        {
            List <Class145.Class148.Class149> class149s = new List <Class145.Class148.Class149>();

            foreach (Polygon2D polygon2D in clip)
            {
                Class145.smethod_1(polygon2D, 1, class149s);
            }
            foreach (Polygon2D polygon2D1 in subject)
            {
                Class145.smethod_1(polygon2D1, 2, class149s);
            }
            class149s.Sort(Class145.Class148.Class154.class154_0);
            Class145.Class148.Class149 class149 = null;
            if (class149s.Count > 1)
            {
                Class145.Class148.Class149 item = class149s[class149s.Count - 1];
                for (int i = class149s.Count - 2; i >= 0; i--)
                {
                    Class145.Class148.Class149 item1 = class149s[i];
                    item1.class149_0 = item;
                    item             = item1;
                }
                class149 = item;
            }
            Class145.Class146 class146 = new Class145.Class146();
            if (class149 != null)
            {
                class146.class33_0.Add(class149);
            }
            class146.method_0();
            if (class146.list_0.Count == 0)
            {
                return(Class145.polygon2D_0);
            }
            List <Polygon2D> polygon2Ds = new List <Polygon2D>(class146.list_0.Count);

            foreach (Class145.Class158 list0 in class146.list_0)
            {
                if (list0.Count <= 2)
                {
                    continue;
                }
                polygon2Ds.Add(list0.method_0());
            }
            if (polygon2Ds.Count == 0)
            {
                return(Class145.polygon2D_0);
            }
            return(polygon2Ds);
        }
Example #3
0
 public override void vmethod_0(Class145.Class146 scanBeam)
 {
     this.class148_0 = scanBeam.method_3();
     if (this.class148_0 != null && this.class148_0.point2D_0.Y == scanBeam.double_1)
     {
         this.double_0 = this.class148_0.point2D_0.X;
         Class145.Class146 class146 = scanBeam;
         int int0 = class146.int_0;
         int num  = int0;
         class146.int_0 = int0 + 1;
         this.int_0     = num;
         scanBeam.class34_0.Add(this);
     }
 }
Example #4
0
 public override void vmethod_0(Class145.Class146 scanBeam)
 {
     this.int_1++;
     while (this.int_1 < scanBeam.list_1.Count)
     {
         this.class147_0 = scanBeam.list_1[this.int_1];
         if (this.class147_0.point2D_1.Y > scanBeam.double_1)
         {
             this.double_0 = this.class147_0.double_1;
             Class145.Class146 class146 = scanBeam;
             int int0 = class146.int_0;
             int num  = int0;
             class146.int_0 = int0 + 1;
             this.int_0     = num;
             scanBeam.class34_0.Add(this);
             return;
         }
         this.int_1++;
     }
 }
Example #5
0
 public override void vmethod_1(Class145.Class146 scanBeam)
 {
     this.class147_0.method_1(scanBeam.double_1);
     scanBeam.method_4(this.class147_0);
 }
Example #6
0
 public override void vmethod_1(Class145.Class146 scanBeam)
 {
     this.class148_0.vmethod_2(scanBeam);
 }
Example #7
0
 public abstract void vmethod_1(Class145.Class146 scanBeam);
Example #8
0
 public override void vmethod_2(Class145.Class146 scanBeam)
 {
 }
Example #9
0
 public override void vmethod_2(Class145.Class146 scanBeam)
 {
     base.method_0(scanBeam, new Class145.Class147(this.point2D_0, this.class148_0.point2D_0));
 }
Example #10
0
 public virtual void vmethod_2(Class145.Class146 scanBeam)
 {
 }
Example #11
0
 public void method_0()
 {
     this.class148_0 = this.method_3();
     while (this.class148_0 != null)
     {
         this.list_3.Clear();
         this.double_1 = this.class148_0.point2D_0.Y;
         Class145.Class155.Class156 class1560 = this.class156_0;
         Class145.Class148          class1480 = this.class148_0;
         Class145.Class146          class146  = this;
         int int0 = class146.int_0;
         int num  = int0;
         class146.int_0 = int0 + 1;
         class1560.method_0(class1480, num);
         this.class34_0.Add(this.class156_0);
         int num1 = 0;
         while (true)
         {
             if (num1 < this.list_1.Count)
             {
                 Class145.Class147 item = this.list_1[num1];
                 if (item.point2D_1.Y > this.double_1)
                 {
                     Class145.Class155.Class157 class1570 = this.class157_0;
                     Class145.Class146          class1461 = this;
                     int int01 = class1461.int_0;
                     int num2  = int01;
                     class1461.int_0 = int01 + 1;
                     class1570.method_0(item, num1, num2);
                     this.class34_0.Add(this.class157_0);
                     break;
                 }
                 else
                 {
                     num1++;
                 }
             }
             else
             {
                 break;
             }
         }
         Class145.Class155 class155 = this.class34_0.method_4();
         this.double_0 = class155.double_0;
         while (true)
         {
             class155.vmethod_1(this);
             class155.vmethod_0(this);
             class155 = this.class34_0.method_4();
             if (class155 == null)
             {
                 break;
             }
             if (class155.double_0 != this.double_0)
             {
                 this.method_1();
                 this.double_0 = class155.double_0;
             }
         }
         this.method_1();
         List <Class145.Class147> list1 = this.list_1;
         this.list_1 = this.list_3;
         this.list_3 = list1;
     }
 }