package com.google.android.m4b.maps.bj;

import android.content.Context;
import android.content.res.Resources;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.graphics.Paint.Style;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.opengl.GLU;
import android.os.Bundle;
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat;
import android.support.v4.widget.ExploreByTouchHelper;
import android.util.DisplayMetrics;
import android.util.FloatMath;
import android.view.View;
import android.view.accessibility.AccessibilityEvent;
import com.google.android.m4b.maps.R.array;
import com.google.android.m4b.maps.bu.bp;
import com.google.android.m4b.maps.bu.bw;
import java.lang.reflect.Array;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.FloatBuffer;
import java.util.List;
import javax.microedition.khronos.opengles.GL10;

final class p extends ExploreByTouchHelper
{
  private static final float[] a = { 0.0F, -0.8F, 0.42096F, -0.1824F, -0.8F, 0.30096F, -0.1824F, -0.8F, 0.2F, 0.0F, -0.8F, 0.32F, 0.1824F, -0.8F, 0.2F, 0.1824F, -0.8F, 0.30096F };
  private static final float[] b = { 0.0F, -0.84F, 0.42096F, -0.1824F, -0.84F, 0.30096F, -0.1824F, -0.84F, 0.2F, 0.0F, -0.84F, 0.32F, 0.1824F, -0.84F, 0.2F, 0.1824F, -0.84F, 0.30096F };
  private boolean A = true;
  private int[][] B;
  private final float C;
  private boolean D;
  private boolean E;
  private q c;
  private t[] d;
  private int e;
  private int f;
  private float g;
  private final b h;
  private final b i;
  private boolean j;
  private boolean k;
  private final w l;
  private final float[] m;
  private k n;
  private final CharSequence[] o;
  private final CharSequence[] p;
  private final Paint q;
  private final Paint r;
  private a s;
  private a t;
  private final Object u;
  private int v;
  private int w;
  private long x;
  private long y;
  private boolean z = true;

  static
  {
    new float[] { 0.0F, 1.0F, 0.0F, 1.0F, 0.0F, 1.0F, 1.0F, 0.0F, -1.0F, -1.0F, 0.0F, -1.0F, -1.0F, 0.0F, 1.0F };
    new byte[] { 0, 1, 2, 3, 4, 0 };
    new byte[] { 0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 1 };
  }

  public p(Context paramContext, w paramw, View paramView)
  {
    super(paramView);
    this.C = paramContext.getResources().getDisplayMetrics().density;
    this.h = new b(a);
    this.i = new b(b);
    this.l = paramw;
    c();
    this.o = paramContext.getResources().getTextArray(R.array.compass_directions);
    this.p = paramContext.getResources().getTextArray(R.array.full_compass_directions);
    this.q = new Paint();
    this.q.setAntiAlias(true);
    this.q.setTextAlign(Paint.Align.LEFT);
    this.q.setTypeface(Typeface.DEFAULT);
    this.q.setTextSize(100.0F);
    this.q.setARGB(-1, 255, 255, 255);
    this.q.setStyle(Paint.Style.FILL);
    this.q.setStrokeWidth(1.0F);
    this.r = new Paint();
    this.r.setAntiAlias(true);
    this.r.setTextAlign(Paint.Align.LEFT);
    this.r.setTypeface(Typeface.DEFAULT);
    this.r.setTextSize(100.0F);
    this.r.setStyle(Paint.Style.STROKE);
    this.r.setStrokeWidth(3.0F);
    this.r.setARGB(-1, 0, 0, 0);
    this.s = new a();
    this.t = new a();
    this.u = this.t;
    this.m = new float[8];
  }

