// Decompiled by Jad v1.5.7f. Copyright 2000 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html // Decompiler options: packimports(3) // Source File Name: LX.java class LX { LX() { } public static void l1Il(float l1Il11[][], float Il1l1[][], III II1llI, III IlII11, III I1IIl1, III IIlll1, float I1lllI, float IllI11, float lIlIl1, float lI1ll1, int ll1lI1, int Il1lIl, int l11l1l, int I11Ill, boolean l11l1I[], short llII1l[], float ll1IIl) { short lI1Ill[][][] = new short[6][4][2]; float IllII = II1llI.l1 * IllI11; float lIlI1 = II1llI.l1 * I1lllI; float l1IlI = IlII11.l1 * IllI11; float I1lll = IlII11.l1 * I1lllI; float l1I1l = I1IIl1.l1 * IllI11; float I1l1I = I1IIl1.l1 * I1lllI; float lI1Il = IIlll1.l1 * IllI11; float ll1II = IIlll1.l1 * I1lllI; int l[] = { 1, 0, 0, 1 }; for(int lI = 0; lI < 4; lI++) { int ll = lI / 2; float I11l1 = l1Il11[ll][1] + Il1l1[l[lI]][1]; float llIll = l1Il11[ll][0] + Il1l1[l[lI]][0]; float I1IlIl = l1Il11[ll][2] + Il1l1[l[lI]][2]; float l11I1 = I11l1 + IllII; float l1lIl = llIll - lIlI1; lI1Ill[1][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); l11I1 = I11l1 + l1IlI; l1lIl = llIll - I1lll; lI1Ill[2][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); l11I1 = I11l1 + lI1ll1; l1lIl = llIll - lIlIl1; lI1Ill[0][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); lI1Ill[5][lI][0] = (short)(-lI1Ill[0][lI][0]); lI1Ill[5][lI][1] = lI1Ill[0][lI][1]; I1IlIl = -I1IlIl; l11I1 = I11l1 + l1I1l; l1lIl = llIll - I1l1I; lI1Ill[3][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); l11I1 = I11l1 + lI1Il; l1lIl = llIll - ll1II; lI1Ill[4][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); } int l1IIl1 = l11l1l; int IllIII = I11Ill; int lIllII = l1IIl1 + 216; int IIlIll = IllIII - 216; int IlllI1 = II1llI.l1 <= ll1IIl ? 0 : -1; int llIII1 = IlII11.l1 <= ll1IIl ? 0 : -1; int I11IlI = I1IIl1.l1 <= ll1IIl ? 0 : -1; int IlIlI1 = IIlll1.l1 <= ll1IIl ? 0 : -1; for(int ll1I1l = 0; ll1I1l < 4; ll1I1l++) { short lIllIl; short I1lll1; short lI1lll; short Il1I1I; short II1ll1; if(l11l1I[ll1I1l]) { lIllIl = llII1l[ll1I1l]; I1lll1 = lI1lll = Il1I1I = II1ll1 = 1; } else { lIllIl = 0; I1lll1 = (short)IlllI1; lI1lll = (short)llIII1; Il1I1I = (short)I11IlI; II1ll1 = (short)IlIlI1; } II1llI.lI[0][l1IIl1] = I1lll1; IlII11.lI[0][lIllII] = lI1lll; I1IIl1.lI[0][IllIII] = Il1I1I; IIlll1.lI[0][IIlIll] = II1ll1; II1llI.lI[1][l1IIl1] = IlII11.lI[1][lIllII] = I1IIl1.lI[1][IllIII] = IIlll1.lI[1][IIlIll] = lIllIl; l1IIl1++; lIllII++; IllIII++; IIlIll++; II1llI.lI[0][l1IIl1] = IlII11.lI[0][lIllII] = lI1Ill[0][ll1I1l][0]; II1llI.lI[1][l1IIl1] = IlII11.lI[1][lIllII] = I1IIl1.lI[1][IllIII] = IIlll1.lI[1][IIlIll] = lI1Ill[0][ll1I1l][1]; I1IIl1.lI[0][IllIII] = IIlll1.lI[0][IIlIll] = lI1Ill[5][ll1I1l][0]; l1IIl1++; lIllII++; IllIII++; IIlIll++; II1llI.lI[0][l1IIl1] = lI1Ill[1][ll1I1l][0]; II1llI.lI[1][l1IIl1] = lI1Ill[1][ll1I1l][1]; IlII11.lI[0][lIllII] = lI1Ill[2][ll1I1l][0]; IlII11.lI[1][lIllII] = lI1Ill[2][ll1I1l][1]; I1IIl1.lI[0][IllIII] = lI1Ill[3][ll1I1l][0]; I1IIl1.lI[1][IllIII] = lI1Ill[3][ll1I1l][1]; IIlll1.lI[0][IIlIll] = lI1Ill[4][ll1I1l][0]; IIlll1.lI[1][IIlIll] = lI1Ill[4][ll1I1l][1]; l1IIl1++; lIllII++; IllIII++; IIlIll++; } } public static void I1l(float l1Il11[][], float Il1l1[][], III II1llI, III IlII11, float I1lllI, float IllI11, float lIlIl1, float lI1ll1, int ll1lI1, int Il1lIl, int l1ll11, boolean l11l1I[], short llII1l[], float ll1IIl) { short lI1Ill[][][] = new short[5][4][2]; float IllII = II1llI.l1 * IllI11; float lIlI1 = II1llI.l1 * I1lllI; float l1IlI = IlII11.l1 * IllI11; float I1lll = IlII11.l1 * I1lllI; int l[] = { 1, 0, 0, 1 }; for(int lI = 0; lI < 4; lI++) { int ll = lI / 2; float I11l1 = l1Il11[ll][1] + Il1l1[l[lI]][1]; float llIll = l1Il11[ll][0] + Il1l1[l[lI]][0]; float I1IlIl = l1Il11[ll][2] + Il1l1[l[lI]][2]; float l11I1 = I11l1 + IllII; float l1lIl = llIll - lIlI1; lI1Ill[1][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); l11I1 = I11l1 + l1IlI; l1lIl = llIll - I1lll; lI1Ill[2][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); l11I1 = I11l1 + lI1ll1; l1lIl = llIll - lIlIl1; lI1Ill[0][lI] = I11I(Il1lIl, l11I1, I1IlIl, l1lIl, ll1lI1); } int l1IIl1 = l1ll11; int lIllII = l1ll11 + 216; int IlllI1 = II1llI.l1 <= ll1IIl ? 0 : -1; int llIII1 = IlII11.l1 <= ll1IIl ? 0 : -1; for(int ll1I1l = 0; ll1I1l < 4; ll1I1l++) { short lIllIl; short I1lll1; short lI1lll; if(l11l1I[ll1I1l]) { lIllIl = llII1l[ll1I1l]; I1lll1 = lI1lll = 1; } else { lIllIl = 0; I1lll1 = (short)IlllI1; lI1lll = (short)llIII1; } II1llI.lI[0][l1IIl1] = I1lll1; IlII11.lI[0][lIllII] = lI1lll; II1llI.lI[1][l1IIl1] = IlII11.lI[1][lIllII] = lIllIl; l1IIl1++; lIllII++; II1llI.lI[0][l1IIl1] = IlII11.lI[0][lIllII] = lI1Ill[0][ll1I1l][0]; II1llI.lI[1][l1IIl1] = IlII11.lI[1][lIllII] = lI1Ill[0][ll1I1l][1]; l1IIl1++; lIllII++; II1llI.lI[0][l1IIl1] = lI1Ill[1][ll1I1l][0]; II1llI.lI[1][l1IIl1] = lI1Ill[1][ll1I1l][1]; IlII11.lI[0][lIllII] = lI1Ill[2][ll1I1l][0]; IlII11.lI[1][lIllII] = lI1Ill[2][ll1I1l][1]; l1IIl1++; lIllII++; } } public static final int lIll(float IlIl) { int l1lI = (int)(IlIl * 10F); int II1l = l1lI % 10; l1lI -= II1l; if(IlIl > 0.0F && II1l >= 5) l1lI += 10; if(IlIl < 0.0F && II1l <= -5) l1lI -= 10; return l1lI / 10; } public static final float lI1l(int a) { return (float)Math.sin((double)a * 0.017453292500000002D); } public static final float ll1l(int a) { return (float)Math.cos((double)a * 0.017453292500000002D); } public static short[] I11I(int lI1l1l, float l1IIIl, float I1lI1I, float IllIlI, int lIlII1) { short I11I11[] = new short[2]; float llIIl1 = -IllIlI / ((float)lI1l1l - IllIlI); float l11ll1 = -(llIIl1 - 1.0F) * l1IIIl; float l1llI1 = -(llIIl1 - 1.0F) * I1lI1I; int ll1l11 = lIll(l1llI1); int Il1llI = lIll(l11ll1); I11I11[0] = (short)ll1l11; I11I11[1] = (short)(lIlII1 + Il1llI); return I11I11; } public static final void Il1I(int lI1I[][], int I1Il, int IIll) throws Exception { int lllI = I1Il; int lIII = IIll; if(IIll > I1Il) { int lIlI = lI1I[0][(I1Il + IIll) / 2]; while(lllI <= lIII) { while(lllI < IIll && lI1I[0][lllI] < lIlI) lllI++; for(; lIII > I1Il && lI1I[0][lIII] > lIlI; lIII--); if(lllI <= lIII) { int l1II = lI1I[0][lllI]; int I1ll = lI1I[1][lllI]; int Illl = lI1I[2][lllI]; lI1I[0][lllI] = lI1I[0][lIII]; lI1I[1][lllI] = lI1I[1][lIII]; lI1I[2][lllI] = lI1I[2][lIII]; lI1I[0][lIII] = l1II; lI1I[1][lIII] = I1ll; lI1I[2][lIII] = Illl; lllI++; lIII--; } } if(I1Il < lIII) Il1I(lI1I, I1Il, lIII); if(lllI < IIll) Il1I(lI1I, lllI, IIll); } } public static int[] Ill(int lI1lII[], int ll1lll[], int l1IIll[][][], int l1Il11, int Il11I1, int IlIllI, int I1II11, int I111ll, int llI1Il, int l11III) { int IlIIIl = lI1lII.length; int I1II1I = ll1lll.length; int ll11lI = -I1II1I - 1; int lI111I = IlIIIl - 1; int I11I1I = lI1lII[lI111I] * -1; int llIIlI = ll1lll[I1II1I - 1] * -1; int II1lll = I11I1I + l11III; int l1llII = llIIlI + l11III; int II1l11 = l1Il11 + 10; float l11II1 = (float)I111ll / 9F; float l1ll1l = (float)llI1Il / 9F; int Illl1I[] = new int[(IlIIIl + I1II1I) * 864 * 4]; int I1lllI = -3; int Il1l = 0; int Il1lI1 = 0; for(int lI1I = 0; lI1I < 6; lI1I++) { float l1I1I1 = lI1l(I1lllI); float I1l1ll = ll1l(I1lllI); int IllI11 = 0; int Il1II1 = 9; int ll1IlI = 9; for(int ll1I = 0; ll1I < 18; ll1I++) { float Ill1Il = lI1l(IllI11); float lIlIII = ll1l(IllI11); float IlIll1 = (float)II1l11 + 10F * Math.abs(lIlIII) * I1l1ll; float I1IlI1 = (float)II1l11 + 10F * Ill1Il * I1l1ll; l1IIll[lI1I][ll1I][1] = Il1l; l1IIll[lI1I][(36 - ll1I) % 36][2] = Il1l; boolean IIllIl = IllI11 < 90; int IIlIlI; int l1II; int I1ll; float I11l1l; float llIl11; if(IIllIl) { IIlIlI = 1; l1II = 0; I1ll = I1II1I - 1; I11l1l = 0.0F; llIl11 = l1ll1l * (float)Il1II1; Il1II1--; } else { IIlIlI = -1; l1II = IlIIIl - 1; I1ll = 0; I11l1l = l11II1 * (float)ll1IlI; llIl11 = 0.0F; ll1IlI--; } float l1Il1l = (float)l1llII * l1I1I1 * lIlIII * (float)IIlIlI + IlIll1 * I1l1ll; float I1ll11 = (float)l1llII * Ill1Il * (float)IIlIlI - I11l1l; float IllllI = (float)l1llII * I1l1ll * lIlIII * (float)IIlIlI + IlIll1 * -l1I1I1; float l1I111 = I11I1I * 2; int lI1I1I = lIll((float)Il11I1 * lIlIII * (float)IIlIlI); int II1Il1; float Ill1l1; if(l1llII < lI1I1I) { II1Il1 = IlIIIl; Ill1l1 = l1I111 - Math.abs((float)I11I1I * I1l1ll * Ill1Il); } else { II1Il1 = 1; l1II = IlIIIl - 1 - l1II; Ill1l1 = I11I1I / 2; } for(int lIlI = 0; lIlI < II1Il1; lIlI++) { int l11llI = lI1lII[l1II]; float llIIll = (float)l11llI * I1l1ll * -Ill1Il * (float)IIlIlI; float l11I1l = (float)l11llI * l1I1I1 * -Ill1Il * (float)IIlIlI + l1Il1l; float l1ll1I = (float)l11llI * lIlIII * (float)IIlIlI + I1ll11; float l1IIII = llIIll + IllllI; short lIII1l[] = I11I(Il11I1, l11I1l, l1ll1I, l1IIII, I1II11); Illl1I[Il1l] = IIllIl ? l1II : lI111I - l1II; Il1l++; int Il1IIl = (int)(((Ill1l1 + llIIll) / l1I111) * 100F); if(Il1IIl < 0) Il1IIl = 0; Illl1I[Il1l] = Il1IIl; Il1l++; Illl1I[Il1l] = lIII1l[0] + IlIllI; Il1l++; Illl1I[Il1l] = lIII1l[1]; Il1l++; l1II += IIlIlI; } float lIlI11 = (float)II1lll * l1I1I1 * Ill1Il + I1IlI1 * I1l1ll; float lI1Il1 = (float)II1lll * -lIlIII - llIl11; float ll1ll1 = (float)II1lll * I1l1ll * Ill1Il + I1IlI1 * -l1I1I1; lI1I1I = lIll((float)Il11I1 * -Ill1Il); float I1l1II = llIIlI * 2; int lllIll; float lIl11l; if(-II1lll > lI1I1I) { lllIll = I1II1I; lIl11l = I1l1II - Math.abs((float)llIIlI * I1l1ll * lIlIII); } else { I1ll = I1II1I - 1 - I1ll; lllIll = 1; lIl11l = llIIlI / 2; } for(int Illl = 0; Illl < lllIll; Illl++) { int l1lI11 = ll1lll[I1ll]; float I1llII = (float)l1lI11 * l1I1I1 * lIlIII + lIlI11; float Illlll = (float)l1lI11 * Ill1Il + lI1Il1; float I11lIl = (float)l1lI11 * I1l1ll * lIlIII; float lIlIIl = I11lIl + ll1ll1; short IIIl1I[] = I11I(Il11I1, I1llII, Illlll, lIlIIl, I1II11); Illl1I[Il1l] = I1ll - I1II1I; Il1l++; int IIlIl1 = (int)(((lIl11l + I11lIl) / I1l1II) * 100F); if(IIlIl1 < 0) IIlIl1 = 0; Illl1I[Il1l] = IIlIl1; Il1l++; Illl1I[Il1l] = IIIl1I[0] + IlIllI; Il1l++; Illl1I[Il1l] = IIIl1I[1]; Il1l++; I1ll -= IIlIlI; } IllI11 += 10; Illl1I[Il1l] = -30; Il1l++; } int I11l = 18; l1IIll[lI1I][I11l][1] = l1IIll[lI1I][I11l][2] = Il1l; I11l++; do { int lIlIl1 = Illl1I[Il1lI1]; if(lIlIl1 == -30) { Illl1I[Il1l] = Illl1I[Il1lI1]; Il1l++; Il1lI1++; if(I11l == 36) break; l1IIll[lI1I][I11l][1] = Il1l; l1IIll[lI1I][36 - I11l][2] = Il1l; I11l++; } else { if(lIlIl1 < 0) lIlIl1 = ll11lI - lIlIl1; else lIlIl1 = lI111I - lIlIl1; Illl1I[Il1l] = lIlIl1; Il1l++; Il1lI1++; Illl1I[Il1l] = Illl1I[Il1lI1]; Il1l++; Il1lI1++; Illl1I[Il1l] = Illl1I[Il1lI1]; Il1l++; Il1lI1++; Illl1I[Il1l] = Illl1I[Il1lI1]; Il1l++; Il1lI1++; } } while(true); Il1lI1 = Il1l; I1lllI += 10; } int lll[] = new int[Il1l]; System.arraycopy(Illl1I, 0, lll, 0, Il1l); return lll; } static final double roundP = 0.017453292500000002D; }