예제 #1
0
    private static bool smethod_4(Class722 A_0, Class722 A_1)
    {
        if ((A_0.method_19() < 3) || (A_1.method_19() < 3))
        {
            return(false);
        }
        Class887 class2 = new Class887(A_0, A_1);

        for (int i = 0; i < A_0.method_19(); i++)
        {
            class2.method_3(A_0.method_20(i).method_2());
            class2.method_11(i);
            class2.method_13(A_0.method_10(i + 1));
            Class448 class3 = smethod_10(A_0, i);
            for (int j = 0; j < A_1.method_19(); j++)
            {
                class2.method_15(j);
                smethod_5(class2, class3);
            }
        }
        if (class2.method_8())
        {
            smethod_12(class2, true);
            smethod_12(class2, false);
        }
        return(class2.method_8());
    }
예제 #2
0
    private static Class722 smethod_15(Class722 A_0, Class722 A_1, int A_2, bool A_3, bool A_4)
    {
        Class886 class3;
        Class722 class5 = A_3 ? A_0 : A_1;
        Class722 class2 = new Class722();
        int      num2   = A_2;
        int      num    = A_0.method_19() + A_1.method_19();
        Class722 class4 = class5;

Label_011D:
        class3 = class4.method_20(num2);
        if ((class2.method_19() == 0) || (!class2.method_20(class2.method_19() - 1).method_2().Equals(class3.method_2()) && !class2.method_20(0).method_2().Equals(class3.method_2())))
        {
            class2.method_5(class3);
        }
        if (num2 == (class4.method_19() - 1))
        {
            num2 = 0;
        }
        else
        {
            num2++;
        }
        if (A_4)
        {
            A_4 = false;
        }
        else
        {
            if (((num2 != A_2) || (class4 != class5)) && (class2.method_19() <= num))
            {
                if (class3.method_0() == VertexType.Simple)
                {
                    goto Label_011D;
                }
                class4 = (class4 == A_0) ? A_1 : A_0;
                num2   = class4.method_8(class3);
                if (((num2 != A_2) || (class4 != class5)) && (num2 != -1))
                {
                    if (num2 == (class4.method_19() - 1))
                    {
                        num2 = 0;
                    }
                    else
                    {
                        num2++;
                    }
                    if ((num2 != A_2) || (class4 != class5))
                    {
                        goto Label_011D;
                    }
                }
            }
            class2.method_16();
            return(class2);
        }
        goto Label_011D;
    }
예제 #3
0
 internal Class887(Class722 A_0, Class722 A_1)
 {
     this.class722_0  = A_0;
     this.class722_1  = A_1;
     this.arrayList_0 = new ArrayList[A_0.method_19()];
     this.arrayList_1 = new ArrayList[A_1.method_19()];
     this.arrayList_2 = new ArrayList[A_0.method_19()];
     this.arrayList_3 = new ArrayList[A_1.method_19()];
 }
예제 #4
0
    private static Class622 smethod_11(Class722 A_0, Class722 A_1, bool A_2)
    {
        Class886 class3;

        if (!A_2)
        {
            return(smethod_12(A_0, A_1));
        }
        int[]    numArray = new int[1];
        bool     flag     = smethod_10(A_0, A_1, numArray);
        int      num2     = numArray[0];
        Class722 class5   = flag ? A_0 : A_1;
        Class722 class4   = new Class722();
        int      num      = num2;
        int      num3     = A_0.method_19() + A_1.method_19();
        Class722 class2   = class5;

Label_00A3:
        class3 = class2.method_20(num);
        class4.method_5(class3);
        if (num != (class2.method_19() - 1))
        {
            num++;
        }
        else
        {
            num = 0;
        }
        if (((num != num2) || (class2 != class5)) && (class4.method_19() <= num3))
        {
            if (class3.method_0() == VertexType.Simple)
            {
                goto Label_00A3;
            }
            class2 = (class2 == A_0) ? A_1 : A_0;
            num    = class2.method_8(class3);
            if (num != -1)
            {
                if (num == (class2.method_19() - 1))
                {
                    num = 0;
                }
                else
                {
                    num++;
                }
                if ((num != num2) || (class2 != class5))
                {
                    goto Label_00A3;
                }
            }
        }
        class4.method_16();
        return(new Class622(class4));
    }
예제 #5
0
 private static int smethod_22(Class722 A_0, int A_1, bool A_2)
 {
     if (!A_2)
     {
         if (A_1 != 0)
         {
             return(A_1 - 1);
         }
         return(A_0.method_19() - 1);
     }
     if (A_1 != (A_0.method_19() - 1))
     {
         return(A_1 + 1);
     }
     return(0);
 }
