public abstract class com.google.common.math.LinearTransformation extends java.lang.Object
{
public void <init>()
{
com.google.common.math.LinearTransformation v;
v := @this: com.google.common.math.LinearTransformation;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static com.google.common.math.LinearTransformation$LinearTransformationBuilder mapping(double, double)
{
com.google.common.math.LinearTransformation$LinearTransformationBuilder v;
boolean v, v, v;
double v, v;
v := @parameter: double;
v := @parameter: double;
v = staticinvoke <com.google.common.math.DoubleUtils: boolean isFinite(double)>(v);
if v == 0 goto label;
v = staticinvoke <com.google.common.math.DoubleUtils: boolean isFinite(double)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <com.google.common.base.Preconditions: void checkArgument(boolean)>(v);
v = new com.google.common.math.LinearTransformation$LinearTransformationBuilder;
specialinvoke v.<com.google.common.math.LinearTransformation$LinearTransformationBuilder: void <init>(double,double)>(v, v);
return v;
}
public static com.google.common.math.LinearTransformation vertical(double)
{
com.google.common.math.LinearTransformation$VerticalLinearTransformation v;
boolean v;
double v;
v := @parameter: double;
v = staticinvoke <com.google.common.math.DoubleUtils: boolean isFinite(double)>(v);
staticinvoke <com.google.common.base.Preconditions: void checkArgument(boolean)>(v);
v = new com.google.common.math.LinearTransformation$VerticalLinearTransformation;
specialinvoke v.<com.google.common.math.LinearTransformation$VerticalLinearTransformation: void <init>(double)>(v);
return v;
}
public static com.google.common.math.LinearTransformation horizontal(double)
{
com.google.common.math.LinearTransformation$RegularLinearTransformation v;
boolean v;
double v;
v := @parameter: double;
v = staticinvoke <com.google.common.math.DoubleUtils: boolean isFinite(double)>(v);
staticinvoke <com.google.common.base.Preconditions: void checkArgument(boolean)>(v);
v = new com.google.common.math.LinearTransformation$RegularLinearTransformation;
specialinvoke v.<com.google.common.math.LinearTransformation$RegularLinearTransformation: void <init>(double,double)>(0.0, v);
return v;
}
public static com.google.common.math.LinearTransformation forNaN()
{
com.google.common.math.LinearTransformation$NaNLinearTransformation v;
v = <com.google.common.math.LinearTransformation$NaNLinearTransformation: com.google.common.math.LinearTransformation$NaNLinearTransformation INSTANCE>;
return v;
}
public abstract boolean isVertical();
public abstract boolean isHorizontal();
public abstract double slope();
public abstract double transform(double);
public abstract com.google.common.math.LinearTransformation inverse();
}