  private void a(GL10 paramGL10, bw parambw)
  {
    if (this.B == null)
      return;
    this.n.a(paramGL10, this.e, this.f);
    paramGL10.glMatrixMode(5888);
    paramGL10.glPushMatrix();
    paramGL10.glLoadIdentity();
    paramGL10.glMultMatrixf(parambw.a(), 0);
    for (int i1 = 0; i1 < this.d.length; i1++)
      if (this.B[i1][0] != -1)
      {
        paramGL10.glPushMatrix();
        float f1 = bp.o(180.0F - this.c.t);
        float f2 = FloatMath.cos(f1);
        float f3 = FloatMath.sin(f1);
        paramGL10.glRotatef(-this.c.u, f2, 0.0F, -f3);
        paramGL10.glRotatef(-this.d[i1].a, 0.0F, 1.0F, 0.0F);
        paramGL10.glTranslatef(0.0F, 0.0F, -5.0F);
        paramGL10.glTranslatef(0.0F, -5.0F, 0.0F);
        paramGL10.glRotatef(-90.0F, 1.0F, 0.0F, 0.0F);
        paramGL10.glRotatef(90.0F, 0.0F, 0.0F, 1.0F);
        paramGL10.glScalef(0.025F, 0.025F, 0.025F);
        paramGL10.glTranslatef(0.0F, -60.0F * this.C / 2.0F, 0.0F);
        this.n.a(paramGL10, this.B[i1][0]);
        paramGL10.glPopMatrix();
      }
    paramGL10.glMatrixMode(5888);
    paramGL10.glPopMatrix();
    this.n.d(paramGL10);
  }

  private void b(GL10 paramGL10)
  {
    this.k = false;
    this.j = false;
    if (this.n != null)
    {
      this.n.b(paramGL10);
      this.n = null;
    }
  }

  private void b(GL10 paramGL10, bw parambw)
  {
    if (this.g == 0.0F)
      return;
    paramGL10.glMatrixMode(5889);
    paramGL10.glLoadIdentity();
    GLU.gluPerspective(paramGL10, parambw.f() * x.a(this.g), this.g, 0.1F, 100.0F);
    paramGL10.glMatrixMode(5888);
    paramGL10.glLoadIdentity();
    paramGL10.glTranslatef(0.0F, 0.0F, -2.0F);
    paramGL10.glMultMatrixf(parambw.a(), 0);
    paramGL10.glTranslatef(0.0F, -1.0F, 0.0F);
    paramGL10.glShadeModel(7424);
    paramGL10.glEnable(3042);
    paramGL10.glBlendFunc(770, 771);
    this.l.a(paramGL10);
    paramGL10.glMatrixMode(5888);
    int i1 = 0;
    t localt;
    int i4;
    label418: int i5;
    if (i1 < this.d.length)
    {
      float f1 = parambw.b();
      localt = this.d[i1];
      paramGL10.glPushMatrix();
      float f2 = f1 - localt.a;
      float f3 = 180.0F - localt.a;
      float f4 = bp.o(180.0F - this.c.t);
      float f5 = FloatMath.cos(f4);
      float f6 = FloatMath.sin(f4);
      paramGL10.glRotatef(-this.c.u, f5, 0.0F, -f6);
      paramGL10.glRotatef(f3, 0.0F, 1.0F, 0.0F);
      int i2 = localt.d;
      int i3 = Math.min((int)(1.1F * ((0xFF & i2 >> 24) << 8)), 65536);
      paramGL10.glColor4x((0xFF & i2 >> 16) << 8, (0xFF & i2 >> 8) << 8, (0xFF & i2 >> 0) << 8, i3);
      float f7 = FloatMath.cos(bp.o(f2));
      float f8 = f7 * (2.0F * f7) - 1.0F;
      float f9 = f7 * (f7 * (4.0F * f7) - 3.0F);
      paramGL10.glTranslatef(0.0F, 0.0F, 0.2F + 0.25F * (0.68F + f7 * 0.355F - f8 * 0.32F - 0.215F * f9));
      if (this.w == i1)
      {
        i4 = 1;
        if (this.v != i1)
          break label640;
        i5 = 1;
        label429: if (i5 == 0)
          break label698;
      }
    }
    label640: label652: label673: label698: for (int i6 = 0; ; i6 = i4)
    {
      int i7;
      if ((i6 != 0) || (i5 != 0))
      {
        i7 = 1;
        label450: if (i7 == 0)
          break label673;
        if (i6 == 0)
          break label652;
        paramGL10.glColor4x(34816, 27904, 44288, 65536);
        label478: paramGL10.glPushMatrix();
        paramGL10.glScalef(1.3F, 1.0F, 1.3F);
      }
      while (true)
      {
        this.l.b(paramGL10);
        if ((!this.E) || (this.g >= 1.0F))
          paramGL10.glTranslatef(0.0F, 0.5F, 0.0F);
        paramGL10.glColor4x(0, 0, 0, 20480);
        this.i.a(paramGL10, 6);
        paramGL10.glColor4x(65536, 65536, 65536, 65536);
        this.h.a(paramGL10, 6);
        this.s.a(this.l, paramGL10, this.m, this.h, 0, 64, i1, localt.b);
        if (i7 != 0)
          paramGL10.glPopMatrix();
        paramGL10.glPopMatrix();
        i1++;
        break;
        i4 = 0;
        break label418;
        i5 = 0;
        break label429;
        i7 = 0;
        break label450;
        paramGL10.glColor4x(62976, 35328, 7936, 65536);
        break label478;
        paramGL10.glColor4x(0, 0, 0, 32768);
      }
      paramGL10.glDisable(3042);
      return;
    }
  }

