home *** CD-ROM | disk | FTP | other *** search
- package javax.vecmath;
-
- import java.io.Serializable;
-
- public class AxisAngle4f implements Serializable, Cloneable {
- static final long serialVersionUID = -163246355858070601L;
- // $FF: renamed from: x float
- public float field_0;
- // $FF: renamed from: y float
- public float field_1;
- // $FF: renamed from: z float
- public float field_2;
- public float angle;
- static final double EPS = 1.0E-6;
-
- public AxisAngle4f(float var1, float var2, float var3, float var4) {
- this.field_0 = var1;
- this.field_1 = var2;
- this.field_2 = var3;
- this.angle = var4;
- }
-
- public AxisAngle4f(float[] var1) {
- this.field_0 = var1[0];
- this.field_1 = var1[1];
- this.field_2 = var1[2];
- this.angle = var1[3];
- }
-
- public AxisAngle4f(AxisAngle4f var1) {
- this.field_0 = var1.field_0;
- this.field_1 = var1.field_1;
- this.field_2 = var1.field_2;
- this.angle = var1.angle;
- }
-
- public AxisAngle4f(AxisAngle4d var1) {
- this.field_0 = (float)var1.x;
- this.field_1 = (float)var1.y;
- this.field_2 = (float)var1.z;
- this.angle = (float)var1.angle;
- }
-
- public AxisAngle4f(Vector3f var1, float var2) {
- this.field_0 = var1.x;
- this.field_1 = var1.y;
- this.field_2 = var1.z;
- this.angle = var2;
- }
-
- public AxisAngle4f() {
- this.field_0 = 0.0F;
- this.field_1 = 0.0F;
- this.field_2 = 1.0F;
- this.angle = 0.0F;
- }
-
- public final void set(float var1, float var2, float var3, float var4) {
- this.field_0 = var1;
- this.field_1 = var2;
- this.field_2 = var3;
- this.angle = var4;
- }
-
- public final void set(float[] var1) {
- this.field_0 = var1[0];
- this.field_1 = var1[1];
- this.field_2 = var1[2];
- this.angle = var1[3];
- }
-
- public final void set(AxisAngle4f var1) {
- this.field_0 = var1.field_0;
- this.field_1 = var1.field_1;
- this.field_2 = var1.field_2;
- this.angle = var1.angle;
- }
-
- public final void set(AxisAngle4d var1) {
- this.field_0 = (float)var1.x;
- this.field_1 = (float)var1.y;
- this.field_2 = (float)var1.z;
- this.angle = (float)var1.angle;
- }
-
- public final void set(Vector3f var1, float var2) {
- this.field_0 = var1.x;
- this.field_1 = var1.y;
- this.field_2 = var1.z;
- this.angle = var2;
- }
-
- public final void get(float[] var1) {
- var1[0] = this.field_0;
- var1[1] = this.field_1;
- var1[2] = this.field_2;
- var1[3] = this.angle;
- }
-
- public final void set(Quat4f var1) {
- double var2 = (double)(var1.x * var1.x + var1.y * var1.y + var1.z * var1.z);
- if (var2 > 1.0E-6) {
- var2 = Math.sqrt(var2);
- double var4 = (double)1.0F / var2;
- this.field_0 = (float)((double)var1.x * var4);
- this.field_1 = (float)((double)var1.y * var4);
- this.field_2 = (float)((double)var1.z * var4);
- this.angle = (float)((double)2.0F * Math.atan2(var2, (double)var1.w));
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public final void set(Quat4d var1) {
- double var2 = var1.x * var1.x + var1.y * var1.y + var1.z * var1.z;
- if (var2 > 1.0E-6) {
- var2 = Math.sqrt(var2);
- double var4 = (double)1.0F / var2;
- this.field_0 = (float)(var1.x * var4);
- this.field_1 = (float)(var1.y * var4);
- this.field_2 = (float)(var1.z * var4);
- this.angle = (float)((double)2.0F * Math.atan2(var2, var1.w));
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public final void set(Matrix4f var1) {
- Matrix3f var2 = new Matrix3f();
- var1.get(var2);
- this.field_0 = var2.m21 - var2.m12;
- this.field_1 = var2.m02 - var2.m20;
- this.field_2 = var2.m10 - var2.m01;
- double var3 = (double)(this.field_0 * this.field_0 + this.field_1 * this.field_1 + this.field_2 * this.field_2);
- if (var3 > 1.0E-6) {
- var3 = Math.sqrt(var3);
- double var5 = (double)0.5F * var3;
- double var7 = (double)0.5F * ((double)(var2.m00 + var2.m11 + var2.m22) - (double)1.0F);
- this.angle = (float)Math.atan2(var5, var7);
- double var9 = (double)1.0F / var3;
- this.field_0 = (float)((double)this.field_0 * var9);
- this.field_1 = (float)((double)this.field_1 * var9);
- this.field_2 = (float)((double)this.field_2 * var9);
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public final void set(Matrix4d var1) {
- Matrix3d var2 = new Matrix3d();
- var1.get(var2);
- this.field_0 = (float)(var2.m21 - var2.m12);
- this.field_1 = (float)(var2.m02 - var2.m20);
- this.field_2 = (float)(var2.m10 - var2.m01);
- double var3 = (double)(this.field_0 * this.field_0 + this.field_1 * this.field_1 + this.field_2 * this.field_2);
- if (var3 > 1.0E-6) {
- var3 = Math.sqrt(var3);
- double var5 = (double)0.5F * var3;
- double var7 = (double)0.5F * (var2.m00 + var2.m11 + var2.m22 - (double)1.0F);
- this.angle = (float)Math.atan2(var5, var7);
- double var9 = (double)1.0F / var3;
- this.field_0 = (float)((double)this.field_0 * var9);
- this.field_1 = (float)((double)this.field_1 * var9);
- this.field_2 = (float)((double)this.field_2 * var9);
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public final void set(Matrix3f var1) {
- this.field_0 = var1.m21 - var1.m12;
- this.field_1 = var1.m02 - var1.m20;
- this.field_2 = var1.m10 - var1.m01;
- double var2 = (double)(this.field_0 * this.field_0 + this.field_1 * this.field_1 + this.field_2 * this.field_2);
- if (var2 > 1.0E-6) {
- var2 = Math.sqrt(var2);
- double var4 = (double)0.5F * var2;
- double var6 = (double)0.5F * ((double)(var1.m00 + var1.m11 + var1.m22) - (double)1.0F);
- this.angle = (float)Math.atan2(var4, var6);
- double var8 = (double)1.0F / var2;
- this.field_0 = (float)((double)this.field_0 * var8);
- this.field_1 = (float)((double)this.field_1 * var8);
- this.field_2 = (float)((double)this.field_2 * var8);
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public final void set(Matrix3d var1) {
- this.field_0 = (float)(var1.m21 - var1.m12);
- this.field_1 = (float)(var1.m02 - var1.m20);
- this.field_2 = (float)(var1.m10 - var1.m01);
- double var2 = (double)(this.field_0 * this.field_0 + this.field_1 * this.field_1 + this.field_2 * this.field_2);
- if (var2 > 1.0E-6) {
- var2 = Math.sqrt(var2);
- double var4 = (double)0.5F * var2;
- double var6 = (double)0.5F * (var1.m00 + var1.m11 + var1.m22 - (double)1.0F);
- this.angle = (float)Math.atan2(var4, var6);
- double var8 = (double)1.0F / var2;
- this.field_0 = (float)((double)this.field_0 * var8);
- this.field_1 = (float)((double)this.field_1 * var8);
- this.field_2 = (float)((double)this.field_2 * var8);
- } else {
- this.field_0 = 0.0F;
- this.field_1 = 1.0F;
- this.field_2 = 0.0F;
- this.angle = 0.0F;
- }
-
- }
-
- public String toString() {
- return "(" + this.field_0 + ", " + this.field_1 + ", " + this.field_2 + ", " + this.angle + ")";
- }
-
- public boolean equals(AxisAngle4f var1) {
- try {
- return this.field_0 == var1.field_0 && this.field_1 == var1.field_1 && this.field_2 == var1.field_2 && this.angle == var1.angle;
- } catch (NullPointerException var3) {
- return false;
- }
- }
-
- public boolean equals(Object var1) {
- try {
- AxisAngle4f var2 = (AxisAngle4f)var1;
- return this.field_0 == var2.field_0 && this.field_1 == var2.field_1 && this.field_2 == var2.field_2 && this.angle == var2.angle;
- } catch (NullPointerException var4) {
- return false;
- } catch (ClassCastException var5) {
- return false;
- }
- }
-
- public boolean epsilonEquals(AxisAngle4f var1, float var2) {
- float var3 = this.field_0 - var1.field_0;
- if ((var3 < 0.0F ? -var3 : var3) > var2) {
- return false;
- } else {
- var3 = this.field_1 - var1.field_1;
- if ((var3 < 0.0F ? -var3 : var3) > var2) {
- return false;
- } else {
- var3 = this.field_2 - var1.field_2;
- if ((var3 < 0.0F ? -var3 : var3) > var2) {
- return false;
- } else {
- var3 = this.angle - var1.angle;
- return !((var3 < 0.0F ? -var3 : var3) > var2);
- }
- }
- }
- }
-
- public int hashCode() {
- long var1 = 1L;
- var1 = 31L * var1 + (long)Float.floatToIntBits(this.field_0);
- var1 = 31L * var1 + (long)Float.floatToIntBits(this.field_1);
- var1 = 31L * var1 + (long)Float.floatToIntBits(this.field_2);
- var1 = 31L * var1 + (long)Float.floatToIntBits(this.angle);
- return (int)(var1 ^ var1 >> 32);
- }
-
- public Object clone() {
- try {
- return super.clone();
- } catch (CloneNotSupportedException var2) {
- throw new InternalError();
- }
- }
- }
-