예제 #6
0
 private static Class448 smethod_7(Class722 A_0, int A_1, PointF A_2)
 {
     if (A_1 >= (A_0.method_19() - 1))
     {
         return(new Class448(A_2, A_0.method_20(0).method_2()));
     }
     return(new Class448(A_2, A_0.method_20(A_1 + 1).method_2()));
 }
예제 #7
0
 internal static void smethod_0(Class722 A_0)
 {
     if ((A_0 != null) && (A_0.method_19() >= 4))
     {
         new Class671 {
             class722_0 = A_0
         }.method_0();
     }
 }
예제 #8
0
    private static void smethod_12(Class887 A_0, bool A_1)
    {
        int      num    = 1;
        Class722 class2 = A_1 ? A_0.method_0() : A_0.method_1();
        int      num3   = class2.method_19();

        for (int i = 0; i < num3; i++)
        {
            ArrayList list = A_1 ? A_0.method_18(i) : A_0.method_19(i);
            class2.method_3(i + num, list);
            num += list.Count;
        }
    }
예제 #9
0
    private static int smethod_17(Class722 A_0, Class722 A_1)
    {
        int num = 0;

        for (int i = 0; i < A_1.method_19(); i++)
        {
            if (A_0.method_15(A_1.method_20(i).method_2()))
            {
                num++;
            }
        }
        return(num);
    }
예제 #10
0
    internal void method_7(Class722 A_0)
    {
        ArrayList c = new ArrayList(this.arrayList_0.Count);

        for (int i = 0; i < this.method_8(); i++)
        {
            Class722 class2 = Class670.smethod_2(A_0, this.method_9(i));
            if (class2.method_19() != 0)
            {
                c.Add(class2);
            }
        }
        this.arrayList_0.Clear();
        this.arrayList_0.AddRange(c);
    }
예제 #11
0
 private static int smethod_28(Class722 A_0, Class722 A_1)
 {
     for (int i = 0; i < A_0.method_19(); i++)
     {
         if (A_0.method_20(i).method_0() == VertexType.Intersection)
         {
             Class886 class2 = A_0.method_20(A_0.method_10(i + 1));
             if ((class2.method_0() == VertexType.Intersection) || A_1.method_15(class2.method_2()))
             {
                 return(i);
             }
         }
     }
     return(-1);
 }
예제 #12
0
 internal static Class722 smethod_2(Class722 A_0, Class722 A_1)
 {
     if ((A_0 != null) || (A_1 != null))
     {
         if ((A_1 == null) || (A_1.method_19() == 0))
         {
             return(new Class722());
         }
         if ((A_0 != null) && (A_0.method_19() != 0))
         {
             return(smethod_25(A_0, A_1));
         }
     }
     return(new Class722());
 }
예제 #13
0
 private void method_0(Class722 A_0, Class722 A_1)
 {
     for (int i = 0; i < A_0.method_19(); i++)
     {
         for (int j = 0; j < A_1.method_19(); j++)
         {
             float num3 = spr⃸.ᜁ(A_0.method_20(i).method_2(), A_1.method_20(j).method_2());
             if (num3 < this.float_0)
             {
                 this.float_0 = num3;
                 this.int_0   = i;
                 this.int_1   = j;
             }
         }
     }
 }
예제 #14
0
    private static void smethod_6(Class722 A_0, PointF A_1)
    {
        int num = A_0.method_19();

        if (num < 2)
        {
            A_0.method_4(A_1);
        }
        else
        {
            PointF tf  = A_0.method_20(num - 2).method_2();
            PointF tf2 = A_0.method_20(num - 1).method_2();
            if ((tf.X == tf2.X) && (tf2.X == A_1.X))
            {
                A_0.method_21(num - 1, new Class886(A_1));
            }
            else
            {
                A_0.method_4(A_1);
            }
        }
    }
예제 #15
0
    private static Class622 smethod_16(Class722 A_0, Class722 A_1)
    {
        int num = smethod_17(A_0, A_1);

        if (num == A_1.method_19())
        {
            return(new Class622(A_0));
        }
        if (num != 0)
        {
            return(new Class622(A_0));
        }
        num = smethod_17(A_1, A_0);
        if (num == A_0.method_19())
        {
            return(new Class622(A_1));
        }
        if (num != 0)
        {
            return(new Class622(A_1));
        }
        return(new Class622(A_0, A_1));
    }