  private void c()
  {
    if (this.C < 2.0D);
    for (int i1 = 1024; ; i1 = 2048)
    {
      this.n = new k(true, 2048, i1, false);
      return;
    }
  }

  public final int a(int paramInt1, int paramInt2)
  {
    synchronized (this.u)
    {
      int i1 = this.t.b(paramInt1, paramInt2);
      return i1;
    }
  }

  public final long a()
  {
    return this.x;
  }

  public final t a(int paramInt)
  {
    try
    {
      t localt = this.d[paramInt];
      return localt;
    }
    catch (ArrayIndexOutOfBoundsException localArrayIndexOutOfBoundsException)
    {
    }
    return null;
  }

  public final void a(int paramInt, long paramLong)
  {
    if (paramInt == 0)
      this.y = paramLong;
  }

  public final void a(q paramq, int paramInt1, int paramInt2)
  {
    int i1 = 1;
    this.c = paramq;
    if ((this.c != null) && (this.c.n == i1));
    while (true)
    {
      this.E = i1;
      this.d = this.c.x;
      this.e = paramInt1;
      this.f = paramInt2;
      this.g = (paramInt1 / paramInt2);
      this.k = false;
      this.v = -1;
      return;
      i1 = 0;
    }
  }

  public final void a(GL10 paramGL10)
  {
    b(paramGL10);
  }

  public final void a(GL10 paramGL10, bw parambw, long paramLong)
  {
    if ((this.D) || (this.c == null))
      return;
    int[] arrayOfInt1 = new int[1];
    paramGL10.glGetIntegerv(3379, arrayOfInt1, 0);
    int i1;
    int i2;
    if (this.c.y != null)
    {
      i1 = 1;
      if ((arrayOfInt1[0] < 2048) || (i1 == 0) || (this.c.a))
        break label272;
      i2 = 1;
      label73: this.w = -1;
      if (paramLong - this.y < 2000L)
      {
        this.w = q.a(this.d, parambw.b(), 120.0F);
        long l1 = 2000L + this.y;
        if ((this.x == 0L) || (this.x > l1))
          this.x = l1;
      }
      if (i2 == 0)
        break label278;
    }
    while (true)
    {
      label272: label278: int i5;
      try
      {
        if (!this.E)
        {
          i3 = 1;
          if (!this.k)
          {
            q localq = this.c;
            if (localq != null)
              continue;
          }
          this.s.a(this.e, this.f);
          if ((!this.E) && (this.z))
            a(paramGL10, parambw);
          if (this.A)
            b(paramGL10, parambw);
          synchronized (this.u)
          {
            a locala = this.t;
            this.t = this.s;
            this.s = locala;
            return;
          }
          i1 = 0;
          break;
          i2 = 0;
          break label73;
        }
        int i3 = 0;
        continue;
        if (this.n == null)
          c();
        if (!this.j)
        {
          this.n.a(paramGL10);
          this.j = true;
        }
        if (i3 != 0)
        {
          this.n.a();
          int i4 = this.d.length;
          int[] arrayOfInt2 = { i4, 3 };
          this.B = ((int[][])Array.newInstance(Integer.TYPE, arrayOfInt2));
          i5 = 0;
          if (i5 < i4)
          {
            t localt = this.d[i5];
            if ((localt.e != null) && (localt.e.length() > 0))
            {
              String str = localt.e + " (" + this.o[localt.b] + ")";
              int i6 = 0;
              if (i6 < 3)
              {
                this.B[i5][i6] = this.n.a(paramGL10, str, this.q, this.r);
                i6++;
                continue;
              }
            }
            else
            {
              this.B[i5][0] = -1;
            }
          }
          else
          {
            this.n.c(paramGL10);
          }
        }
        else
        {
          this.k = true;
          continue;
        }
      }
      catch (OutOfMemoryError localOutOfMemoryError)
      {
        b(paramGL10);
        c();
        this.D = true;
        return;
      }
      i5++;
    }
  }

