DoubleRange class

Пакет: com.hypixel.hytale.procedurallib.supplier

Файл: com/hypixel/hytale/procedurallib/supplier/DoubleRange.java

Поля (13)

МодификаторыТипИмя
final DoubleRange.Constant ZERO
protected final double min
protected final double range
protected final double result
protected final double[] thresholds
protected final double[] values
double var10
double var12
double var14
double var3
var3
double var6
double var8

Методы (28)

МодификаторыВозвратСигнатура
public Constantpublic Constant(double var1)
public Multiplepublic Multiple(double[] var1, double[] var2)
public Normalpublic Normal(double var1, double var3)
for for(int var5 = 0; var5 < this.thresholds.length; var5++)
public double getMinpublic double getMin()
public double getRangepublic double getRange()
public double getResultpublic double getResult()
public double getValuepublic double getValue(double var1)
public double getValuepublic double getValue(DoubleSupplier var1)
public double getValuepublic double getValue(Random var1)
public double getValuepublic double getValue(int var1, double var2, double var4, IDoubleCoordinateSupplier2d var6)
public double getValuepublic double getValue(int var1, double var2, double var4, double var6, IDoubleCoordinateSupplier3d var8)
public double getValuepublic double getValue(double var1)
public double getValuepublic double getValue(@Nonnull DoubleSupplier var1)
public double getValuepublic double getValue(@Nonnull Random var1)
public double getValuepublic double getValue(int var1, double var2, double var4, @Nonnull IDoubleCoordinateSupplier2d var6)
public double getValuepublic double getValue(int var1, double var2, double var4, double var6, @Nonnull IDoubleCoordinateSupplier3d var8)
public double getValuepublic double getValue(double var1)
public double getValuepublic double getValue(@Nonnull DoubleSupplier var1)
public double getValuepublic double getValue(@Nonnull Random var1)
public double getValuepublic double getValue(int var1, double var2, double var4, @Nonnull IDoubleCoordinateSupplier2d var6)
public double getValuepublic double getValue(int var1, double var2, double var4, double var6, @Nonnull IDoubleCoordinateSupplier3d var8)
if if(var1 > this.thresholds[this.thresholds.length - 1])
if if(var1 < var6)
if if(var5 == 0)
public String toStringpublic String toString()
public String toStringpublic String toString()
public String toStringpublic String toString()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.procedurallib.supplier;

class="kw">import java.util.Arrays;
class="kw">import java.util.Random;
class="kw">import java.util.function.DoubleSupplier;
class="kw">import javax.annotation.Nonnull;

class="kw">public class DoubleRange {
   class="kw">public class="kw">static class="kw">final DoubleRange.Constant ZERO = new DoubleRange.Constant(0.0);
   class="kw">public class="kw">static class="kw">final DoubleRange.Constant ONE = new DoubleRange.Constant(1.0);

   class="kw">public DoubleRange() {
   }

   class="kw">public class="kw">static class Constant class="kw">implements IDoubleRange {
      class="kw">protected class="kw">final double result;

      class="kw">public Constant(double var1) {
         this.result = var1;
      }

      class="kw">public double getResult() {
         class="kw">return this.result;
      }

      @Override
      class="kw">public double getValue(double var1) {
         class="kw">return this.result;
      }

      @Override
      class="kw">public double getValue(DoubleSupplier var1) {
         class="kw">return this.result;
      }

      @Override
      class="kw">public double getValue(Random var1) {
         class="kw">return this.result;
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, IDoubleCoordinateSupplier2d var6) {
         class="kw">return this.result;
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, double var6, IDoubleCoordinateSupplier3d var8) {
         class="kw">return this.result;
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "DoubleRange.Constant{result=" + this.result + "}";
      }
   }

   class="kw">public class="kw">static class Multiple class="kw">implements IDoubleRange {
      class="kw">protected class="kw">final double[] thresholds;
      class="kw">protected class="kw">final double[] values;

      class="kw">public Multiple(double[] var1, double[] var2) {
         this.thresholds = var1;
         this.values = var2;
      }

      @Override
      class="kw">public double getValue(double var1) {
         if (var1 > this.thresholds[this.thresholds.length - 1]) {
            class="kw">return this.values[this.values.length - 1];
         }

         double var3 = 0.0;

         for (int var5 = 0; var5 < this.thresholds.length; var5++) {
            double var6 = this.thresholds[var5];
            if (var1 < var6) {
               if (var5 == 0) {
                  class="kw">return this.values[0];
               }

               double var8 = (var1 - var3) / (var6 - var3);
               double var10 = this.values[var5 - 1];
               double var12 = this.values[var5];
               double var14 = var12 - var10;
               class="kw">return var10 + var8 * var14;
            }

            var3 = var6;
         }

         class="kw">return 0.0;
      }

      @Override
      class="kw">public double getValue(@Nonnull DoubleSupplier var1) {
         class="kw">return this.getValue(var1.getAsDouble());
      }

      @Override
      class="kw">public double getValue(@Nonnull Random var1) {
         class="kw">return this.getValue(var1.nextDouble());
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, @Nonnull IDoubleCoordinateSupplier2d var6) {
         class="kw">return this.getValue(var6.get(var1, var2, var4));
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, double var6, @Nonnull IDoubleCoordinateSupplier3d var8) {
         class="kw">return this.getValue(var8.get(var1, var2, var4, var6));
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "Multiple{thresholds=" + Arrays.toString(this.thresholds) + ", values=" + Arrays.toString(this.values) + "}";
      }
   }

   class="kw">public class="kw">static class Normal class="kw">implements IDoubleRange {
      class="kw">protected class="kw">final double min;
      class="kw">protected class="kw">final double range;

      class="kw">public Normal(double var1, double var3) {
         this.min = var1;
         this.range = var3 - var1;
      }

      class="kw">public double getMin() {
         class="kw">return this.min;
      }

      class="kw">public double getRange() {
         class="kw">return this.range;
      }

      @Override
      class="kw">public double getValue(double var1) {
         class="kw">return this.min + this.range * var1;
      }

      @Override
      class="kw">public double getValue(@Nonnull DoubleSupplier var1) {
         class="kw">return this.min + this.range * var1.getAsDouble();
      }

      @Override
      class="kw">public double getValue(@Nonnull Random var1) {
         class="kw">return this.getValue(var1.nextDouble());
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, @Nonnull IDoubleCoordinateSupplier2d var6) {
         class="kw">return this.min + this.range * var6.get(var1, var2, var4);
      }

      @Override
      class="kw">public double getValue(int var1, double var2, double var4, double var6, @Nonnull IDoubleCoordinateSupplier3d var8) {
         class="kw">return this.min + this.range * var8.get(var1, var2, var4, var6);
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "DoubleRange.Normal{min=" + this.min + ", range=" + this.range + "}";
      }
   }
}