public new static bool A(F2 f, F2 f2) { if (f.h() != f2.h()) { return(false); } if (f.I() != f2.I()) { return(false); } if (f.A() != f2.A()) { return(false); } foreach (Y1 y in (IEnumerable)f2.h()) { int num = y.a(); f.h(num); foreach (Y1 y2 in (IEnumerable)f2.h()) { int num2 = y2.a(); f.I(num2); if (f.A(num, num2) != f2.A(num, num2)) { return(false); } } } return(true); }
public new static F2 A(F2 f) { F2 f2 = new F2(); f2.h(f.h()); f2.I(f.I()); foreach (Y1 y in (IEnumerable)f.h()) { int num = y.a(); Y1 y2 = f2.h(num); foreach (Y1 y3 in (IEnumerable)f.h()) { int num2 = y3.a(); Y1 y4 = f2.I(num2); d.a a = f.A(num, num2); if (a != null) { f2.A(a, y2.a(), y4.a(), true); } } y2.A(null, false, false); foreach (Y1 y5 in (IEnumerable)f.h()) { int num3 = y5.a(); Y1 y6 = f2.I(num3); y6.A(null, false, false); } } return(f2); }
public void L(B1 b) { Graphics graphics = b.A(); if (this.A() == null) { return; } graphics.SmoothingMode = SmoothingMode.AntiAlias; if (this.l() && !b.b()) { this.L(graphics, this.G(b.C())); } List <d.a> list = new List <d.a>(this.L().A()); F2 f = this.L().A(); if (graphics.ClipBounds.IntersectsWith(f.A().L())) { list.Add(f.A()); } for (int i = 0; i < this.L().A().h(); i++) { Y1 y = f.h(i); if ((float)y.a() >= graphics.ClipBounds.Left) { if ((float)y.A() > graphics.ClipBounds.Right) { break; } for (int j = 0; j < this.L().A().I(); j++) { Y1 y2 = f.I(j); if ((float)y2.a() >= graphics.ClipBounds.Top) { if ((float)y2.A() > graphics.ClipBounds.Bottom) { break; } f2 f2 = f.a(i, j); if (f2 != null && !graphics.ClipBounds.IntersectsWith(f2.A)) { d.a a = f2.A; if (a != f.A() && (!b.c() || this.L().A(a))) { list.Add(f2.A); } } } } } } foreach (d.a current in list) { current.Y(b, false, true); } this.L().A(this, b); foreach (d.a current2 in list) { current2.Y(b, true, false); } if (this.L() is j) { graphics.Transform = this.A; j j2 = (j)this.L(); j2.a(graphics); graphics.Transform = this.a; } if (global::a.F.B(this.L(), null)) { this.L(graphics, this.L()); } if (this.L() != null) { this.L().Y(b, true, true); } }
public H2(F2 f, Rectangle rectangle, bool flag) { if (flag && !f.A(rectangle, out rectangle)) { return; } this.a = true; this.A = new F2(); int num = 2147483647; int num2 = -2147483648; int num3 = 2147483647; int num4 = -2147483648; for (int i = 0; i < rectangle.Height; i++) { for (int j = 0; j < rectangle.Width; j++) { d.a a = f.A(j + rectangle.X, i + rectangle.Y); if (a != null && !(a is global::b.b)) { if (j < num) { num = j; } if (j > num2) { num2 = j; } if (i < num3) { num3 = i; } if (i > num4) { num4 = i; } } } } if (num == 2147483647) { return; } List <global::C.b> list = new List <global::C.b>(); List <global::b.c> list2 = new List <global::b.c>(); Rectangle rectangle2 = new Rectangle(num, num3, num2 - num + 1, num4 - num3 + 1); this.A.A(); this.A.h(rectangle2.Width); this.A.I(rectangle2.Height); bool flag2 = false; for (int k = 0; k < rectangle2.Height; k++) { for (int l = 0; l < rectangle2.Width; l++) { d.a a2 = f.A(l + rectangle.X + num, k + rectangle.Y + num3); if (a2 != null && !(a2 is global::b.b)) { this.A.A(a2, l, k); if (!flag2) { this.A.A(a2); } this.A(a2, list, list2); } } } this.A = list.ToArray(); this.A = list2.ToArray(); if (this.A.get_Count() > 0) { foreach (d.a current in (IEnumerable <d.a>) this.A) { foreach (D.A a3 in current.d()) { if (!this.A.Contains(a3) && this.A.Contains(a3.d(current))) { this.A.Add(a3); } } } } }