  public final void a(boolean paramBoolean)
  {
    this.z = paramBoolean;
  }

  public final void b(int paramInt)
  {
    this.v = paramInt;
  }

  public final void b(boolean paramBoolean)
  {
    this.A = paramBoolean;
  }

  public final boolean b()
  {
    return this.z;
  }

  protected final int getVirtualViewAt(float paramFloat1, float paramFloat2)
  {
    int i1 = this.t.b((int)paramFloat1, this.f - (int)paramFloat2);
    if (i1 == -1)
      i1 = -2147483648;
    return i1;
  }

  protected final void getVisibleVirtualViews(List<Integer> paramList)
  {
    int[] arrayOfInt = this.t.a();
    for (int i1 = 0; i1 < this.t.b(); i1++)
      paramList.add(Integer.valueOf(arrayOfInt[i1]));
  }

  protected final boolean onPerformActionForVirtualView(int paramInt1, int paramInt2, Bundle paramBundle)
  {
    return true;
  }

  protected final void onPopulateEventForVirtualView(int paramInt, AccessibilityEvent paramAccessibilityEvent)
  {
    int i1 = this.t.a(paramInt);
    paramAccessibilityEvent.setContentDescription(this.p[i1]);
  }

  protected final void onPopulateNodeForVirtualView(int paramInt, AccessibilityNodeInfoCompat paramAccessibilityNodeInfoCompat)
  {
    int[] arrayOfInt = this.t.c();
    int i1 = paramInt * 4;
    paramAccessibilityNodeInfoCompat.setBoundsInParent(new Rect(arrayOfInt[i1], this.f - arrayOfInt[(i1 + 3)], arrayOfInt[(i1 + 2)], this.f - arrayOfInt[(i1 + 1)]));
    paramAccessibilityNodeInfoCompat.setFocusable(true);
    int i2 = this.t.a(paramInt);
    paramAccessibilityNodeInfoCompat.setContentDescription(this.p[i2]);
  }

  static final class a
  {
    private final int[] a = new int[400];
    private final int[] b = new int[100];
    private final int[] c = new int[100];
    private int d;
    private int e;
    private int f;

    public final int a(int paramInt)
    {
      return this.c[paramInt];
    }

    public final void a(int paramInt1, int paramInt2)
    {
      this.d = 0;
      this.e = paramInt1;
      this.f = paramInt2;
    }

    public final void a(w paramw, GL10 paramGL10, float[] paramArrayOfFloat, p.b paramb, int paramInt1, int paramInt2, int paramInt3, int paramInt4)
    {
      paramw.b(paramGL10);
      int i = 4 * this.d;
      if (paramb.a(paramw, this.a, i, paramArrayOfFloat, this.e, this.f))
      {
        int j = this.a[i];
        int k = this.a[(i + 1)];
        int m = this.a[(i + 2)];
        int n = this.a[(i + 3)];
        int i1 = 4 * this.d;
        int[] arrayOfInt1 = this.a;
        int i2 = Math.max(0, m - j);
        int i3 = Math.max(64, n - k);
        int i4 = j + m >> 1;
        int i5 = k + n >> 1;
        int i6 = i4 - (i2 >> 1);
        int i7 = i5 - (i3 >> 1);
        arrayOfInt1[i1] = i6;
        arrayOfInt1[(i1 + 1)] = i7;
        arrayOfInt1[(i1 + 2)] = (i6 + i2);
        arrayOfInt1[(i1 + 3)] = (i7 + i3);
        this.c[this.d] = paramInt4;
        int[] arrayOfInt2 = this.b;
        int i8 = this.d;
        this.d = (i8 + 1);
        arrayOfInt2[i8] = paramInt3;
      }
    }

    public final int[] a()
    {
      return this.b;
    }

    public final int b()
    {
      return this.d;
    }

    public final int b(int paramInt1, int paramInt2)
    {
      int[] arrayOfInt = this.a;
      for (int i = -1 + this.d; i >= 0; i--)
      {
        int j = i * 4;
        if ((arrayOfInt[j] <= paramInt1) && (arrayOfInt[(j + 1)] <= paramInt2) && (paramInt1 < arrayOfInt[(j + 2)]) && (paramInt2 < arrayOfInt[(j + 3)]))
          return this.b[i];
      }
      return -1;
    }

    public final int[] c()
    {
      return this.a;
    }
  }

  static final class b
  {
    private final FloatBuffer a;
    private final int b;
    private final int c;
    private final ByteBuffer d;

    public b(float[] paramArrayOfFloat)
    {
      this(paramArrayOfFloat, a(paramArrayOfFloat.length / 3));
    }

    private b(float[] paramArrayOfFloat, byte[] paramArrayOfByte)
    {
      this(paramArrayOfFloat, paramArrayOfByte, paramArrayOfByte);
    }

    private b(float[] paramArrayOfFloat, byte[] paramArrayOfByte1, byte[] paramArrayOfByte2)
    {
      this.a = ByteBuffer.allocateDirect(4 * paramArrayOfFloat.length).order(ByteOrder.nativeOrder()).asFloatBuffer();
      this.a.put(paramArrayOfFloat, 0, paramArrayOfFloat.length);
      this.a.position(0);
      this.b = paramArrayOfByte1.length;
      this.c = paramArrayOfByte2.length;
      if ((this.b > 256) || (this.c > 256))
        throw new IllegalArgumentException("Only up to 256 points");
      this.d = a(paramArrayOfByte1);
      a(paramArrayOfByte2);
    }

    private static ByteBuffer a(byte[] paramArrayOfByte)
    {
      int i = paramArrayOfByte.length;
      ByteBuffer localByteBuffer = ByteBuffer.allocateDirect(i).order(ByteOrder.nativeOrder());
      localByteBuffer.put(paramArrayOfByte, 0, i);
      localByteBuffer.position(0);
      return localByteBuffer;
    }

    private static byte[] a(int paramInt)
    {
      byte[] arrayOfByte = new byte[paramInt];
      for (int i = 0; i < paramInt; i++)
        arrayOfByte[i] = ((byte)i);
      return arrayOfByte;
    }

    final void a(GL10 paramGL10, int paramInt)
    {
      paramGL10.glEnableClientState(32884);
      paramGL10.glVertexPointer(3, 5126, 0, this.a);
      paramGL10.glDisableClientState(32888);
      paramGL10.glDisable(3553);
      paramGL10.glDrawElements(6, this.b, 5121, this.d);
    }

    public final boolean a(w paramw, int[] paramArrayOfInt, int paramInt1, float[] paramArrayOfFloat, int paramInt2, int paramInt3)
    {
      int i = this.a.limit() / 3;
      int j = 2147483647;
      int k = -2147483648;
      int m = 2147483647;
      int n = -2147483648;
      boolean bool = false;
      int i1 = 0;
      if (i1 < i)
      {
        int i2 = i1 * 3;
        paramArrayOfFloat[0] = this.a.get(i2);
        paramArrayOfFloat[1] = this.a.get(i2 + 1);
        paramArrayOfFloat[2] = this.a.get(i2 + 2);
        paramArrayOfFloat[3] = 1.0F;
        paramw.a(paramArrayOfFloat, 0, paramArrayOfFloat, 4);
        int i3 = (int)paramArrayOfFloat[4];
        int i4 = (int)paramArrayOfFloat[5];
        int i5;
        if (!bool)
        {
          if ((i3 < 0) || (i4 < 0) || (i3 >= paramInt2) || (i4 >= paramInt3))
            break label200;
          i5 = 1;
          label150: if (i5 == 0)
            break label206;
        }
        label200: label206: for (bool = true; ; bool = false)
        {
          j = Math.min(j, i3);
          k = Math.max(k, i3);
          m = Math.min(m, i4);
          n = Math.max(n, i4);
          i1++;
          break;
          i5 = 0;
          break label150;
        }
      }
      if (bool)
      {
        paramArrayOfInt[paramInt1] = j;
        paramArrayOfInt[(paramInt1 + 1)] = m;
        paramArrayOfInt[(paramInt1 + 2)] = k;
        paramArrayOfInt[(paramInt1 + 3)] = n;
      }
      return bool;
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.android.m4b.maps.bj.p
 * JD-Core Version:    0.6.2
 */